- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数位影像处理hist在matlab上的应用
數位影像處理作業
Digital Image Processing
前言及作業前的基本資訊:
1.實做介面:
本次作業利用軟體MATLAB進行實作,而程式碼的部份將附上MATLAB的M檔案。
2.實做圖片及其來源:
實做圖片就是封面的那張圖,是六年前畫的素描,但是因為時間的關係而導致原本很黑的的圖因碳粉掉很多而變的不太清楚,再加上掃瞄器多多少少有一些誤差所以並不是非常符合本意。
至於圖片是1248*1755解析度的圖片其分布圖如下
第一部分
目的:
利用累積機率函數將圖片的亮度範圍(0~255)轉成0~1的函式, 在因需要而設計反轉函式將亮度範圍(0~1)轉回成0~255的函式。
程式碼:
我們再此先做轉換函式將圖片的亮度範圍(0~255)轉成0~1,如左下
左邊的程式碼是個未完成的程式瑪,一個完成的轉換應該還要包括反轉換,有就是將亮度範圍由0~1轉成0~255
以下三頁將做三種不同的反轉換並展示其成果
第一種: uniform形式
第二種: 使圖形偏亮的形式
第三種: 使圖形偏暗的形式
第一部分結論
圖的好看與否通常每個人都有自己不同的見解,由上面三個圖我們得到三個不同的亮度分布的圖,如果以做轉換的目的來說(就是因為時間的關係而導致碳粉脫落不少),那麼做uniform形式及使圖形偏暗的形式較能展現當年的效果,而圖形偏暗的形式又更符合繪圖者心中的想法,也就是說我對以上三個圖做挑選的話圖形偏暗的形式是我最喜歡的圖,將暗黑中發亮的感覺詮釋的最好
然而圖形偏暗的形式有一點不及uniform形式,就是uniform形式還可以見到當年的筆觸而可以感覺到力道,反觀圖形偏暗的形式就都是一片漆黑,各有利弊。
第二部分
目的:
利用window的處理將圖片取其中的一小塊來做uniform的處理再將所有處理好的pixel重新組成圖片
方法:
在這作業之中我將依uniform選取的範圍進行兩部分的討論,其一是將選取範圍定在0~255之間,另一個方法是將選取範圍定在選取範圍的最大值及最小值之間。
方法一:
舉例而言,假設所選取的window為,若以uniform在0~255的範圍則變成,若39是我們想選取的pixel的話,亮度一下就由39變成149落差很大,則整張圖會變的很奇怪;所以我提出了第二種方式,
方法二:
設定uniform在min[window]~max[window]的範圍則使圖形能保時原本的相貌。舉例來說,假設所選取的window為
則出來的結果範圍將是範圍在12~147做完uniform後的值。
程式碼:我們先看處理單一window的程式碼
方法一 方法二
程式碼(續):我們再看整體的程式碼
處理過程中會有圖形在邊界值時變的很怪的情形,我的程式碼產生的圖形則直接將邊界值去掉,也就是說50*100的圖形若window為3*3則書出圖形為48*98大小的圖,若window為5*5則書出圖形為46*96大小的圖。
方法一: (共兩個圖)
左圖以window為3*3的大小做範圍是0~255的uniform
左圖以window為5*5的大小做範圍是0~255的uniform
方法二: (共四個圖)
左圖以window為3*3的大小做範圍是min~max的uniform
左圖以window為5*5的大小做範圍是min~max的uniform
左圖以window為11*11的大小做範圍是min~max的uniform
左圖以window為25*25的大小做範圍是min~max的uniform
第二部份之結論
方法一做出來的效果我認為是沒有效果,它只會讓整張圖片變的異常的模糊,我唯一能想出來的作用是應用在馬賽克的處理。
方法二做出來的效果在window小的時候其實是看不太出來的,感覺和原圖其實沒有郭大的差別,但是當window加大,效果才開始出來,從最後一張圖(window=25*25)可以發現在輪過上有比較狂野的線條。
而我對於window的方法認為是吃力不討好,計算量過於龐大但是效果其實不張,像最後一張圖(window=25*25)就讓我的電腦跑了兩個小時才完成,害我一度以為是當機。
function show = showoff(im)
%
% im 是輸入圖片 (矩陣)
%以下先找出圖形的基本數值
l = length(im(:,1)); %先找出圖形的長度
w = length(im(1,:)); %再找出圖形的寬度
n(l,w)=0; %做一個備用矩陣和原圖等大小
n = uint8(n
文档评论(0)