專利名稱:圖片亮度調節(jié)系統(tǒng)和方法
技術領域:
本發(fā)明涉及圖像處理技術領域,特別是涉及ー種圖片亮度調節(jié)系統(tǒng)和方法。
背景技術:
膠片相機拍攝的照片,曝光是否合適必須等到沖洗完后才能確定,對攝影者曝光的技巧要求非常高,過度曝光的照片偏白偏亮,而曝光不足的照片則偏黑偏暗。數(shù)碼相機的出現(xiàn),大大降低了攝影的難度和門檻,通過將影像信息以數(shù)字的形式存儲在存儲設備中,在沖洗之前就可以看到照片的曝光效果是否合適,如有需要可對照片的亮度做出一定的修正。
發(fā)明內容
鑒于以上內容,有必要提供一種圖片亮度調節(jié)系統(tǒng)和方法。一種圖片亮度調節(jié)系統(tǒng),所述系統(tǒng)包括圖片讀取模塊,用于讀取待處理的圖片;亮度計算模塊,用于計算圖片的每ー像素的亮度值,并統(tǒng)計每ー亮度值對應的像素數(shù);色階直方圖生成模塊,用于以亮度值為橫坐標,以每ー亮度值對應的像素數(shù)為縱坐標,繪制色階直方圖;基點選取模塊,用于在色階直方圖中選取一第一橫坐標值和一第二橫坐標值,其中第一橫坐標值小于所述第二橫坐標值;左向色階移動模塊,用于根據(jù)第一橫坐標值,對圖片的每一像素做左向色階移動;右向色階移動模塊,用于根據(jù)第二橫坐標值,對圖片的每一像素做右向色階移動;及圖片保存模塊,用于保存色階調整后的圖片。ー種圖片亮度調節(jié)方法,所述方法包括以下步驟讀取待處理的圖片;計算圖片的每一像素的亮度值,并統(tǒng)計每ー亮度值對應的像素數(shù);以亮度值為橫坐標,以每ー亮度值對應的像素數(shù)為縱坐標,繪制色階直方圖;在色階直方圖中選取一第一橫坐標值和一第二橫坐標值,其中第一橫坐標值小于所述第二橫坐標值;根據(jù)第一橫坐標值,對圖片的每一像素做左向色階移動;根據(jù)第二橫坐標值,對圖片的每一像素做右向色階移動;及保存色階調整后的圖片。與現(xiàn)有技術相比,上述圖片亮度調節(jié)系統(tǒng)和方法,根據(jù)色階直方圖分析出圖片亮度分布不均勻的區(qū)域,從而確定新的最亮和最暗基準點,對圖片的像素做色階移動,讓圖片的亮度分布更加均衡,可以有效的對圖片過度曝光或曝光不足做出修正。
圖I為本發(fā)明一種實施方式中的圖片亮度調節(jié)系統(tǒng)的功能框圖。圖2至圖4為本發(fā)明一種實施方式中生成的色階直方圖示例。圖5至圖7為本發(fā)明一種實施方式中的在色階直方圖中確定新的基準點的示例。圖8為本發(fā)明一種實施方式中的對圖片像素做左向色階移動的示意圖。圖9為本發(fā)明一種實施方式中的對圖片像素做右向色階移動的示意圖。
圖10為本發(fā)明一種實施方式中的圖片亮度調節(jié)方法的流程圖。主要元件符號說明
圖片讀取模塊|~102
圖片縮小模塊104
亮度計算模塊106
色階直方圖生成模塊 108 基點選取模塊HO
左向色階移動模塊 112 右向色階移動模塊 H4 圖片保存模塊H具體實施例方式在圖像處理技術領域,色階是用來表示圖像亮度強弱的數(shù)值,色階直方圖是圖像中不同亮度的分布圖,一般以橫坐標表示“色階指數(shù)的取值”,也即亮度值,標準尺度在0 255之間,0表示沒有亮度,即純黑色,255表示最亮,即純白色,該數(shù)值越大表示越亮,數(shù)值越小表示越暗;以縱坐標表示包含特定亮度值的圖像像素數(shù),其取值越大表示在這個亮度值的像素越多。下面結合具體實施方式
和附圖對本發(fā)明做進ー步詳細的說明。請參閱圖1,圖中示意性的示出了根據(jù)本發(fā)明一種實施方式的圖片亮度調節(jié)系統(tǒng)的功能框圖,所述圖片亮度調節(jié)系統(tǒng)包括圖片讀取模塊102、圖片縮小模塊104、亮度計算模塊106、色階直方圖生成模塊108、基點選取模塊110、左向色階移動模塊112、右向色階移動模塊114和圖片保存模塊116。所述圖片讀取模塊102,用于讀取待處理的圖片。待處理的圖片來源可以是本地存儲器,也可以是URI (統(tǒng)ー資源定位器)指向的圖片,格式包括PNG、JPG、GIF、RAW等。
所述圖片縮小模塊104,用于按一定比例縮小圖片,將縮小后的圖片作為繪制色階直方圖的計算對象。色階直方圖表示的是圖片不同亮度的分布圖,是ー種相對值關系,因此對縮小后的圖片生成的色階直方圖與對原始圖片生成的色階直方圖的形狀與輪廓是一祥的,對于本實施方式中的對圖片色階的調節(jié)不會產生影響,但是圖片被縮小后,需要計算的像素數(shù)大幅減小,可以極大的提高運算效率。比如一幅分辨率為800x600的圖片的像素數(shù)是48萬個,在將其按恒定縱橫比縮小到200x150后,像素數(shù)減少到3萬個,在生成色階直方圖時可以減少時間開銷。在一種實施方式中,使用最近領域法縮小圖片,最近領域法具有算法簡單、處理速度最快的優(yōu)點,雖然縮小后的圖片效果與其他縮小圖片的方法相比較差,但在本實施方式中,縮小的圖片不是用于觀賞,而是生成色階直方圖,所以完全可以忽略此缺點。在其他實施方式中,還可以使用線性插值法或三次樣條法等其他方法來縮小圖片。所述亮度計算模塊106,用于計算圖片的每ー像素的亮度值,并統(tǒng)計每ー亮度值對應的像素數(shù)。在RGB色彩模式中,每ー個像素都包含紅色、緑色、藍色三個顏色分量,每ー個顏色分量的動態(tài)范圍都是0 255,顏色分量的取值越小,表示越暗,取值越大,表示越亮,RGB (0,0,0)表示最亮,為純白色,RGB (255,255,255)表示最暗,為純黑色。在本實施方 式中,每ー像素的亮度值用該像素的顔色分量均值來表示,及取該像素的三個顏色分量的平均值。比如ー個RGB (50,60,130)的亮度值為80。所述色階直方圖生成模塊108,用于以亮度值為橫坐標,以每ー亮度值對應的像素數(shù)為縱坐標,繪制色階直方圖。色階直方圖如圖2至圖4所示,橫坐標表示亮度值,范圍為0 255,縱坐標表示每ー亮度值對應的像素數(shù)。在如圖2所示的色階直方圖中,可以觀察出色階分布主要集中在橫坐標右側部位,在亮度值較低的位置,像素數(shù)分布較少,圖片的亮部像素較多,暗部像素較少,圖片整體偏亮。在如圖2所示的色階直方圖中,可以觀察出色階分布主要集中在橫坐標左側部位,在亮度值較高的位置,像素數(shù)分布較少,圖片的暗部像素較多,亮部像素較少,圖片整體偏暗。在如圖3所示的色階直方圖中,可以觀察出色階分布主要集中在橫坐標中間部位,在亮度值較高的位置和較低的位置,像素數(shù)分布都較少,圖片的暗部像素和亮部像素都較少,圖片整體偏灰。所述基點選取模塊110,用于在色階直方圖中選取一第一橫坐標值和一第二橫坐標值,其中第一橫坐標值小于所述第二橫坐標值。所述第一橫坐標值對應的坐標點為色階調節(jié)的目標新坐標原點(橫坐標值為0),所述第二橫坐標值對應的坐標點為色階調節(jié)的目標最大亮度值端點(橫坐標值為255)。所述基點選取模塊110包括左基點選取子模塊和右基點選取子模塊。所述左基點選取子模塊,用于從色階分布圖的橫坐標的左端向右端掃描,當掃描至一橫坐標值對應的縱坐標的數(shù)值超過一第一預定閥值時,記錄該橫坐標值為第一橫坐標值。所述第一預定閥值為ー經驗值,用于定義偏暗臨界點,當縱坐標的數(shù)值(也即像素數(shù))超過所述第一預定閥值時,此時的橫坐標值(也即亮度值)記錄為第一橫坐標值。如圖5所示,在ー種實現(xiàn)場景中,圖片的像素數(shù)為10萬,所述第一預定閥值為200,當所述左基點選取子模塊從色階分布圖的橫坐標的左端向右端掃描至橫坐標值為50吋,縱坐標值超過200的閥值,則50被記錄為第一橫坐標值。所述右基點選取子模塊,用于從色階分布圖的橫坐標的右端向左端掃描,當掃描至一橫坐標值對應的縱坐標的數(shù)值超過一第二預定閥值時,記錄該橫坐標值為第二橫坐標值。所述第二預定閥值為ー經驗值,用于定義偏亮臨界點,當縱坐標的數(shù)值(也即像素數(shù))超過所述第二預定閥值時,此時的橫坐標值(也即亮度值)記錄為第二橫坐標值。如圖6所示,在ー種實現(xiàn)場景中,圖片的像素數(shù)為10萬,所述第二預定閥值為200,當所述右基點選取子模塊從色階分布圖的橫坐標的右端向左端掃描至橫坐標值為205吋,縱坐標值超過200的閥值,則205被記錄為第二橫坐標值。在另ー種實施方式中,所述基點選取模塊110接收用戶指定的第一橫坐標值和第ニ橫坐標值,在這種實施方式中,用戶可憑借對色階直方圖的觀察和經驗來確定第一橫坐標值和第二橫坐標值。如圖7所示,在ー種實現(xiàn)場景中,圖片整體偏灰,暗部和亮部像素分布很少。圖片的像素數(shù)為10萬,所述第一預定閥值和所述第二預定閥值均設為200,當所述左基點選取子模塊從色階分布圖的橫坐標的左端向右端掃描至橫坐標值為60吋,縱坐標值超過200的閥值,則60被記錄為第一橫坐標值,當所述右基點選取子模塊從色階分布圖的橫坐標的右端向左端掃描至橫坐標值為180吋,縱坐標值超過200的閥值,則180被記錄為第二橫坐標值。所述左向色階移動模塊112,用于根據(jù)第一橫坐標值,對圖片的每一像素做左向色階移動。如圖8所示,第一橫坐標值為50,圖片的暗部像素分布偏少,圖片整體偏亮,所述左向色階移動模塊112所做的左向色階移動是將第一橫坐標作為色階移動后的坐標原點,使得色階直方圖向橫坐標的左方移動。所述左向色階移動模塊112,對圖片的每ー像素的每ーRGB顔色分量,依據(jù)公式f (X) = (X-P1)/ (l-Pi/255)計算出色階移動后的顔色分量值f(x),在該公式中,X為色階移動前的顔色分量值,P1為第一橫坐標值。進ー步地,根據(jù)該公式,當P1為坐標原點(即0)吋,f(x) =x,可見色階移動前后的顔色分量值保持不變,這表明當?shù)谝粰M坐標值選取為0(即坐標原點)吋,左向色階移動的距離也為O。所述右向色階移動模塊114,用于根據(jù)第二橫坐標值,對圖片的每一像素做右向色階移動。如圖9所示,第二橫坐標值為200,圖片的亮部像素分布偏少,圖片整體偏暗,所述右向色階移動模塊114所做的右向色階移動是將第二橫坐標作為色階移動后的坐標右端點(255),使得色階直方圖向橫坐標的右方移動。所述右向色階移動模塊114,對圖片的每一像素的每ー RGB顔色分量,依據(jù)公式f (X) =x*(p2/255)計算出色階移動后的顔色分量值f(x),在該公式中,X為色階移動前的顔色分量值,P2為第二橫坐標值。進ー步地,根據(jù)該公式,當P2為255 (即橫坐標最大值)吋,f(x)=X,可見色階移動前后的顔色分量值保持不變,這表明當?shù)诙M坐標值選取為255(即橫坐標最大值)時,右向色階移動的距離也為O。圖片保存模塊116,用于保存色階調整后的圖片。請參閱圖10,圖中示意性的示出了根據(jù)本發(fā)明一種實施方式的圖片亮度調節(jié)方法的流程圖,所述方法包括以下步驟在步驟S202中,讀取待處理的圖片。
在步驟S204中,計算圖片的每一像素的亮度值,并統(tǒng)計每ー亮度值對應的像素數(shù)。在一種實施方式中,為了提高繪制色階直方圖的效率,減少需要統(tǒng)計的圖片像素數(shù),在步驟S204之前,按ー定比例縮小圖片,將縮小后的圖片作為繪制色階直方圖的計算對象。在步驟S206中,以亮度值為橫坐標,以每ー亮度值對應的像素數(shù)為縱坐標,繪制色階直方圖。在步驟S208中,在色階直方圖中選取一第一橫坐標值和一第二橫坐標值,其中第一橫坐標值小于所述第二橫坐標值。從色階分布圖的橫坐標的右端向左端掃描,當掃描至一橫坐標值對應的縱坐標的數(shù)值超過一第一預定閥值時,記錄該橫坐標值為第一橫坐標值;從色階分布圖的橫坐標的左端向右端掃描,當掃描至一橫坐標值對應的縱坐標的數(shù)值超過ー第二預定閥值時,記錄該橫坐標值為第二橫坐標值。在另一種實施方式中,接收用戶指定的第一橫坐標值和第二橫坐標值,在這種實施方式中,用戶可憑借對色階直方圖的觀察和經驗來確定第一橫坐標值和第二橫坐標值。在步驟S210中,根據(jù)第一橫坐標值,對圖片的每一像素做左向色階移動。對圖片的每ー像素的每ー RGB顔色分量,依據(jù)公式f (X) = (X-P1)/(l-Pi/255)計算出色階移動后的顔色分量值f(x),在該公式中,X為色階移動前的顔色分量值,Pi為第一橫坐標值。
在步驟S212中,根據(jù)第二橫坐標值,對圖片的每一像素做右向色階移動。對圖片的每ー像素的每ー RGB顔色分量,依據(jù)公式f (X) =x*(p2/255)計算出色階移動后的顔色分量值f(x),在該公式中,X為色階移動前的顔色分量值,P2為第二橫坐標值。在步驟S214中,保存色階調整后的圖片。對本領域的技術人員來說,可以根據(jù)本發(fā)明的發(fā)明方案和發(fā)明構思結合生產的實際需要做出其他相應的改變或調整,而這些改變和調整都應屬于本發(fā)明權利要求的保護范圍。
權利要求
1.一種圖片亮度調節(jié)系統(tǒng),其特征在干所述系統(tǒng)包括 圖片讀取模塊,用于讀取待處理的圖片; 亮度計算模塊,用于計算圖片的每ー像素的亮度值,并統(tǒng)計每ー亮度值對應的像素數(shù); 色階直方圖生成模塊,用于以亮度值為橫坐標,以每一亮度值對應的像素數(shù)為縱坐標,繪制色階直方圖; 基點選取模塊,用于在色階直方圖中選取一第一橫坐標值和一第二橫坐標值,其中第 一橫坐標值小于所述第二橫坐標值; 左向色階移動模塊,用于根據(jù)第一橫坐標值,對圖片的每一像素做左向色階移動; 右向色階移動模塊,用于根據(jù)第二橫坐標值,對圖片的每一像素做右向色階移動 '及 圖片保存模塊,用于保存色階調整后的圖片。
2.如權利要求I所述的圖片亮度調節(jié)系統(tǒng),其特征在于所述系統(tǒng)還包括圖片縮小模塊,用于按一定比例縮小圖片,將縮小后的圖片作為繪制色階直方圖的計算對象。
3.如權利要求I所述的圖片亮度調節(jié)系統(tǒng),其特征在于所述基點選取模塊包括 左基點選取子模塊,用于從色階分布圖的橫坐標的左端向右端掃描,當掃描至一橫坐標值對應的縱坐標的數(shù)值超過一第一預定閥值時,記錄該橫坐標值為第一橫坐標值; 右基點選取子模塊,用于從色階分布圖的橫坐標的右端向左端掃描,當掃描至一橫坐標值對應的縱坐標的數(shù)值超過一第二預定閥值時,記錄該橫坐標值為第二橫坐標值。
4.如權利要求I所述的圖片亮度調節(jié)系統(tǒng),其特征在于所述左向色階移動模塊,對圖片的每一像素的每ー RGB顔色分量,依據(jù)公式f(x) = (X-P1)/(l-Pi/255) 計算出色階移動后的顔色分量值f(x),在該公式中,X為色階移動前的顔色分量值,P1為第一橫坐標值。
5.如權利要求I所述的圖片亮度調節(jié)系統(tǒng),其特征在于所述右向色階移動模塊,對圖片的每一像素的每ー RGB顔色分量,依據(jù)公式f (X) = X* (p2/255) 計算出色階移動后的顔色分量值f(X),在該公式中,X為色階移動前的顔色分量值,P2為第二橫坐標值。
6.ー種圖片亮度調節(jié)方法,其特征在于所述方法包括以下步驟 讀取待處理的圖片; 計算圖片的每一像素的亮度值,并統(tǒng)計每ー亮度值對應的像素數(shù); 以亮度值為橫坐標,以每ー亮度值對應的像素數(shù)為縱坐標,繪制色階直方圖; 在色階直方圖中選取一第一橫坐標值和一第二橫坐標值,其中第一橫坐標值小于所述第二橫坐標值; 根據(jù)第一橫坐標值,對圖片的每一像素做左向色階移動; 根據(jù)第二橫坐標值,對圖片的每一像素做右向色階移動;及 保存色階調整后的圖片。
7.如權利要求6所述的圖片亮度調節(jié)方法,其特征在于所述方法中的計算圖片的每一像素的亮度值的步驟前還包括以下步驟按ー定比例縮小圖片,將縮小后的圖片作為繪制色階直方圖的計算對象。
8.如權利要求6所述的圖片亮度調節(jié)方法,其特征在于所述方法中的在色階直方圖中選取ー第一橫坐標和ー第二橫坐標的步驟具體包括以下步驟 從色階分布圖的橫坐標的右端向左端掃描,當掃描至一橫坐標值對應的縱坐標的數(shù)值超過ー第一預定閥值時,記錄該橫坐標值為第一橫坐標值; 從色階分布圖的橫坐標的左端向右端掃描,當掃描至一橫坐標值對應的縱坐標的數(shù)值超過ー第二預定閥值時,記錄該橫坐標值為第二橫坐標值。
9.如權利要求6所述的圖片亮度調節(jié)方法,其特征在于所述方法中根據(jù)第一橫坐標值,對圖片的每一像素做左向色階移動的步驟具體包括以下步驟 對圖片的每ー像素的每ー RGB顔色分量,依據(jù)公式f(x) = (X-P1)/(l-Pi/255) 計算出色階移動后的顔色分量值f(x),在該公式中,X為色階移動前的顔色分量值,P1為第一橫坐標值。
10.如權利要求6所述的圖片亮度調節(jié)方法,其特征在于所述方法中的根據(jù)第二橫坐標值,對圖片的每一像素做右向色階移動的步驟具體包括以下步驟 對圖片的每ー像素的每ー RGB顔色分量,依據(jù)公式f (X) = X* (p2/255) 計算出色階移動后的顔色分量值f(X),在該公式中,X為色階移動前的顔色分量值,P2為第二橫坐標值。
全文摘要
一種圖片亮度調節(jié)系統(tǒng),包括圖片讀取模塊,用于讀取待處理的圖片;亮度計算模塊,用于計算圖片的每一像素的亮度值,并統(tǒng)計每一亮度值對應的像素數(shù);色階直方圖生成模塊,用于以亮度值為橫坐標,以每一亮度值對應的像素數(shù)為縱坐標,繪制色階直方圖;基點選取模塊,用于在色階直方圖中選取一第一橫坐標值和一第二橫坐標值,其中第一橫坐標值小于所述第二橫坐標值;左向色階移動模塊,用于根據(jù)第一橫坐標值,對圖片的每一像素做左向色階移動;右向色階移動模塊,用于根據(jù)第二橫坐標值,對圖片的每一像素做右向色階移動;及圖片保存模塊,用于保存色階調整后的圖片。本發(fā)明還揭示了一種圖片亮度調節(jié)方法。
文檔編號G06T5/40GK102654915SQ20111005102
公開日2012年9月5日 申請日期2011年3月3日 優(yōu)先權日2011年3月3日
發(fā)明者蔡燈宇 申請人:鴻富錦精密工業(yè)(深圳)有限公司, 鴻海精密工業(yè)股份有限公司