C语言 jpg文件保存为uchar数组之后,如何将该数组uchar数组转换成IplImage对象
已知条件 jpg文件保存的uchar数组 求 IplImage 之前的思路是uchar数组——》Mat——》IplImage 有问题
为什么不用 cv::Mat,而是快被废弃的 IplImage ? 算了,只是好奇问问而已。
红色代码就是你需要的
int main( void )
{
FILE* f = fopen( "d:\\a.jpg", "rb" );
if( f )
{
fseek( f, 0, SEEK_END );
long n = ftell( f );
fseek( f, 0, SEEK_SET );
void* p = malloc( n );
if( p )
{
fread( p, 1, n, f );
CvMat mCvmat = cvMat( n, 1, CV_8UC1, p );
IplImage* pIplImg = cvDecodeImage( &mCvmat, CV_LOAD_IMAGE_ANYDEPTH|CV_LOAD_IMAGE_ANYCOLOR );
if( pIplImg )
{
cvShowImage( "", pIplImg );
cvWaitKey( 0 );
}
free( p );
}
fclose( f );
}
}