C编程将阵列转换为图像

时间:2015-10-23 10:36:04

标签: c image imagej

我正在使用C在图像上运行相位检索算法。 我正在使用ImageJ将.png转换为文本图像,然后我将其读入我的代码并运行代码。

最后,我将输出打印到文本数组,然后必须将它作为文本图像从imageJ中读取。

我想知道是否有办法直接从c获得图像?

1 个答案:

答案 0 :(得分:0)

您可以尝试使用OpenCv,这是一个用于计算机视觉任务的开源编程函数库。

它可以使用imreadimwrite函数读取和写入不同的图像文件格式,正如您在OpenCv的文档网站example上看到的那样:

#include <cv.h>
#include <highgui.h>

using namespace cv;

int main( int argc, char** argv )
{
 char* imageName = argv[1];

 Mat image;
 image = imread( imageName, 1 );

 if( argc != 2 || !image.data )
 {
   printf( " No image data \n " );
   return -1;
 }

 Mat gray_image;
 cvtColor( image, gray_image, CV_BGR2GRAY );

 imwrite( "../../images/Gray_Image.jpg", gray_image );

 namedWindow( imageName, CV_WINDOW_AUTOSIZE );
 namedWindow( "Gray image", CV_WINDOW_AUTOSIZE );

 imshow( imageName, image );
 imshow( "Gray image", gray_image );

 waitKey(0);

 return 0;
}

希望它有所帮助!