问题标签 [libtiff]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 访问 TIFF 图像
我正在尝试读取 TIFF 图像以执行处理。理想的情况是能够以 OpenCV 结构导入此图像,但即使以不同的方式访问它也会很棒。
如果我在图像上运行 tiffinfo 我得到
我想访问单个像素值。图像为灰度,其中包含的数据范围从 0.0 到 10372.471680。
我使用 LibTIFF、Magick++ 进行了一些试验,但无法访问单个像素值(我尝试在像素上进行循环并在屏幕上打印这些值)。
这是我正在尝试使用的一段代码,我从一个在线示例中得到它:
我用它编译
gcc test.c -ltiff -o 测试
当我运行它时,我得到
有什么提示吗?谢谢你的时间。
libtiff - 我可以在不修改 LibTIFF 源代码的情况下重定向 LibTIFF 的错误输出吗?
默认情况下,LibTIFF 将所有错误输出写入 stderr。这似乎是硬编码的。有没有办法将它重定向到字符串消息处理程序或文件?理想情况下不修改 LibTIFF 本身,但如果更改不是太大,我可以修改。
澄清 #1
我需要以编程方式执行此操作,因为我在另一个库中使用 LibTIFF,并且不允许该库向 stderr 写入任何内容(否则它会弄乱使用我的库的应用程序)。我的库将所有错误记录到一个文件中 - 我也希望将 LibTIFF 错误重定向到该文件。
我无法控制使用我的库的应用程序。
澄清 #2
我的库是 C++ 并在 Windows 上运行。
如果需要修改 LibTIFF,欢迎提出建议和意见。
c# - 编辑 TIFF 图像而不更改标题数据
我有一个接收 TIFF 图像堆栈的程序,并且对标头数据非常特别(它希望所有标头都相同),但是我想在将堆栈中的几个图像发送到该程序之前对其进行编辑。
到目前为止,我尝试过的每个程序(Paint.net、MS Paint、ImageJ)都更改了头文件,或者在保存新图像时彻底损坏了它。我可以访问 C# 和 LibTiff.Net,但即使在阅读了文档之后,我仍然对如何在不更改标题信息的情况下简单地替换图像数据感到困惑。
目前的想法只是用纯色替换图像,所以它并不太复杂。
python - 在 python 中处理 Group4 TIFF 图像
PIL 本身不支持 G4 图像,是否有其他 python 包支持?我需要阅读多页 TIFF 图像并将它们动态转换为 gif/png 以在网页中提供。(我不是即时转换它们,而是挑选它们进行展示)。
我考虑过使用具有这种转换能力的 ImageMagick,但我希望能够访问 TIFF 文件并查看其中的内容以进行索引。
c++ - 使用 LibTIFF C++ 编写 10,12 位 TIFF 文件
我正在尝试使用 LibTIFF 编写 10,12 位 RGB TIFF 文件。
像素数据本地保存在unsigned short
缓冲区(16 位)中
1) 如果我设置TIFFTAG_BITSPERSAMPLE
为 10 或 12,则从缓冲区中读取的位不足,并且输出不正确。(我知道它只是读取每个组件 10 或 12 位,而不是 16 位,这就是问题所在)
2) 我尝试将这些位打包在缓冲区中,使其真正为 12-R、12-G、12-B。在这种情况下,我认为文件正在正确写入,但我找不到任何查看器可以正确显示此图像。
3)如果我设置TIFFTAG_BITSPERSAMPLE
为16,观众可以显示TIFF图像,但是我有一个问题,我不知道图像最初是10位还是12位(如果我想以后用LibTIFF读取它)。此外,观看者期望动态范围为 16 位,而不是 10 或 12 位,这也会导致观看效果不佳。
4) 最烦人的部分是我在网上找不到一张 10、12 或 14 位的 TIFF 图像来查看标题应该是什么样子。
那么最后,将 10 位或 12 位图像数据写入 TIFF 文件的正确方法是什么??????
libtiff - 使用 LibTiff.Net 添加自定义元数据标签
我现在如何向图像添加自定义标签,但它没有在图像查看器中显示为标签名称。我只看到我分配的数字及其值。
为什么我的自定义标签没有专有名称?
}
c# - 拆分 TIFF 文件
我需要将 TIFF 文件拆分为多个文件(每个页面在一个单独的文件中)。
我写了一个函数,但是拆分大量文件需要时间:/
然后我正在寻找一个库来进行拆分,我找到了 LibTiff.Net 但我找不到拆分功能!
你能帮我使用这个库吗?
c++ - libmagick 相当于 TIFFReadRGBAImage
高的。我试图为 libmagick[++] 找到一个编写良好的 API 文档,以获取 RGB[A] 图像数据的光栅内存块。与本指南等效的内容,或者至少是有据可查的类、方法和属性。
谁能指出我正确的方向?
谢谢。
编辑:已解决:
.net - Tiff Jpeg 图像查看器控件 - 免费/开源
我有无数个带有 jpeg 压缩的 tiff 文件。我正在使用这个名为 Lib.tif .net 版本的库,它非常棒,它可以通过 JPEG 压缩 (6/7) 读取/标记/保存 tiff。我也尝试过 imageMagic 和 FreeImage 库(两者都相似)
问题 1 是 .NET (2.0/3.5/4.0) 不支持在其图像查看器控件中使用 Jpeg 压缩查看 Tiff。有没有人有解决方法?或者是否有任何 Tiff Jpeg 图像查看器控件 - 免费/开源? 我们可以将部分 tiff 剥离为位图并将其流式传输到图像查看器控件吗?如果是这样,你能指导我吗?我知道有很多付费版本,例如 GDpicture 或 viscom 或 leedtools 等,但我需要一个免费版本。
问题 2是文件在 windows 7 MODI 和照片查看器和paint.net 和其他应用程序中打开。(32 位和 64 位版本)。但在 Windows XP 传真查看器中无法打开相同的图像。我也尝试使用office 2007 MODI,但没有成功。有什么想法或解决方法吗?
请帮忙。
谢谢 ; 问候普拉德
c# - 如何创建可供 tesseract OCR 读取的 TIFF 文件?
我想让 tesseract ORC 在图像文件上运行,以扫描内容。
问题似乎是 tesseract 不仅需要 TIFF,而且还要求 tiff 文件为某种格式。
只有一个普通的 tiff 文件,我得到:
到目前为止,我已经设法找到了解毒剂。
它包括使用 GIMP,转到图像 > 模式 > 索引,并将“生成最佳调色板”、“最大颜色数”设置为 256。
然后我必须在“另存为”之前再做一个技巧。
转到图层 > 透明度 > 删除 Alpha 通道,这将删除透明度,因为 TIF 图像不能具有透明度。
现在的问题是我的输入图像来自 C#,并使用 AFORGE.NET 图像分析过滤器进行了预处理。
我还找到了 LibTiff 的 .NET 端口,以及如何在此处使用调色板编写图像的示例:
http://bitmiracle.com/libtiff/help/create-tiff-with-palette-(color-map) .aspx
但我不知道如何将数据从源 tiff(调色板错误的那个)到目标 tiff(调色板格式正确)......