image-processing - 合并 povray 的任意大小的部分图像

开始情况:

Using povray I create 4 partial images of a scene.

povray +SR1 +ER200 +SC0 +EC200 +W400 +H400 +OPART1 povray.pov
povray +SR1 +ER200 +SC201 +EC400 +W400 +H400 +OPART11 povray.pov
povray +SR201 +ER400 +SC0 +EC200 +W400 +H400 +OPART2 povray.pov
povray +SR201 +ER400 +SC201 +EC400 +W400 +H400 +OPART22 povray.pov

要解决的问题:

  • 以编程方式合并 4 张图片。

需要考虑的事项:

  • 大部分部分图片都不是有效图片,无法打开。例如,可以打开第一个部分图像,显示一个矩形,图像在左上角,其他一切都是黑色的。但其余图像仅包含有关他所在区域的信息。我们可以说这些图像已损坏。
  • 输出格式用+F 设置,可以是PPM、PNG、未压缩和压缩的Targa。有效的解决方案可以使用这些格式中的任何一种。
  • 专注于如何合并图像。您知道每个局部图像的矩形。

已经尝试过的事情:

  • 按照 http://povray.tashcorp.net/tutorials/qd_multicpu_render/ 中的描述使用 Tail 连接图像.它仅在部分图像在宽度轴上完整时才有效,也就是说,如果 PART1 是一组线,PART2 是另一组线......并且没有列划分。但是我们有列划分。
  • 使用 ImageMagick。它无法打开部分图像。它说它们坏了。

最佳答案

我找到了实现方法。

您需要修补 Povray,以便它保存有关 PNG 文件偏移的信息。

这是补丁。 https://gist.github.com/721862

您需要下载 povray 的源代码并应用补丁。要应用补丁,请将补丁文件保存在 povray-3.6.1/source/patch.patch 中,然后:

cp patch.patch povray-3.6.1/source/
cd povray-3.6.1/source/
patch png_pov.cpp patch.patch

https://stackoverflow.com/questions/4298553/

相关文章:

eclipse - 卸载eclipse插件报错

.net - ToString() 和调试器的字符串可视化工具

c++ - 随机数生成的快速模数替换是什么?

visual-studio-2010 - 如何将 const wchar_t* 转换为 wchar_

ruby-on-rails - 如何在命名空间内部的 View 中呈现命名空间外部的 Rails 部

.net - NET 4.0 在 COM+ 中安装程序集加载额外的依赖项

indexing - 如何生成(书籍)索引?

wordpress - 将 Wordpress URL 路径转换为查询字符串

c# - 在 JSON.NET 中使用 LINQ 从字典创建 JProperty

bash - 使用转义序列呈现文本(如终端)