我正在尝试在OpenCV中使用灰度共生矩阵(灰度共生矩阵)来提取特征。
在matlab中,我们有graycomatrix。我们在openCV中有没有实现相同目的的函数呢?如果没有,那么实现它的最佳解决方案是什么?有什么可行的例子吗?
编辑
我试过这段代码,但它给出了错误的值,与matlab的结果相比,在OpenCV中有没有更好的解决方案/函数,或者我在GLCM过程中做错了什么?
char rawdata[4][4] = { {0, 1, 2, 3},
{1, 1, 2, 3},
{1, 0, 2, 0},
{0, 0,0, 3}};
src->imageData = (char*)(&rawdata);
CvGLCM* glcm;
glcm = cvCreateGLCM(src, 2, NULL,4, CV_GLCM_OPTIMIZATION_NONE);
cvCreateGLCMDescriptors(glcm, CV_GLCMDESC_OPTIMIZATION_ALLOWDOUBLENEST);
for (int step=0; step<4; step++)
{
printf("%.3f,", cvGetGLCMDescriptor(glcm, step, CV_GLCMDESC_CONTRAST));
printf("\n");
}发布于 2012-05-01 00:01:46
有一个名为CvGLCM的类:
OpenCV-2.3.1a documentation
不过我从来没有用过它。
发布于 2013-10-25 00:45:11
你必须安装scipy,numpy,skimage。skimage有包括skimage.feature.greycomatrix和skimage.feature.greycoprops的模块skimage.feature,在那里我们可以计算ndarray uint8的灰度图像,也可以计算greco属性instructions
https://stackoverflow.com/questions/10383117
复制相似问题