1

我提取了 2 张图像的深度图并将它们存储为 .tif 文件

现在我想使用openGL根据它们的深度加入这两个图像

所以我想从 .tif 文件中读取每个图像的深度,然后使用该深度来绘制具有更高深度的像素

为了更清楚,深度图是两个像这个 链接的图像

所以说我有前一张图片,我想把它和这张图片一起加入

关联

我的问题是如何从 .t​​if 文件中读取这个深度

4

1 回答 1

2

好的,我会去的;-)

我看到图像只是灰度,所以如果“深度”信息只是像素的强度,“加入”它们可能只是添加像素的问题。这通常被称为“混合”,但我不知道您还有什么意思。

所以,你需要;

  1. 将 2 个图像读入内存
  2. 对于每个像素(假设两个图像大小相同):
    • 从图像 A[row,col] 中读取强度
    • 从图像 B[row,col] 中读取强度
    • 将 max(A[row,col],B[row,col]) 写入 C[row,col]
  3. 保存图像 C - 这是您的新“加入”图像。

现在 OpenGL 没有任何对加载/保存图像的内置支持,所以你需要找到一个 3rd 方库,比如FreeImage或类似的。

所以,这是很多工作。我想知道您是否真的想要一个 OpenGL 解决方案,或者只是假设 OpenGL 对图形工作有好处。如果上面的算法真的是你想要的,你可以在几分钟内用 C# 之类的东西完成它。它内置支持加载(某些格式)图像文件,以及使用 Bitmap 类访问像素。由于您自己创建了这些图像,因此您可能不受 TIFF 格式的约束。

于 2012-10-19T18:09:38.120 回答