0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

圖像處理:灰度處理和二值化

新機器視覺 ? 來源:新機器視覺 ? 作者:新機器視覺 ? 2020-11-27 10:22 ? 次閱讀

在圖像處理中,用RGB三個分量(R:Red,G:Green,B:Blue),即紅、綠、藍三原色來表示真彩色,R分量,G分量,B分量的取值范圍均為0~255,比如電腦屏幕上的一個紅色的像素點的三個分量的值分別為:255,0,0。

像素點

像素點是最小的圖像單元,一張圖片由好多的像素點構成,下圖是一張腿的圖片。

查看這張圖片的信息,尺寸是800 * 800 的,寬度是800像素,高度是800像素。也就是說這張圖片是由一個800 * 800的像素點矩陣構成的(不理解矩陣是什么意思的話,可以把矩陣理解為C語言中的二維數組),這個矩陣是800行,800列,像素是圖像的最小單元,這張圖片的寬度是800個像素點的長度,高度是800個像素點的長度,共有800 * 800 = 640000個像素點。

因為一個像素點的顏色是由RGB三個值來表現的,所以一個像素點矩陣對應三個顏色向量矩陣,分別是R矩陣,G矩陣,B矩陣,它們也都是800 *800大小的矩陣。下面展示這張圖片的一部分顏色矩陣數據:

這個是R矩陣中的一部分

這個是G矩陣中的一部分

這個是B矩陣中的一部分



比如每個矩陣的第一行第一列的值分別為:R:240,G:223,B:204,所以這個像素點的顏色就是(240,223,204),三個矩陣的值不一定一 一對應,這樣做只是為了便于讀者理解。

圖像的灰度化

在理解了一張圖片是由一個像素點矩陣構成之后,我們就知道我們對圖像的處理就是對這個像素點矩陣的操作,想要改變某個像素點的顏色,我們只要在這個像素點矩陣中找到這個像素點的位置,比如第x行,第y列,所以這個像素點在這個像素點矩陣中的位置就可以表示成(x,y),因為一個像素點的顏色由紅、綠、藍三個顏色變量表示,所以我們通過給這三個變量賦值,來改變這個像素點的顏色,比如改成紅色(255,0,0),可以表示為(x,y,(R=255,G=0,B=0))。

那么什么叫圖片的灰度化呢?其實很簡單,就是讓像素點矩陣中的每一個像素點都滿足下面的關系:R=G=B(就是紅色變量的值,綠色變量的值,和藍色變量的值,這三個值相等,“=”的意思不是程序語言中的賦值,是數學中的相等),此時的這個值叫做灰度值。

灰度處理的方法:

一般灰度處理經常使用兩種方法來進行處理。

方法1:

灰度化后的R=(處理前的R + 處理前的G +處理前的B)/ 3

灰度化后的G=(處理前的R + 處理前的G +處理前的B)/ 3

灰度化后的B=(處理前的R + 處理前的G +處理前的B)/ 3

圖片經過方法1進行灰度化后的效果如下:

方法2:

灰度化后的R = 處理前的R * 0.3+ 處理前的G * 0.59 +處理前的B * 0.11

灰度化后的G = 處理前的R * 0.3+ 處理前的G * 0.59 +處理前的B * 0.11

灰度化后的B = 處理前的R * 0.3+ 處理前的G * 0.59 +處理前的B * 0.11

圖片經過方法2進行灰度化后的效果如下:

個人覺得第二種方法處理的效果比較好,第一種方法處理后的圖片有點模糊。

圖像的二值化

什么叫圖像的二值化?二值化就是讓圖像的像素點矩陣中的每個像素點的灰度值為0(黑色)或者255(白色),也就是讓整個圖像呈現只有黑和白的效果。在灰度化的圖像中灰度值的范圍為0~255,在二值化后的圖像中的灰度值范圍是0或者255。

黑色:

二值化后的R = 0

二值化后的G = 0

二值化后的B = 0

白色:

二值化后的R = 255

二值化后的G = 255

二值化后的B = 255

那么一個像素點在灰度化之后的灰度值怎么轉化為0或者255呢?比如灰度值為100,那么在二值化后到底是0還是255?這就涉及到取一個閥值的問題。

常用的二值化方法:

方法1:

取閥值為127(相當于0~255的中數,(0+255)/2=127),讓灰度值小于等于127的變?yōu)?(黑色),灰度值大于127的變?yōu)?55(白色),這樣做的好處是計算量小速度快,但是缺點也是很明顯的,因為這個閥值在不同的圖片中均為127,但是不同的圖片,他們的顏色分布差別很大,所以用127做閥值,白菜蘿卜一刀切,效果肯定是不好的。

方法2:

計算像素點矩陣中的所有像素點的灰度值的平均值avg

(像素點1灰度值+...+像素點n灰度值)/ n = 像素點平均值avg

然后讓每一個像素點與avg一 一比較,小于等于avg的像素點就為0(黑色),大于avg的 像素點為255(白色),這樣做比方法1好一些。

方法3:

使用直方圖方法(也叫雙峰法)來尋找二值化閥值,直方圖是圖像的重要特質。直方圖方法認為圖像由前景和背景組成,在灰度直方圖上,前景和背景都形成高峰,在雙峰之間的最低谷處就是閥值所在。取到閥值之后再一 一比較就可以了。

下面給出一張值化后的效果圖:(腿依稀可見。)

責任編輯:xj

