博舍

【16】图像清晰度识别 ai图片清晰度检测软件免费

【16】图像清晰度识别

【1】思路

图像清晰度评价算法有很多种,在空域中,主要思路是考察图像的领域对比度,即相邻像素间的灰度特征的梯度差;在频域中,主要思路是考察图像的频率分量,对焦清晰的图像高频分量较多,对焦模糊的图像低频分量较多。下面实现Tenengrad梯度方法、Laplacian梯度方法和方差方法。

【2】代码

.h文件

#pragmaonce#include#includeusingnamespacestd;usingnamespacecv;doubleLaplaciaDefinition(MatimageSource){MatimageGrey;if(imageSource.channels()==3){cvtColor(imageSource,imageGrey,COLOR_RGB2GRAY);}else{imageGrey=imageSource;}MatimageSobel;Laplacian(imageGrey,imageSobel,CV_16U);//Sobel(imageGrey,imageSobel,CV_16U,1,1);//图像的平均灰度doublemeanValue=0.0;meanValue=mean(imageSobel)[0];returnmeanValue;}doubleMeanStdDefinition(MatimageSource){MatimageGrey;if(imageSource.channels()==3){cvtColor(imageSource,imageGrey,COLOR_RGB2GRAY);}else{imageGrey=imageSource;}MatmeanValueImage;MatmeanStdValueImage;//求灰度图像的标准差meanStdDev(imageGrey,meanValueImage,meanStdValueImage);doublemeanValue=0.0;meanValue=meanStdValueImage.at(0,0);returnmeanValue;}doubleTenegradDefinition(MatimageSource){MatimageGrey;if(imageSource.channels()==3){cvtColor(imageSource,imageGrey,COLOR_RGB2GRAY);}else{imageGrey=imageSource;}MatimageSobel;Sobel(imageGrey,imageSobel,CV_16U,1,1);//图像的平均灰度doublemeanValue=0.0;meanValue=mean(imageSobel)[0];returnmeanValue;}voidPrintResult(MatimageSource,doublemeanValue,conststringmethod){MatimageRGB;Matshowimage;cout

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇

下一篇