opencv里的一些函数,关于小波变换处理图像
下面这段小波变换的代码看不同,求大神解决,主要地方有两个,第一个是cvConvertScale(pSrc, pWavelet,1,-128);这个函数最后一个为什么设置为-128,是什么意思。第二点问题是cvCopy(pWavelet, pImage, NULL);函数中null又是什么意思,为什么要这样设置。谢谢
if (pWavelet) {
// 小波图象赋值
cvSetImageROI(pWavelet, cvRect(0, 0, pSrc->width, pSrc->height));
cvConvertScale(pSrc, pWavelet,1,-128);
cvResetImageROI(pWavelet);
// 彩色图像小波变换
IplImage *pImage = cvCreateImage(cvGetSize(pWavelet), IPL_DEPTH_32F, 1);
if (pImage) {
for (int i = 1; i <= pWavelet->nChannels; i++) {
cvSetImageCOI(pWavelet, i);
cvCopy(pWavelet, pImage, NULL);
// 二维离散小波变换
DWT(pImage, nLayer);
// 二维离散小波恢复
//IDWT(pImage, nLayer);
cvCopy(pImage, pWavelet, NULL);
}
cvSetImageCOI(pWavelet, 0);
cvReleaseImage(&pImage);
}
xululu0401
2014/09/24 06:41- c++
- opencv
- 点赞
- 收藏
- 回答
0个回复
