
opencv添加高斯噪声问题
代码如下:voidCopencv3Dlg::OnBnClickedButton3(){//TODO:IplImage*image=NULL;if(image)cvRele...
代码如下:
void Copencv3Dlg::OnBnClickedButton3(){ // TODO:
IplImage *image=NULL;
if(image) cvReleaseImage(&image); image = cvLoadImage("D:\\demo.jpg",1);
IplImage *img=cvCreateImage(cvGetSize(image),8,1); cvZero(img); //img为高斯噪声后图像指针// CvRNG rng = cvRNG(-1); //初始化随机数发生器cvRandArr(&rng, img, CV_RAND_NORMAL, cvScalarAll(0), cvScalarAll(15));cvAdd(image, img, img);DrawPicToHDC(img, IDC_STATIC);cvReleaseImage(&img);
}
请问,是哪里错了,我是初学者,望指点。谢谢啦 展开
void Copencv3Dlg::OnBnClickedButton3(){ // TODO:
IplImage *image=NULL;
if(image) cvReleaseImage(&image); image = cvLoadImage("D:\\demo.jpg",1);
IplImage *img=cvCreateImage(cvGetSize(image),8,1); cvZero(img); //img为高斯噪声后图像指针// CvRNG rng = cvRNG(-1); //初始化随机数发生器cvRandArr(&rng, img, CV_RAND_NORMAL, cvScalarAll(0), cvScalarAll(15));cvAdd(image, img, img);DrawPicToHDC(img, IDC_STATIC);cvReleaseImage(&img);
}
请问,是哪里错了,我是初学者,望指点。谢谢啦 展开
1个回答
展开全部
你先把最后一句的cvReleaseImage(&img);注释了试一下,我觉得:你要在“IDC_STATIC”上显示图片,但是紧接着你又将它的空间释放了,那就和前面DrawPicToHDC(img, IDC_STATIC);这句产生冲突了,尽个人观点,不同意勿喷。

2024-10-17 广告
ZigBee作为一项新型的无线通信技术,其具有传统网络通信技术所不可比拟的优势,既能够实现近距离操作,又可降低能源的消耗。又如,相较于蓝牙等无线通信技术,ZigBee无线通信技术可有效降低使用成本, 即便数据处理的速率并不高,然而,值得肯定...
点击进入详情页
本回答由晓网科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询