原文標題:圖像處理之灰度化和二值化

文章出處:【微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 圖像處理
    +關注

    關注

    27

    文章

    1292

    瀏覽量

    56766
  • 二值化
    +關注

    關注

    0

    文章

    13

    瀏覽量

    4241

原文標題:圖像處理之灰度化和二值化

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    OpenCV教程之OpenCV圖像閾值處理

    閾值的基本概念是為了簡化圖像以進行分析。當我們將圖像轉換為灰度圖像時,必須記住灰度圖像仍然至少有
    的頭像 發(fā)表于 11-16 10:16 ?267次閱讀
    OpenCV教程之OpenCV<b class='flag-5'>圖像</b>閾值<b class='flag-5'>處理</b>

    FPGA在圖像處理領域的優(yōu)勢有哪些?

    。這種并行處理能力使得FPGA在處理大規(guī)模圖像數據時表現出色,能夠實時完成復雜的圖像處理算法。
    發(fā)表于 10-09 14:36

    盛顯科技:投影融合處理器如何實現圖像處理和融合?

    相信大家都知道,投影融合處理器實現融合投影功能的過程是一個復雜但高度專業(yè)的技術過程,它主要依賴于先進的投影技術和圖像融合技術,精妙地結合了尖端的投影技術與精細的圖像融合算法。那么您知
    的頭像 發(fā)表于 09-26 18:14 ?356次閱讀
    盛顯科技:投影融合<b class='flag-5'>處理</b>器如何實現<b class='flag-5'>圖像</b>的<b class='flag-5'>處理</b>和融合?

    圖像處理器是什么意思

    圖像處理器(Image Processor)是一種專門用于圖像處理和計算的硬件設備或芯片,它通過高速數據傳輸、圖像編解碼、濾波、變換等多種技
    的頭像 發(fā)表于 08-14 09:28 ?873次閱讀

    DSP教學實驗箱_數字圖像處理操作_案例分享:5-13 灰度圖像

    一、實驗目的 學習灰度圖像的原理,掌握圖像的讀取方法,并實現在LCD上顯示
    發(fā)表于 07-25 15:03

    基于DSP C6000教學實驗箱_數字圖像處理教程:5-9 圖像反色實驗案例分享

    一、實驗目的 學習圖像反色的原理,掌握圖像的讀取方法,并實現圖像反色。 、實驗原理 圖像反色 反色的實際含義是將R、G、B
    發(fā)表于 07-19 09:57

    圖像識別技術的原理是什么

    圖像識別技術是一種利用計算機視覺和機器學習技術對圖像進行分析和理解的技術。它可以幫助計算機識別和理解圖像中的對象、場景和活動。 圖像處理
    的頭像 發(fā)表于 07-16 10:46 ?1056次閱讀

    DSP國產教學實驗箱_嵌入式教程:5-7 直方圖均衡

    的方法來實現;直方圖均衡則通過使用累積函數對灰度進行“調整”以實現對比度的增強。 直方圖均衡(Histogram Equalization)又稱直方圖平坦
    發(fā)表于 07-12 15:47

    DSP教學實驗箱操作教程_數字圖像處理:5-5 灰度圖像直方圖

    histArray); 程序使用 VLIB 的庫來進行灰度直方圖統(tǒng)計前的緩存初始,調用的程序源碼和使用說明可以安裝VLIB后查看。調用的初始函數中,第一個參數是直方圖的邊界,第
    發(fā)表于 06-25 15:10

    FPGA設計經驗之圖像處理

    后面和直方圖做同步處理。 2)圖像常常用8位、24位、32位來表示一個像素的灰度。因此,統(tǒng)計種類分別為2^8=256/2^24=16777216/2^32=4294967296,地
    發(fā)表于 06-12 16:26

    基于FPGA的實時邊緣檢測系統(tǒng)設計,Sobel圖像邊緣檢測,FPGA圖像處理

    *768分辨率的灰度圖片如圖6所示,對比MATLAB 與 FPGA 處理效果的不同。MATLAB和 FPGA進行邊緣檢測后的均以 40 為閾值進行
    發(fā)表于 05-24 07:45

    視覺分析中,灰度圖片的數據傳導問題

    求助大佬,視覺分析中,需要做Profile分析,如圖,怎么讓Profile以灰度圖片分析。(圖中是以圖片做的分析)
    發(fā)表于 04-08 17:26

    嵌入式操作教程:7-1 基于CMOS數字攝像頭的灰度轉換實驗

    一、實驗目的 學習灰度轉換的原理,掌握OV2640 攝像頭和VPIF總線的工作原理,實現OV2640 攝像頭采集圖像并進行實時灰度轉換顯示在 LCD 上。 、實驗原理 OV2640攝
    發(fā)表于 01-19 14:52

    圖像連通區(qū)域的標記原理

    圖像是一種由黑白兩色組成的圖像,其像素只有兩種可能,分別對應黑色和白色。在
    的頭像 發(fā)表于 01-05 14:28 ?871次閱讀

    基于TIC6000的DSP教學實驗箱操作教程:5-18 RGB24圖像灰度轉換(LCD顯示)

    用紅(R)、綠(G)、藍(B)三原色的組合來表示每個像素的顏色。一般情況下,RGB彩色圖像灰度有三種轉化方案: (1)加權平均法 (2)平均值法:對彩色圖像的每個像素中的R、G、B三
    發(fā)表于 01-04 15:04