OpenCV例程:针对对比度差的图像,目标分割方法( 二 )


                            sumRR += R5R5[m+2][n+2]*p_data;
                            sumVAR+= VAR[m+2][n+2]*p_data;
                     }
              }
              float *pLawsEnergy_data = https://vvvtt.com/article/(float*)(pLawsEnergy.data+j*pLawsEnergy.step);
              pLawsEnergy_data[3*i+0]=abs(sumVAR)/25;
              pLawsEnergy_data[3*i+1]=abs(sumRR)/25;
              pLawsEnergy_data[3*i+2]=abs(sumES)/25;
       }
}

OpenCV例程:针对对比度差的图像,目标分割方法



OpenCV例程:针对对比度差的图像,目标分割方法



4k-means聚类:
k-means算法是一个聚类算法,
聚类算法用于按照数据的特征发现数据项的相似性,并将相似的数据项放在统一个组中,相似性采用距离进行描述 。
k-means聚类的流程:
起首,随机拔取k个点,将每个点分派给它们,获得最初的k个分类;
然后,在每个分类入彀算均值,将点从头分派,划归到比来的中间点;
反复上述
直到点的划归不再改变 。

OpenCV例程:针对对比度差的图像,目标分割方法



5k-means聚类的流程:
针对本图像,分为路脸孔标和树林布景两类;
①设置初始聚类中间{100,100,100},{0,0,0};
②按照差的绝对值之和计较相似度,将图像像素划分为方针和布景两类;
③从头计较聚类中间;一般用求重心的方式;
④判定,聚类中间是否改变,若是没改变则收敛;不然,继续迭代 。
⑤采用形态学操作进一步优化朋分图像;
如图所示:
//进来的伴侣,点赞,存眷,投票,感谢!

OpenCV例程:针对对比度差的图像,目标分割方法



6本文法式总结如下:
因为字数较多,故经由过程图像显示如下:
#include "stdafx.h"
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
       const int R5R5[5][5]=
       {
              1,  -4,  6,  -4,  1,
          -4,  16,-24,  16, -4,
           6, -24, 36, -24,  6,
          -4,  16,-24,  16, -4,
           1,  -4,  6,  -4,  1
       };

猜你喜欢