c++ - 原始图像和 C++ 中的 DCRaw

标签 c++ c image image-processing dcraw

我希望能够在 C++ 中处理 RAW 图像,所以我下载了一个已编译的 DCRaw 可执行文件。我尝试自己编译它,但我不断出错。所以我希望能够将原始图像读入 C++ 并使用它们。最好的方法是什么?我应该找到一种方法在我的项目中包含 dcraw.c 并调用其中的函数,还是应该使用 system(...) 函数访问 EXE 文件?

最佳答案

如果您不想直接在您的应用程序中操作原始数据,那么是的,您应该使用现有的原始图像解码器实现(例如 dcraw,如您所说)。

以下是我会按优先顺序执行的操作:

  1. 我会首先尝试找到另一个可用作静态或动态库版本的原始图像解码器并链接到它(dcraw 只有一个可执行文件)。

  2. 如果 #1 不可能,我会将 dcraw 的相关部分提取到静态库中并链接到它。

  3. 如果不可能,我会像您建议的那样在我的代码中包含 .c 文件。

  4. 我只会在万不得已的情况下从我的程序中执行 EXE。

也就是说,如果您的应用程序仅用于实验目的,我认为在您的程序中使用 dcraw EXE 没有任何问题。否则我不会在专业应用程序中这样做。

关于c++ - 原始图像和 C++ 中的 DCRaw,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19456082/

相关文章:

image - 使用opencv将变量放在图像上

html - 以已知大小在 div 中居中图像。使用所有高度或所有宽度。保持正确的比例。没有裁剪

python - boost python raw_function 方法

c++ - 如何根据某些值删除/删除类对象的 vector

c++ - 如何跳过 ddd (gdb) 中的过去循环

c - 多线程服务器如何工作?

c - else if 语句阻止程序检测最大索引

c - MPI 数据类型对齐

javascript - 如何制作具有折叠效果的图像幻灯片?

C++使用起点和终点读取文件的特定部分