數字影象處理課程設計報告 2019

2021-03-27 16:46:56 字數 4313 閱讀 3005

數字影象處理

課程設計報告

姓名胡江南

學號: 20137750215

班級***2班

設計題目: 指紋識別設計

教師: 趙哲老師

提交日期: 12月25日

一、設計內容:

主題:《指紋識別設計》

詳細說明:讀入指紋**,通過二值圖變換,開運算,閉運算,以及貼標籤等方法獲得細胞個數。

二、涉及知識內容:

1、中值濾波

2、開運算

3、閉運算

4、二值化

5、貼標籤

三、設計流程圖

四、例項分析及截圖效果:

執行效果截圖:

第一步:讀取原圖,並顯示

image = imread('紅細胞5.jpg');

figure,imshow(image);

title(' 【原圖】');

第二步:進行二值化

theshold = graythresh(image);%取得圖象的全域性域值

image_bw = im2bw(image,theshold);%二值化圖象

figure,imshow(image_bw);

title(' 【初次二值化影象】');

第三步:進行二值化影象

image_bw_medfilt= medfilt2(image_bw,[13 13]);

figure,imshow(image_bw_medfilt);

title(' 【中值濾波後的二值化影象】');

第四步:通過「初次二值化影象」與「中值濾波後的二值化影象」進行「或」運算優化影象效果

optimized_image_bw = image_bw_medfilt|image_bw;

figure,imshow(optimized_image_bw);

title(' 【進行「或」運算優化影象效果】');

第五步:優化後二值化圖象取反,保證:'1'為'白色',0'為'黑色'

reverse_image_bw = ~optimized_image_bw;

figure,imshow(reverse_image_bw);

title(' 【優化後二值化圖象取反】');

第六步:填充二進位制影象的背景色,去掉細胞內的黑色空隙

filled_image_bw = bwfill(reverse_image_bw,'holes');

figure, imshow(filled_image_bw);

title(' 【已填充背景色的二進位制影象】');

第七步:對影象進行開運算,去掉細胞與細胞之間相粘連的部分

se = strel('disk',4);

open_image_bw = imopen(filled_image_bw,se);

figure, imshow(open_image_bw);

title(' 【開運算後的影象】');

第八步:開始計算細胞數

[label number]=bwlabel(open_image_bw,8)%初步取得細胞個數

array = bwlabel(open_image_bw,8);%取得貼標籤處理後的影象

sum = ;

%依次統計貼標籤後陣列

for i=1:number

[r,c] = find(array==i);%獲取相同標籤號的位置,將位置資訊存入[r,c]

rc = [r c];

num = length(rc);%取得vc陣列的元素的個數

sum([i])=num;%將元素個數存入sum陣列

endsum

n = 0;

-----假如sum陣列中的元素大於了1500,表示有兩個細胞相連,畫素點較多,即分為兩個細胞數---

for i=1:length(sum)

if(sum([i])) > 1500

n = n+1;

endend

number = number+n %----統計最終細胞數

第九步:最終檢測結果:

number =

92sum =

columns 1 through 10

3011 313 1501 329 2238 795 758 1438 1087 1472

columns 11 through 20

1476 1465 2902 1128 165544 6261 1193 1306 215

columns 21 through 30

1112 1074 1177 930 493 1438 1121 1678 1210 1330

columns 31 through 40

1370 1369 1153 1284 1061 589 2146 1486 1335 1049

columns 41 through 50

1275 1101 1127 661 1530 1304 286190 1772 854

columns 51 through 60

1554 1582 1287 136281 2090 608 1736 853 1040

columns 61 through 70

2779 1500 24677 1096 1481 9680 1404 783 724

columns 71 through 80

1439 626 1097 1823 1511 1223 1494 2494 1519 1329

columns 81 through 90

733 1119 1205 1147 1295 1398 344 1634 324 1081

columns 91 through 92

529 239

number =

114四、演算法分析

(1)中值濾波

利用中值濾波可以對影象進行平滑處理。其演算法簡單,時間複雜度低,但其對點、線和尖頂多的影象不宜採用中值濾波。很容易自適應化。

(2)開運算

先腐蝕後膨脹的過程稱為開運算。用來消除小物體、在纖細點處分離物體、平滑較大物體的邊界的同時並不明顯改變其面積。

(3)閉運算

先膨脹後腐蝕的過程稱為閉運算。用來填充物體內細小空洞、連線鄰近物體、平滑其邊界的同時並不明顯改變其面積。

五、心得體會

這份課程設計花了我近一周的時間來完成,最開始自以為完成了,結果讓同學一看,才知道我做錯了,我只是實現了乙個基本的演算法來處理了影象,而未能通過演算法來實現某種功能,於是又馬上重做了,呵呵...挺曲折的經歷,下面來說說我在做這個設計的體會吧:

通過這次的課程設計,我首次通過編寫**來完成對影象的處理,這是乙份難得的經驗。在剛開始運用matlab時,由於以前只是在數字訊號處理課程時使用,發現在數字影象處理中對其操作可以說是非常的不熟練,特別是**路徑總是不對,但是,當我把以前做過的matlab實驗的記錄重新看過之後,開始慢慢的對matlab的操作熟練起來,並且在實踐中找到了學習的樂趣。雖然在這短時間裡需要不斷查資料,然後對著電腦,把乙個乙個鬱悶得問題解決,那過**的是苦不堪言。

但當自己把乙個個的問題慢慢解決,執行成功的時候,得到了無法言語的快樂。

平時上課的時候只是對老師講的影象處理的動手環節比較感興趣,對其原理和基礎知識有點不感興趣,甚至可以說完全不明白。但是,通過向同學請教,上網查資料,我對直方圖均衡化的基本原理了解的很清楚了,並且在除錯**和運用help中對其均衡化的過程有了進一步的了解。

現在完成了,我才體會到:凡事只要認真做,什麼事都能好!

六、程式資料清單和源**

電子檔打包傳送到ftp。

數字影象處理課程設計報告

數字影象處理 課程設計報告 姓名 宋東洋 祁飛 馮登科 學號 20137750342 20137750336 20137750309 班級 軟體開發 3班 設計題目 手寫體數字識別 教師 龐海波老師 提交日期 2015年12月25日 一 設計內容 主題 手寫體數字識別 詳細說明 讀入手寫體數字 選擇...

數字影象處理實習報告

數字影象處理課程綜合實習 實習報告 目錄 2 第一章實習目的和意義 4 1.1實現raw到bmp格式的轉換 4 1.2灰度影象的對比度增強 4 1.3影象區域性處理 4 1.4影象幾何處理 4 1.5灰度影象邊緣檢測 4 1.6影象二值化 4 1.7hough變換檢測直線 5 第二章實習原理和方法 ...

數字影象處理開題報告

開題報告 一 研究的目的 意義及國內外現狀和發展趨勢 通常經影象資訊輸入系統獲取的源影象資訊中都含有各種各樣的雜訊與畸變。例如感測器獲取的遙感影象含有大量地物特徵資訊,在影象上這些地物特徵資訊以灰度形式表現出來,當地物特徵間表現的灰度差很小時,目視判讀就無法認辨,而影象增強的目的就是 1 採用某種技...