| 第一章 windows位圖和調(diào)色板 關(guān)于圖像的存儲(chǔ)方法: Ex:有一個(gè)長(zhǎng)寬各位200個(gè)像素,顏色數(shù)為16色的彩色圖,每一個(gè)像素都用RGB 3個(gè)分量表示。 ① 最易想到,最原始的存儲(chǔ)方法: 因?yàn)槊總€(gè)分量有256個(gè)級(jí)別,要用8bit,即1 byte 來表示,所以每個(gè)像素需要用 3 byte。So,整個(gè)圖像要用 200 * 200 * 3,約 120k byte。 ② 調(diào)色板 palette 我們用一個(gè)表,表中每一行記錄一種顏色的 R G B 值,而列數(shù)等于顏色數(shù)。這樣 一行需要 3 byte ( R G B 各占1 byte),16 個(gè)狀態(tài)需要 16 行。所以,表占用的字節(jié)共 3 * 16 = 48 byte。 圖像只有16個(gè)顏色,就是16種狀態(tài),只需要 4 bit = 0.5byte 用來給它們編號(hào),以在表中查找到該顏色的具體 RGB 值。 這樣,采用 調(diào)色板 存儲(chǔ)該圖像 共需要的存儲(chǔ)空間是: 200 * 200 * 16 * 0.5 + 3 * 16 (byte) 這樣所占用的字節(jié)數(shù)約為前面的1/6,節(jié)省了不少呢。 
 另,關(guān)于 真彩色圖的存儲(chǔ): 所謂真彩色圖,是指他的顏色數(shù)高達(dá) 256 * 256 * 256,也就是包含了RGB顏色表示方法中的所有顏色。但是并不是說一幅圖包含了所有的顏色,而是說它具有顯示所有顏色的能力。即最多可以包含所有的顏色。 如果這時(shí)還要采用 調(diào)色板技術(shù) : 調(diào)色板: 顏色數(shù) * 3 = 256 * 256 * 256 * 3 顏色的索引:log (256 * 256 * 256)= 24 bit = 3 byte 而直接利用 R G B三個(gè)分量表示 一個(gè)像素只需要 3byte 而已。反而節(jié)省了存儲(chǔ)調(diào)色板的空間。 
 所以: 對(duì)于2色位圖,用1位就可以表示該像素的顏色,一個(gè)字節(jié)可以表示8個(gè)像素。 對(duì)于16色位圖,用4位可以表示一個(gè)像素的顏色,一個(gè)字節(jié)可以表示2個(gè)像素。 對(duì)于256色位圖,一個(gè)字節(jié)剛好可以表示1個(gè)像素。 Notice: ① 每一行的字節(jié)數(shù)必須是4的整數(shù)倍,如果不是需要補(bǔ)齊。 ② 一般來說,.bmp文件的數(shù)據(jù)從下到上,從左到右。 
 Bmp文件格式: 大體可以分成4部分: 位圖頭文件 BITMAPFILEHEADER 位圖信息頭 BITMAPINFOHEADER 調(diào)色板 Palette 實(shí)際的位圖數(shù)據(jù) ImageDate 
 第二章:圖像的幾何變換 平移 旋轉(zhuǎn) 鏡像 轉(zhuǎn)置 放縮 
 平移: 初始坐標(biāo)(x0, y0)的點(diǎn)經(jīng)過平移(tx, ty) (以向右,向下為正方向)后,坐標(biāo)變?yōu)?x1, y1)。這兩點(diǎn)之間的關(guān)系是x1 = x0 + tx y1 = y0 + ty 以矩陣的形式表示: 它的逆變換: 平移后的圖像中每個(gè)像素的顏色,它的RGB值和它平移前那點(diǎn)是一樣的。所以,通過逆變換,我們可以得到平移前的那點(diǎn)。 x1 - tx = x0 y1 - ty = y0 這樣就可以得到平移后的點(diǎn)(x1 ,y1)的原始點(diǎn)(即平移前的點(diǎn))了,也就知道了它的RGB值。 
 那么,如果新圖中有一點(diǎn),按照逆變換的公式得到的對(duì)應(yīng)的平移之前的點(diǎn)不在原圖中該怎么辦呢?通常是把該點(diǎn)的RGB值統(tǒng)一設(shè)為(0,0,0) or (255, 255, 255) 
 還有一個(gè)問題,平移后的圖像是否要放大 ?一種方法是不放大,移出的部分被截?cái)唷A硪环N做法是,將圖像放大,使得能夠顯示下所有部分。這種處理,文件大小要改變。設(shè)原圖的寬和高分別是 w1 h1 ,則新圖的寬和高變?yōu)?w1+| tx| h1 + | ty | . | | 表示tx ty 可能為負(fù),即向左向上移動(dòng)。 
 灰度圖grayscale 灰度是指只含亮度信息,不含色彩信息的圖像。黑白照片就是灰度圖,特點(diǎn)是亮度由暗到明,變化是連續(xù)的。要表示灰度圖,就需要把亮度值進(jìn)行量化。 .bmp 文件中,沒有灰度圖這個(gè)概念,但是可以很easy的在bmp文件中表示灰度圖:用256色的調(diào)色板。這個(gè)調(diào)色板的每一項(xiàng)RGB值都是相同的。 
 YUV表示方法: Y分量的物理含義是亮度,U & V分量代表了色差信號(hào)。 Y代表了亮度,所以Y包含了灰度圖的所有信息,只用Y分量就可以完全表示出一幅灰度圖來。加上U V 分量,就可以表示彩色信息了。 這樣,用一種方法就可以在灰度和色彩圖之間切換,而RGB表示方法就做不到這一點(diǎn)了。 
 由于人眼對(duì)亮度信號(hào)非常敏感,對(duì)色差信號(hào)的敏感程度相對(duì)較弱。所以,圖像的主要信息應(yīng)該包含在Y分量中。So,對(duì)YUV信號(hào)進(jìn)行量化時(shí),可讓Y的量化級(jí)別多些,讓UV量化級(jí)別少些,就可以實(shí)現(xiàn)圖像信息的壓縮。 
 YUV 和 RGB之間存在對(duì)應(yīng)關(guān)系。當(dāng)RGB= (a, a, a) 時(shí),YUV = (a , 0,0) 
 使用灰度圖的好處: ① RGB的值都一樣。 ② 圖像數(shù)據(jù)即調(diào)色板索引值,就是實(shí)際的RGB值,也就是亮度值。 ③ 因?yàn)槭?56色調(diào)色板,所以圖像數(shù)據(jù)中一個(gè)字節(jié)代表一個(gè)像素,很整齊。 所以,做圖像處理時(shí)都采用灰度圖。 
 Translation 思想: 首先,將所有區(qū)域填成白色 然后,找到平移后顯示區(qū)域的左上角(x0, y0) 和右下角點(diǎn)(x1, y1) ① tx <= -width :圖像完全移出了屏幕,不用做任何處理 ② – width < tx <=0 : 圖像向左平移,但是沒有完全移除屏幕的情況。此時(shí),圖像區(qū)域的x范圍是從 0 到 width - |tx| ③ 0< tx < width :圖像向右平移,但是還沒有完全移除屏幕。圖像區(qū)域的x范圍從 tx -> width 。對(duì)應(yīng)原圖的范圍是從 0 到 width – tx。 ④ tx >= width :圖像完全移出了屏幕,不做任何處理。 
 Y方向類似。。。。。 
 這種做法是利用了位圖存儲(chǔ)的連續(xù)性,即同一行的像素在內(nèi)存中是相鄰的。Memcpy函數(shù)從 (x0, y0) 點(diǎn)開始,一次可以拷貝一整行(寬度為 x1 – x0 ),然后將內(nèi)存指針移到 (x0, y0 + 1)處,拷貝下一行。這樣拷貝(y1 – y0)行就完成了全部操作。 
 旋轉(zhuǎn):rotation Ex:以圖像的中心為圓心旋轉(zhuǎn):。。。。。 旋轉(zhuǎn)后的圖像變大了,轉(zhuǎn)出的部分可以裁減掉。 思想: ① 將坐標(biāo)系O’ 變成 O ② 將該點(diǎn)順時(shí)針旋轉(zhuǎn) a角 ③ 將坐標(biāo)系O變回 O’ 
 鏡像 mirror 水平鏡像: x坐標(biāo)取反后加上圖像的寬度 垂直鏡像: y坐標(biāo)取反后加上圖像的高度 
 轉(zhuǎn)置 transpose 是將x y 坐標(biāo)對(duì)換。 Notice : 轉(zhuǎn)置和旋轉(zhuǎn)90°是有區(qū)別的。 轉(zhuǎn)置后的寬高對(duì)換了。 
 縮放 zoom 假設(shè)放大因子為 ratio ,為了避免新圖過大或過小,限制 0.25 <= ratio <= 4 
 第三章 圖像的平滑(去噪聲)、銳化 平滑 smoothing,是圖像看起來柔和一些,模糊一些。 
 灰度突變,是指圖像中出現(xiàn)了與相鄰像素的灰度相差很大的點(diǎn)。在頻域中代表了一種高頻分量。低通濾波器可以濾掉高頻分量,從而達(dá)到減少圖像噪聲的目的。 
 實(shí)現(xiàn)方法:將圖中的每一點(diǎn)的灰度和它周圍8個(gè)點(diǎn)的灰度相加,然后除以 9 ,作為新圖中對(duì)應(yīng)點(diǎn)的灰度。這種標(biāo)識(shí)方法稱為 模板 template 。 模板不允許移除邊界,所以結(jié)果圖像會(huì)比原圖小。 對(duì)于邊界上無法進(jìn)行模板操作的點(diǎn),通常是復(fù)制原圖的灰度,不進(jìn)行任何處理。 
 模板操作實(shí)現(xiàn)了一種鄰域運(yùn)算,即某個(gè)像素點(diǎn)的結(jié)果不僅和該像素灰度有關(guān),而且和其鄰域點(diǎn)的值有關(guān)。 
 平滑模板的思想是通過將一點(diǎn)和周圍8個(gè)點(diǎn)做平均,從而去除突然變化的點(diǎn),濾掉噪聲,其代價(jià)是圖像有一定程度的模糊。 
 Box模板:考慮了鄰域點(diǎn)的作用,但并沒有考慮各點(diǎn)位置的影響,對(duì)于9個(gè)點(diǎn)都一視同仁,所以平滑的效果并不理想。 
 高斯模板:實(shí)際上,離某點(diǎn)越近的點(diǎn)對(duì)該點(diǎn)的影響應(yīng)該越大,所以考慮 加權(quán)系數(shù)。 
 中值濾波 是一種典型的低通濾波器,目的是保護(hù)圖像邊緣的同時(shí)去除噪聲。所謂中值濾波,是指以某點(diǎn)(x,y)為中心的小窗口內(nèi)的像素的灰度按從大到小的順序排列,將中間值作為(x,y)處得灰度值。 應(yīng)用中值濾波,能很好地保持原來的邊界。所以說,中值濾波的特點(diǎn)就是 保護(hù)圖像邊緣 的同時(shí) 去除噪聲。 
 高斯噪聲:圖中有很多噪聲點(diǎn),并且是雜亂無章的,隨即分布的。 脈沖 impulse :圖像中間的灰度要比兩邊的高許多 
 總結(jié): 中值濾波容易去除 孤立點(diǎn)、線的噪聲,同時(shí)保持圖像的邊緣,能很好的去除二值噪聲,但對(duì)于高斯噪聲無能為力。但是,當(dāng)窗口內(nèi)噪聲點(diǎn)的個(gè)數(shù)大于窗口寬度的一半時(shí),中值濾波的效果不好。 
 銳化: 與平滑相反,是通過增強(qiáng)高頻分量來減少圖像中的模糊,因此又稱為 高通濾波 。 銳化處理 在增強(qiáng)圖像邊緣的同時(shí)增加了圖像的噪聲。 
 常用的銳化模板是 拉普拉斯 Laplacian 模板。 拉普拉斯模板的作法:先將自身與周圍8個(gè)像素相減,表示自身與周圍像素的差別,再將這個(gè)差別加上自身作為新像素的灰度??梢姡绻黄祬^(qū)中出現(xiàn)了一個(gè)亮點(diǎn),那么銳化處理的結(jié)果是這個(gè)亮點(diǎn)變得更亮,增加了圖像的噪聲。 因?yàn)閳D像中的邊緣就是那些灰度發(fā)生跳變的區(qū)域,所以 銳化模板 在邊緣檢測(cè)中很有用。 
 第四章 圖像的半影調(diào)和抖動(dòng)技術(shù) 
 半影調(diào)技術(shù)(halftone):是指由二值圖像顯示出灰度效果的方法。主要用在 在只有二值輸出的打印機(jī)上打印圖像。 有兩種方法可以實(shí)現(xiàn):圖案法和抖動(dòng)法。 圖案法 (patterning) 是指灰度可以用一定比例的黑白點(diǎn)組成的區(qū)域表示,從而達(dá)到整體圖像的灰度感。黑白點(diǎn)的位置選擇稱為 圖案化 。圖案化使用圖案來表示像素的灰度。 
 抖動(dòng)法: 有時(shí)候即使采用了圖案化技術(shù),仍然得不到要求的灰度級(jí)別(比如,當(dāng)一幅灰度圖用一定分辨率的打印機(jī)將其打印到 一定尺寸的紙上上,每個(gè)像素可以用 x 個(gè)點(diǎn)大小的圖案來表示,但是最多能表示 x + 1 級(jí)灰度,無法滿足圖像的灰度級(jí)。)這時(shí)可以采用兩種方法來解決: ① 減小圖像尺寸 ② 降低圖像灰度級(jí) ③ 抖動(dòng)法 dithering 方法③可以更好的解決這個(gè)問題。 抖動(dòng)法。 有規(guī)則抖動(dòng)(regular dithering) ,它的算法簡(jiǎn)單,但是圖案化有時(shí)很明顯。這時(shí)因?yàn)槿∧_\(yùn)算雖然引入了隨機(jī)成分,但還是有規(guī)律的。另外,點(diǎn)之間進(jìn)行比較時(shí),只要比標(biāo)準(zhǔn)圖案上點(diǎn)的值大就打白點(diǎn),這樣并不理想,因?yàn)?,如果?biāo)準(zhǔn)圖案點(diǎn)的灰度值本身就很小,而圖像中點(diǎn)的灰度只比它大一點(diǎn)時(shí),圖像中的點(diǎn)更接近黑色而不是白色。一種更好的方法是將這個(gè)誤差傳播到鄰近的像素。 將bmp文件轉(zhuǎn)換為txt文件 Bmp2txt 應(yīng)用程序能把位圖文件轉(zhuǎn)成和圖案很相似的字符文本。用到了圖案化類似的思想: 首先,將位圖分成同樣大小的小塊,求出每一塊灰度的平均值,然后和每個(gè)字符的灰度做比較,找出最接近的那個(gè)字符,來代表這一小塊圖像。 
 第五章 直方圖修正和彩色變換 直方圖修正和彩色變換反色 反色invert 就是形成底片效果。 反色的含義是將RGB值反轉(zhuǎn)。若顏色的量化級(jí)別是256,則新圖的RGB值為 255 減去 原圖的 RGB值。這里針對(duì)的是所有圖,包括真彩圖、帶調(diào)色板的彩色圖(又稱為 偽彩圖)、灰度圖。 針對(duì)不同類型有不同處理: 真彩圖: 真彩圖不帶調(diào)色板,每個(gè)像素用3byte ,表示 RGB 三個(gè)分量。所以處理很簡(jiǎn)單,只需要把翻轉(zhuǎn)后的RGB值寫入新圖即可。 帶調(diào)色板的彩色圖: 位圖中的數(shù)據(jù)只是對(duì)應(yīng)調(diào)色板中的一個(gè)索引值,所以我們只需要將調(diào)色板反轉(zhuǎn),形成新調(diào)色板,而位圖數(shù)據(jù)不用動(dòng),就能夠?qū)崿F(xiàn)反轉(zhuǎn)。 灰度圖: 灰度圖是一種特殊的為彩色圖,只不過調(diào)色板中的 RGB 值都一樣而已。所以,反轉(zhuǎn)方法和上面一樣。 
 【二值圖,不一定是黑白圖。而是說它的調(diào)色板中有2中顏色。所以,二值圖 也可以是 彩色 的,只不過一般情況下是黑白圖而已?!?/span> 
 彩色圖轉(zhuǎn)灰度圖: YUV表示方法中,Y分量的物理含義是亮度,它包含了 灰度圖 grayscale 的所有信息,只用 Y 分量就完全能夠表示出一幅灰度圖來。 根據(jù)YUV 和RGB 的對(duì)應(yīng)關(guān)系,可以根據(jù)RGB的值求出 Y值,然后將RGB的值都賦值成Y,就能表示出灰度圖來,這就是彩色圖轉(zhuǎn)灰度圖的原理。 真彩圖: 不帶調(diào)色板,所以處理很簡(jiǎn)單,根據(jù)RGB的值求出Y值后,將RGB值都賦值Y,寫入新圖即可。 帶調(diào)色板的彩色圖:位圖中的數(shù)據(jù)只是對(duì)應(yīng)調(diào)色板中的一個(gè)索引值,我們只需要將調(diào)色板中的彩色變成灰度,形成新調(diào)色板,而位圖數(shù)據(jù)不用動(dòng),就OK啦。 
 真彩圖轉(zhuǎn) 256 色圖 真彩圖包含最多 2的24次方種顏色,怎樣從中選出 256 中顏色,又要使顏色的是真比較小? 方法一:將 R : G : B 以 3 : 3 : 2 表示,即取 R G 的高3位, B 的高 2 位,組成一個(gè)字節(jié),這樣就可以表示 256 中顏色了。但是,這樣失真肯定很嚴(yán)重。 方法二:準(zhǔn)備一個(gè) 4096 的數(shù)組,代表 4096 種顏色。對(duì)圖中的每一個(gè)像素,取 R G B的最高四位(四位?只用一半?這樣就可以做到失真不嚴(yán)重了么?R G B是怎么表示的?本來是8位的,只用前四位就可以。。。。?額。。。不明白。。。),拼成一個(gè)12位的整數(shù),對(duì)應(yīng)的數(shù)組元素加1.全部統(tǒng)計(jì)完后,就得到了這 4096 種顏色的使用頻率。其中,可能有一些顏色一次都沒有使用到,即對(duì)應(yīng)數(shù)組元素為 0 (假設(shè)不為0 的數(shù)組 共有PalCounts 個(gè))將這些為0 的數(shù)組元素清除,使得前 PalCounts 個(gè)元素都不為0.將這PalCounts 個(gè)數(shù)按從小到大的順序排列。這樣,前 256 種顏色就是用的最多的顏色,它們將作為調(diào)色板上的256種顏色。對(duì)于剩下的 PalCounts – 256 種顏色不是簡(jiǎn)單的丟棄,而是用前 256 種顏色中的一種來代替,代替的原則是找有最小平方誤差的那個(gè)。再次對(duì)圖中的每個(gè)像素,取 RGB的最高四位,拼成一個(gè)12位的整數(shù),如果對(duì)應(yīng)值在前 256 種顏色中,則直接將該索引值填入位圖數(shù)據(jù)中,如果是在后PalCounts – 256 種顏色中,則用代替色的索引值填入位圖數(shù)據(jù)中。 
 對(duì)比度擴(kuò)展: 低對(duì)比度是指 灰度都擠在一起,沒有拉開。 灰度擴(kuò)展是指 把所感興趣的灰度范圍拉開,使得該范圍內(nèi)的像素亮的越亮,暗的越暗,從未達(dá)到了增強(qiáng)對(duì)比度的目的。 
 削波cliping 可以看作是對(duì)比度擴(kuò)展的一個(gè)特例。 
 閾值化 thresholding 可以看作是削波得一個(gè)特例。 
 灰度窗口變換 slicing 是將某一區(qū)間的灰度級(jí)和其它部分(背景)分開。 灰度窗口變換有2種:一種是清除背景的,一種是保留背景的。前者把不在灰度窗口范圍內(nèi)的像素都賦為0,在灰度窗口范圍內(nèi)的像素都賦值為 255 ,這也能實(shí)現(xiàn)灰度圖的二值化;后者把不在灰度窗口范圍內(nèi)的像素保留原灰度值,在灰度窗口范圍內(nèi)的像素都賦值為 255 ?;叶却翱谧儞Q可以檢測(cè)出在某一灰度窗口范圍內(nèi)的所有像素,是圖像灰度分析中的一個(gè)有力工具。 
 灰度直方圖統(tǒng)計(jì)histogram 用來描述一幅圖中的灰度分布情況 橫坐標(biāo)表示 灰度值 ,縱坐標(biāo) 表示 灰度值 出現(xiàn)的次數(shù) 
 灰度直方圖均衡化 histogram equalization 直方圖修正,是通過一個(gè)灰度映射函數(shù)Gnew = F(Gold) , 將元灰度直方圖改造成你所希望的直方圖。所以,直方圖修正的關(guān)鍵就是灰度映射函數(shù)。(閾值化、削波、灰度窗口變換等都是灰度映射函數(shù)) 直方圖均衡化 是一種最常用的直方圖修正。它把給定圖像的直方圖分布改造成均勻直方圖分布。用信息學(xué)的理論來解釋,具有最大熵(信息量)的圖像為均衡化圖像。直觀地講,直方圖均衡化導(dǎo)致圖像的對(duì)比度增加  【看的很粗糙,用到得時(shí)候再細(xì)化吧, 第六章 腐蝕 , 膨脹, 細(xì)化算法 
 【數(shù)學(xué)形態(tài)學(xué)】 的主要用途是獲取物體拓?fù)浜徒Y(jié)構(gòu)信息,它通過物體和結(jié)構(gòu)元素相互作用的某些運(yùn)算,得到物體更本質(zhì)的形態(tài)。在圖像處理中的應(yīng)用主要是:①利用形態(tài)學(xué)的基本運(yùn)算,對(duì)圖像進(jìn)行觀察和處理,從而達(dá)到改善圖像質(zhì)量的目的 ②描述和定義圖像的各種幾何參數(shù)和特征,如面積、周長(zhǎng)、連通度、顆粒度、骨架和方向性等。 二值圖像的形態(tài)學(xué)運(yùn)算。。。。。。 一些基本符號(hào)和關(guān)系:元素、包含、擊中、不擊中、補(bǔ)集、結(jié)構(gòu)元素(刷子)、對(duì)稱集、平移、 
 腐蝕:把結(jié)構(gòu)元素B平移a后得到 Ba, 若Ba包含于X,記下這個(gè)a點(diǎn)。所有滿足上述條件的a點(diǎn)組成的集合稱作X被B腐蝕 Erosion 的結(jié)果?!緟^(qū)域顯然變小了】 膨脹: Dilation ,可以看做是腐蝕的對(duì)偶運(yùn)算。定義是:把結(jié)構(gòu)元素B平移a后得到Ba,若Ba 擊中X,我們記下這個(gè)a點(diǎn)。所有滿足上述條件的a點(diǎn)組成的集合稱作X被B膨脹的結(jié)果?!緟^(qū)域變大了】 開:先腐蝕,后膨脹稱為 開 open。 閉:先膨脹,后腐蝕稱為 閉 close。 細(xì)化:thinning ,就是從原圖的圖中去掉一些點(diǎn),但仍要保持原來的形狀。實(shí)際上,是保持原圖的骨架。所謂骨架,可以理解為 圖像的中軸。細(xì)化就是把不是骨架的點(diǎn)去掉。如下判斷依據(jù):①內(nèi)部點(diǎn)不能刪 ②孤立點(diǎn)不能刪 ③直線端點(diǎn)不能刪 ④如果P是邊界點(diǎn),去掉P后,如果聯(lián)通分量不增加,則P才可以被刪除。 
 
 第七章 邊緣檢測(cè)與提取 輪廓追蹤 邊沿檢測(cè):當(dāng)一幅圖像左右兩邊的灰度值相差很大時(shí),中間就存在著一條很明顯的邊界。利用模板(-1, 0, 1)操作后,會(huì)得到中間部分比其他部分亮很多的邊,其它區(qū)域會(huì)很暗,這樣就起到了邊沿檢測(cè)的作用。模板的意思是,將右鄰點(diǎn)的灰度值-左鄰點(diǎn)的灰度值作為該點(diǎn)的灰度值。在灰度相近的區(qū)域內(nèi),這樣做可以使得該點(diǎn)的灰度值接近0;而在邊界附近,灰度值有明顯的跳變,這樣做就使得該點(diǎn)的灰度值很大。 這種模板是一種邊沿檢測(cè)器,數(shù)學(xué)上的含義是基于梯度的濾波器,又稱為 邊沿算子。 
 Sobel 算子 分為 普通 Sobel 算子 和 各向同性Sobel算子。又都分為檢測(cè) 垂直平邊沿的和檢測(cè)水平邊沿的。各項(xiàng)同性Soble算子的位置加權(quán)系數(shù)更為準(zhǔn)確,在檢測(cè)不同方向的邊沿時(shí)梯度的幅度一致。 
 高斯拉普拉斯算子 由于噪聲點(diǎn)(灰度與周圍點(diǎn)相差很大的點(diǎn)) 對(duì)邊沿檢測(cè)有一定的影響,所以效果更好的邊沿檢測(cè)器 是 高斯拉普拉斯LOG算子。它把高斯平滑濾波器和拉普拉斯銳化濾波器結(jié)合起來,先平滑掉噪聲,再進(jìn)行邊沿檢測(cè),效果更好。 常用的LOG算子是5*5模板。到中心點(diǎn)的距離與位置加權(quán)系數(shù)用曲線表示很像一頂墨西哥草帽,所以,LOG又叫做 墨西哥草帽濾波器。 
 Hought變換 用來在圖像中查找直線。 
 輪廓提取 方法:掏空內(nèi)部點(diǎn)。即 如果原圖中有一點(diǎn)為黑,且它的8個(gè)相鄰點(diǎn)都是黑色時(shí)(此時(shí)該點(diǎn)是內(nèi)部點(diǎn))則將該點(diǎn)刪除。 注意,我們處理的雖然是二值圖,但實(shí)際上是256級(jí)灰度圖,不過只用到 0 和 255 兩種顏色。 
 種子填充: 用來在封閉曲線的環(huán)中填充某種顏色。種子填充實(shí)際上是圖形學(xué)中的算法,其原理是:準(zhǔn)備一個(gè)堆棧, 先將要填充的點(diǎn) push 進(jìn)堆棧中,以后,每pop出一個(gè)點(diǎn),即將該點(diǎn)涂成色。然后,按照左上右下的順序查看它的四個(gè)相鄰點(diǎn),若為白(表示還沒有填充),就將該鄰點(diǎn)push進(jìn)棧。一直循環(huán),知道棧為空。 
 輪廓跟蹤: 顧名思義就是通過順序找出邊緣點(diǎn)來跟蹤邊界。 
 第八章 圖像的檢測(cè)及模板匹配 模板匹配:就是拿已知的模板和原圖像中同樣大小的一塊區(qū)域去對(duì)比。So,利用模板匹配可以在一幅圖像中找到已知的物體。 差影法:將前后兩幅圖像相減,得到的差作為結(jié)果圖像。 投影法:一般可以先選取合適的閾值做削波處理,然后將該圖二值化,然后投影。由于噪聲對(duì)投影有一定的影響,所以,處理前最好先做一次平滑,去除噪聲。 
 第九章 圖像的壓縮編碼,JPEG壓縮編碼標(biāo)準(zhǔn) 壓縮可分為兩大類:第一類壓縮過程是可逆的,也就是說,從壓縮后的圖像能夠完全恢復(fù)出原來的圖像,信息沒有任何丟失,稱為 無損壓縮。 第二類壓縮過程是不可逆的,無法恢復(fù)出原圖像,信息有一定的丟失,稱為有損壓縮。但是,它的壓縮比 高 。 
 圖像壓縮一般通過改變圖像的表示方式來達(dá)到,so 壓縮和編碼 是分不開的。 圖像壓縮主要應(yīng)用在圖像信息的傳輸和存儲(chǔ)。 壓縮編碼的方法有: 像素編碼 , 預(yù)測(cè)編碼 , 變換編碼 , else。 像素編碼:編碼對(duì)每個(gè)像素單獨(dú)處理,不考慮像素之間的相關(guān)性。方法有: ① 脈沖編碼調(diào)制(Pulse Code Modulation PCM) ② 熵編碼 (Entropy Coding) ③ 行程編碼(Run Length Coding) ④ 位平面編碼(Bit Plane Coding) 其中熵編碼又有 哈夫曼編碼(Huffman) 和 行程 編碼 預(yù)測(cè)編碼: 去除相鄰像素之間的相關(guān)性和冗余性,只對(duì)新的信息進(jìn)行編碼。 常用的預(yù)測(cè)編碼有: 調(diào)制(Delta Modulation DM) 微分預(yù)測(cè)編碼(Differential Pulse Code Modulation DPCM) 變換編碼:將給定的圖像變換到另一個(gè)數(shù)據(jù)域上,使得大量的信息能用較少的數(shù)據(jù)來表示,從而達(dá)到壓縮的目的。 常用的變換編碼有:離散傅里葉變換DFT 離散余弦變換DCT 離散哈達(dá)瑪變換DHT 
 哈弗曼編碼。。。。。 行程編碼:將一行中顏色值相同的相鄰像素用一個(gè)計(jì)數(shù)值和該顏色來代替。 Ex aaabccccccddee 可以表示為 3a1b6c2d3e 。如果一幅圖像是由很多塊顏色相同的大面積區(qū)域組成的,那么采用行程編碼的壓縮效率是驚人的。然而,該算法的致命點(diǎn)是:如果圖像中每?jī)蓚€(gè)相鄰點(diǎn)的顏色都不同,那么這種算法不但不能壓縮,反而數(shù)據(jù)量增加一倍。 
 LZW算法: LZW是一種比較復(fù)雜的壓縮算法,其壓縮效率也比較高。 LZW把第一次出現(xiàn)的字符串用一個(gè)數(shù)值來編碼,在還原程序中再將這個(gè)數(shù)值還成原來的字符串。LZW是無損的,gif文件就是采用的這種壓縮算法。 
 JPEG 是聯(lián)合圖像專家組 Joint Picture Expert Group 制定的靜態(tài)圖像的壓縮編碼標(biāo)準(zhǔn)。它的壓縮比很好。 
 以上 關(guān)于 圖像的基礎(chǔ)知識(shí),知識(shí)涉及到最基本得概念,還沒有深入到算法。。。。算是開始入門了解吧。 
 參考 《數(shù)字圖像處理編程入門》 轉(zhuǎn)自:http://blog.csdn.net/timidsmile/article/details/6640600 
 
 
 
 
 
 | 
|  |