【问题标题】:What programming language do people code image files with?人们用什么编程语言对图像文件进行编码?
【发布时间】:2010-11-22 06:19:51
【问题描述】:

我正在尝试做一些图像文件工作,特别是将一种图像文件格式转换为另一种。有谁知道如何实现这一目标的任何示例/指南?这一般用什么编程语言来完成?

编辑:显然我对此知之甚少,我什至不知道要告诉你的重要信息:)

所以我只对 C++、Java、Python 和网页设计语言(HTML、CSS、Javascript/JQuery)有用。

具体来说,我有一个 5 维(X、Y、Z、时间、通道)的图像文件,并根据增加通道 1x 的算法将 5d 矩阵的每个坐标中的像素值排列在 1 个块中,然后每个 X 代表相同的 Y、Z、时间,然后每个 X 代表下一个 Y 但相同的 Z、时间等。我想要做的是重新排序每个像素的原始数据,使其采用 .tiff 格式,由 IFD 定义,其中每个 IFD 对应 X、Y 数据,并且会有 ZTimeChannel IFD。

本质上,我只想对图像中每个像素处的二进制值进行重新排序。例如,某些图像类型在每个像素坐标(X、Y、Z、时间、通道)处定义了一个介于 0-255 之间的灰度数字。在那种情况下,我只想获取坐标处的十六进制值,并根据上面的 .tif 指定以正确的顺序放置它。

此外,它现在可以在 windows 和 mac 中运行。用 Python 能做到吗?

【问题讨论】:

  • 您的应用程序将在什么样的环境中工作 - Web?桌面?它将在什么操作系统上运行?有许多编程语言可以操作和转换图像 - PHP 是一种浮现在脑海中的语言 - 但语言的选择更多地取决于您希望它在哪里工作,而不是您希望它做什么。
  • 你精通什么语言?您要转换哪种图像文件?大多数流行的语言都应该有库来处理这个问题。
  • 我还是不明白你想做什么。 “重新排列像素强度数据的顺序”是什么意思?

标签: programming-languages image file-format converter


【解决方案1】:

由于您使用的是自定义文件格式,因此您可以使用任何允许对内存结构进行字节级访问的语言(其中包括几乎所有语言)来执行此操作。由于您熟悉 C++、Java 和 Python,我建议您使用 C++、Java 或 Python。

【讨论】:

  • @musicGenesis:太棒了,谢谢。你能建议任何指南,或者我需要自己研究的黄金谷歌搜索词吗? “Python 字节级访问”运气不佳 :(
  • @hatorade (hater + gatorade?):我自己是一个 C# 人,我知道有关 Python 的 zip,但我确信 Python 可以满足您的需求。基本上,您将使用 IO(无论它在 Python 中是什么)打开文件并将其读入字节数组,然后对其进行操作,然后将其保存回文件。您需要知道要实现的原始文件格式和输出格式 (TIFF)。
【解决方案2】:

我使用来自GraphicsMagicImageMagick 的工具和绑定。

【讨论】:

  • @lutz:其中任何一个都可以用于将自定义图像文件格式转换为另一种格式吗?比如,他们是否为我提供了一种基于自定义图像文件转换编写自定义代码的方法?
【解决方案3】:

如果您所做的只是更改文件类型,ImageMagick 就可以了。 Python 可以轻松地将一些 ImageMagick 调用封装在一个简单的 GUI 中,或者为您提供完整的编程语言,如果您以后想要做更多事情,可以选择使用 Python Imaging Library

【讨论】:

    猜你喜欢
    • 2018-10-14
    • 2011-04-09
    • 2013-03-27
    • 1970-01-01
    • 1970-01-01
    • 2011-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多