图像熵
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
某图像图像熵
■ OpenMP是一种用于共享内存并行系统的多线程程序设计 方案,支持的编程语言包括C、C++和Fortran。 OpenMP提供了对并行算法的高层抽象描述,特别适合在 多核CPU机器上的并行程序设计。编译器根据程序中添加 的pragma指令,自动将程序并行处理,使用OpenMP降 低了并行编程的难度和复杂度。当编译器不支持OpenMP 时,程序会退化成普通(串行)程序。程序中已有的 OpenMP指令不会影响程序的正常编译运行。
void Result::pictureData(Mat *Tu,int div,vector<double>* Ri,vector<double>* Gi,vector<double>* Bi) { int rown=(*Tu).rows; int coln=(*Tu).cols; int i=0; int a=0,b=0,c=0; #pragma omp parallel for for(i;i<=rown;i++) { for(int n=0;n<=coln;n++){ //blue if((*Tu).at<Vec3b>(i,n)[0]==div){ a+=1;} //green if((*Tu).at<Vec3b>(i,n)[1]==div){ b+=1;} //red if((*Tu).at<Vec3b>(i,n)[2]==div){ c+=1;} }} (*Ri).at(div)=c; (*Gi).at(div)=b; (*Bi).at(div)=a;}
OpenMp
(1)、OpenMP只能并行化for循源自文库,它不会并行while和 do-while循环,而且只能并行循环次数在for循环外面就确 定了的for循环。 (2)、循环变量只能是整型和指针类型(不能是浮点型)
OpenMp使用
(3)、循环语句只能是单入口单出口的。循环内部不能改 变index,而且里面不能有goto、break、return。但是可以 使用continue,因为它并不会减少循环次数。另外exit语句 也是可以用的,因为它的能力太大,他一来,程序就结束了。
double Result::result(Mat* Xiang,vector<double>*Rp,vector<double>* Gp,vector<double>* Bp,vector<double>* Ri,vector<double>* Gi,vector<double>* Bi) { double E=0,Er=0,Eg=0,Eb=0; double all=(*Xiang).cols*((*Xiang).rows); int j=0; #pragma omp parallel for for(j;j<256;j++){ pictureData(Xiang, j, Ri, Gi, Bi);} #pragma omp parallel for int k=0; for(k;k<256;k++){ (*Rp).at(k)=(*Ri).at(k)/all; (*Gp).at(k)=(*Gi).at(k)/all; (*Bp).at(k)=(*Bi).at(k)/all; if( (*Rp).at(k)==0) { (*Rp).at(k)=1;} if((*Gp).at(k)==0) { (*Gp).at(k)=1;} if((*Bp).at(k)==0) { (*Bp).at(k)=1;} Er+=(*Rp).at(k)*log((*Rp).at(k)); Eg+=(*Gp).at(k)*log((*Gp).at(k)); Eb+=(*Bp).at(k)*log((*Bp).at(k)); }
图像熵
信息熵与图像熵
■ 信息熵是跟所有可能性有关系的一个值。 在一定条件下, 所有事件的发生都有一定的概率(或高或低) , 信息熵 就表示了一件事物蕴含了多少的信息。 所以数学上, 信 息熵其实是信息量的期望; 而在图像处理上先人引出图像 熵这个概念。
■ 在很多多干扰的复杂环境下, 需要判断图像受影响程度, 和图像收干扰程度,这个时候就需要图像熵使用图像熵来 判断图像发生的变化。 图像熵越大图像所蕴含的信息越多, 图像熵越小图像所蕴含的信息越少。
图像熵公式
公式中,L是RGB通道颜色 值的离散化级数,其中L=256,而 PRi、PGi、PBi为 图像中 Ri、Gi、Bi颜色值存在的概率,可以使用 Ri、Gi、Bi存在的频率来近似, 因此可以根据一副图像在 R、G、B 三个颜色通道中的颜色直方图分布来计算。 假设图像中红色分量值为 Ri的像素数量为 Nri,而图像共有 N 个像素,则 PRi=NRi/N。PGi和 PBi也可以类似的求出。根据式子,图像熵的最小值为0最大值 为 16.6355,图像熵随着图像中颜色值分布的平均程度而单调递减。