日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

清晰度检测照片算法

發布時間:2023/12/8 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 清晰度检测照片算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

清晰度檢測照片算法

功能:可以從一個指定的文件夾中讀取照片,然后轉為灰度圖像等處理,然后把處理的虹膜圖像進行分類,清晰的圖像存儲在一個文件夾中,不清晰的虹膜圖像也存在一個文件夾中,文件夾中圖像的下標從1開始遞增,也可以自己修改代碼吧原始圖像的編號原封不動的進行保存。
連續讀取照片(下標連續!)和保存連續多張照片(自己寫的代碼效果是連續的!)

代碼如下:

#include <highgui/highgui.hpp> #include <imgproc/imgproc.hpp>#include <iostream> #include <string> #include<iostream> #include <sstream> using namespace std; using namespace cv;int main() { //定義轉化后的圖像Mat imageGrey; char buffer[6000]; //左右眼虹膜圖像 各3000 定義大一點int m=1;int n=1;for(int i=1;i<3000;i++){sprintf(buffer,"E:\\zqx\\L\\%d.bmp",i); //u盤中的一個文件夾Mat imageSource=imread(buffer); //轉灰度圖像處理cvtColor(imageSource, imageGrey, CV_RGB2GRAY); //轉化成灰度圖像Mat imageSobel; //soble算子Laplacian(imageGrey, imageSobel, CV_16U); //把灰度圖像 拉普拉斯操作后 圖像名字為imagesoble 為了避免數據溢出 圖像深度為CV_16U//圖像的平均灰度double meanValue = 0.0;meanValue = mean(imageSobel)[0]; //imagesoble圖像 的平均灰度為0 //定義字符流 輸出字符stringstream meanValueStream;string meanValueString;meanValueStream << meanValue;meanValueStream >> meanValueString;meanValueString = "Articulation(Laplacian Method): " + meanValueString;if(meanValue<2.4) //自己可以定義閾值{printf("圖像不合格,太模糊");printf("\n");putText(imageSource, meanValueString, Point(20, 50), CV_FONT_HERSHEY_COMPLEX, 0.8, Scalar(255, 255, 25), 2);imshow("不合格的圖像", imageSource);waitKey(50);stringstream ss;ss<<m;string savepath="C:\\不合格的圖像\\"+ss.str()+".bmp";imwrite(savepath,imageSource);m++;}else{printf("圖像合格 ");printf("\n");//各參數依次是:照片/添加的文字/左上角坐標/字體/字體大小/顏色/字體粗細 Scalar(255, 255, 255)是白色字體 Scalar(0,0, 0)是黑色字體 順序b g r cv.color是 r g b順序 //putText(imageSource, meanValueString, Point(20, 50), CV_FONT_HERSHEY_COMPLEX, 0.8, Scalar(255, 255, 25), 2);imshow("合格的圖像", imageSource);waitKey(50);stringstream ss;ss<<n;string savepath="C:\\合格的圖像\\"+ss.str()+".bmp";imwrite(savepath,imageSource);n++;}}return 0; }

測試我就不貼上去了,不好截屏。 效果就是兩個新建的文件夾下都有圖片,合格和不合格的照片,下標都是從1開始遞增。注釋也比較全,比較好理解。

e盤的虹膜庫 左右眼各3000張:

然后運行代碼,效果如下圖:

然后查看,自己新建的文件夾中圖像的保存情況!:

結果成功!清晰度檢測是虹膜檢測的第一步,用算法程序幫自己篩選清晰度不合格的圖像!然后不合格的圖像上自己可以加一句話告訴別人這個圖像的清晰度多少,而合格的圖像,只是清晰度達到了要求,里面也有一些斜眼閉眼的情況,還需要進一步的處理,比如篩選斜眼的情況等,所以這些清晰度合格的圖像就不再需要加一句話顯示圖像的清晰度的值了!

總結

以上是生活随笔為你收集整理的清晰度检测照片算法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。