專利名稱:在多位成像深度設(shè)備上進(jìn)行圖像復(fù)制的調(diào)頻掛網(wǎng)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種圖像硬拷貝復(fù)制領(lǐng)域的網(wǎng)點(diǎn)生成方法,具體涉及一種在多位成像深度的設(shè)備上進(jìn)行圖像復(fù)制的掛網(wǎng)方法。
與調(diào)幅掛網(wǎng)相反,調(diào)頻半色調(diào)圖像在其生成的過程中,盡量避免染色點(diǎn)在幾何位置上的聚集。它通過控制單位面積內(nèi)染色點(diǎn)的個(gè)數(shù)來實(shí)現(xiàn)原稿圖像的灰度再現(xiàn)。由于調(diào)頻半色調(diào)圖像內(nèi)的染色點(diǎn)是以非聚集的形式分布的,因此對(duì)不同的原稿灰度級(jí),將對(duì)應(yīng)于不同的染色點(diǎn)之間的平均距離,從數(shù)字圖像處理的角度來看,即是圖像的頻率是變化的,這就是調(diào)頻掛網(wǎng)的名詞的由來。在生成調(diào)頻半色調(diào)圖像的過程中,由于染色點(diǎn)是孤立的分布于圖像上的,所以對(duì)于固定灰度的原稿圖像區(qū)域,染色點(diǎn)的分布必須保證十分均勻,亦即每個(gè)染色點(diǎn)與其近鄰染色點(diǎn)之間的距離必須十分接近前面所述的平均距離,這樣才能避免可能出現(xiàn)的有害紋理。
在傳統(tǒng)的調(diào)頻掛網(wǎng)方法中,誤差擴(kuò)散方法是最常用的方法。文獻(xiàn)“Dithering with blue noise”,(Robert A.Ulichney,Proceddings of The IEEE,V0l.76,No.1,January 1988,pp56-79)公開了一種誤差擴(kuò)散方法,其原理可以用附
圖1來解釋。在誤差擴(kuò)散算法的處理過程中,原稿圖象的象素g(m,n)被逐行順序地處理,處理的過程中,每個(gè)象素用一個(gè)固定的閾值進(jìn)行閾值運(yùn)算(量化器Quantizer),運(yùn)算的結(jié)果被轉(zhuǎn)換為半色調(diào)圖象的相應(yīng)象素b(m,n)。與此同時(shí),將此結(jié)果象素b(m,n)和被求閾值的象素g(m,n)進(jìn)行比較,并將比較求得的差值e(m,n)用一個(gè)擴(kuò)散濾波器(Error filter)擴(kuò)散至當(dāng)前處理象素周圍的未被處理的象素上。在隨后的處理中,被求閾值的象素值是原稿象素g(m,n)和被擴(kuò)散至此象素上的誤差的和。下面,我們介紹一下上述文獻(xiàn)中所公開的誤差擴(kuò)散方法的運(yùn)算過程。算法1誤差擴(kuò)散的基本形式假定待掛網(wǎng)的原稿圖象N的寬高為w、h,本算法將此圖象轉(zhuǎn)化為同樣尺寸的調(diào)頻半色調(diào)二值圖B。
<pre listing-type="program-listing">For(i=0;i<h;i++)For(j=0;j<w;j++){逐行掃描原圖象數(shù)據(jù)取(i,j)處的圖象象素值p=Nij; if(p>127) Bij=255; else Bij=0; 計(jì)算輸入亮度相對(duì)于輸出亮度的誤差Err=Nij-Bij; 將該誤差(Err)分別乘以擴(kuò)散濾波器的系數(shù),然后分別與相應(yīng)位置的原稿<br/>圖象象素相加,并將結(jié)果代替原稿圖象相應(yīng)的象素值;}</pre>在實(shí)際使用中是使用固定的擴(kuò)散參數(shù),例如,常使用的參數(shù)是d1=1d2=2d3=5d4=4d5=8按照上述算法實(shí)現(xiàn)的調(diào)頻網(wǎng)圖象質(zhì)量,通過實(shí)際測(cè)試,得到附圖2,從圖2可以看出在淺調(diào)區(qū)域網(wǎng)點(diǎn)的分布上存在有大量規(guī)則分布的調(diào)頻點(diǎn),使得在某些層次出現(xiàn)網(wǎng)點(diǎn)粗糙,導(dǎo)致漸變過度不好,層次沒有完全拉開,沒有達(dá)到實(shí)用的水平。因此看出,該調(diào)頻算法存在著潛在的不足。
另外,從上述算法不難看出,傳統(tǒng)調(diào)頻網(wǎng)的網(wǎng)點(diǎn)所能再現(xiàn)的層次只有兩個(gè)層次的體現(xiàn),既255(白點(diǎn))、0(黑點(diǎn)),針對(duì)于一位成像深度的設(shè)備上,是可行的,但是在多位成像深度的設(shè)備上,如果仍然按照該算法生成調(diào)頻網(wǎng)點(diǎn),一是不能體現(xiàn)多位成像深度設(shè)備所能表現(xiàn)的更豐富的層次效果,二是由于多位成像深度的設(shè)備成像機(jī)制的改變,最終也會(huì)或多或少地改變一位調(diào)頻網(wǎng)點(diǎn)的分布規(guī)律,從而影響輸出質(zhì)量。
為達(dá)到以上目的,本發(fā)明采用的技術(shù)方案是一種在多位成像深度的設(shè)備上進(jìn)行圖像復(fù)制的調(diào)頻掛網(wǎng)方法,包括以下步驟1)輸入原稿圖象,對(duì)原稿圖象的象素g(m,n)進(jìn)行閾值運(yùn)算,運(yùn)算的結(jié)果被轉(zhuǎn)換為半色調(diào)圖象的相應(yīng)象素b(m,n);進(jìn)行域值運(yùn)算時(shí)的域值不是固定的,而是根據(jù)輸出設(shè)備的特性在圖像層次取值范圍內(nèi)設(shè)定,即采用設(shè)定多個(gè)閾值的方法實(shí)現(xiàn)多位深度的掛網(wǎng)結(jié)果;而且,在進(jìn)行運(yùn)算時(shí),還要對(duì)設(shè)定的域值作隨機(jī)處理,在每次使用閾值的時(shí)候,都加上一個(gè)隨機(jī)數(shù);2)將b(m,n)和被求閾值的象素g(m,n)進(jìn)行比較,并求得兩者差值即誤差e(m,n);3)將誤差e(m,n)用一個(gè)擴(kuò)散濾波器擴(kuò)散至當(dāng)前處理象素周圍的未被處理的象素上,即被求閾值的象素值是原稿象素g(m,n)和被擴(kuò)散至此象素上的誤差的和;將誤差向臨近的像素點(diǎn)擴(kuò)散時(shí),不同位置的點(diǎn)擴(kuò)散的權(quán)重不同,并且不同的誤差值擴(kuò)散權(quán)重的分配方法也不同;4)在對(duì)原稿圖象的象素g(m,n)進(jìn)行處理時(shí)按照逐行變換方向的順序處理,重復(fù)以上步驟,直到原稿圖象的所有象素g(m,n)被處理完,最后形成原稿圖象的半色調(diào)圖像;為了具有更好的效果,閾值的設(shè)定可以是不等分的,在每次使用閾值的時(shí)候所加上的隨機(jī)數(shù)個(gè)數(shù)的范圍可以是[-8 8]。
本發(fā)明的效果在于通過本發(fā)明所述的方法,能夠在支持多位成像深度的設(shè)備上輸出高質(zhì)量的調(diào)頻網(wǎng)圖像,能夠有效改善傳統(tǒng)調(diào)頻網(wǎng)所固有的規(guī)則性網(wǎng)點(diǎn)排列的不足,提高一位調(diào)頻網(wǎng)所不能再現(xiàn)的圖像層次,使得設(shè)備輸出的圖像在顏色和層次質(zhì)量上能夠極大地滿足實(shí)際印刷數(shù)碼打樣的要求。
<pre listing-type="program-listing">For(i=_0;i<h;i++)For(j=0;j<w;j++){取(i,j)處的圖象象素值p=Nij if(p<M1) Bij=0; else if(M1<=p<R1-1) Bij=R1; else if(R1<=p<M2) Bij=R1; else if(M2<=p<R2-1) Bij=R2; else if(R2<=p<M3) Bij=R2; else if(M3<=p<=255) Bij=255; 計(jì)算輸入亮度相對(duì)于輸出亮度的誤差Err=Nij-Bij 將該誤差(Err)分別乘以表1中的擴(kuò)散濾波器的系數(shù),然后分別與相應(yīng)位置<br/>的原稿圖象象素相加,并將結(jié)果代替原稿圖象相應(yīng)的象素值;}</pre>上面的方法可以加以推廣就可以實(shí)現(xiàn)多位成像調(diào)頻網(wǎng)算法,但是從實(shí)踐中我們發(fā)現(xiàn),單純的去將一位調(diào)頻網(wǎng)改進(jìn)成兩位或多位調(diào)頻網(wǎng),雖然滿足了設(shè)備的要求,但由于算法上本身存在的不足,必然對(duì)最終網(wǎng)點(diǎn)質(zhì)量沒有多大的改善,為此我們通過如下的四種改進(jìn)措施,從算法本身上加以改進(jìn),使得調(diào)頻輸出的點(diǎn)子得到質(zhì)的飛躍改進(jìn)措施一域值設(shè)定的不等分性算法2中提到的均分整個(gè)層次區(qū)域的方法,由于成像設(shè)備通常使用不同濃度或者體積的油墨、色劑或者其它呈色材料來體現(xiàn)不同的成像深度,不同成像深度之間的比例可能是不均勻的,因此,因此多位成像的調(diào)頻閾值設(shè)定也可以設(shè)置成不均勻的,既我們?cè)趧澐謱哟螀^(qū)域的時(shí)候,可以根據(jù)輸出設(shè)備的特性,將0到255的全色調(diào)區(qū)域劃分成不等分的多個(gè)區(qū)域(區(qū)域的多少由設(shè)備所能支持的成像位深度所決定)。
改進(jìn)措施二域值抖動(dòng)機(jī)制傳統(tǒng)的誤差擴(kuò)散算法中的域值設(shè)定是由層次區(qū)域的中點(diǎn)來決定的,而且通常是不變的,我們?cè)诖瞬捎昧碎撝惦S機(jī)數(shù)擾動(dòng)的方法,其方法是,在每次使用閾值的時(shí)候,都加上一個(gè)隨機(jī)數(shù),隨機(jī)數(shù)的范圍是[-8 8]。其目的是通過隨機(jī)數(shù)的作用去除在某些灰度層次容易出現(xiàn)的規(guī)則紋路,使得輸出圖像在各個(gè)層次上的網(wǎng)點(diǎn)都均勻和無規(guī)律分布。這一點(diǎn)可以通過下面的算法說明算法3基于域值抖動(dòng)和誤差擴(kuò)散系數(shù)各異性的誤差擴(kuò)散算法為便于說明,這里我們暫且使用一位調(diào)頻的算法,該算法很容易擴(kuò)展到二位或多位誤差擴(kuò)散算法中。假定待掛網(wǎng)的原稿圖象N的寬高為w h,本算法將此圖象轉(zhuǎn)化為同樣尺寸的調(diào)頻半色調(diào)二值圖B。
<pre listing-type="program-listing">For(i=0;i<h;i++)For(j=0;j<w;j++){逐行掃描原圖象數(shù)據(jù)取(i,j)處的圖象象素值p=Nij; if(p>D[Rand(i,j)]) Bij=255; else Bij=0; 計(jì)算輸入亮度相對(duì)于輸出亮度的誤差Err=Nij-Bii; 將該誤差(Err)分別乘以圖3中的擴(kuò)散濾波器的系數(shù),然后分別與相應(yīng)位置<br/>的原稿圖象象素相加,并將結(jié)果代替原稿圖象相應(yīng)的象素值;}</pre>其中的D[Rand(i,j)]是依據(jù)圖象象素值的位置的不同而隨機(jī)的在域值抖動(dòng)表中取得一個(gè)當(dāng)前隨機(jī)的域值。至于域值抖動(dòng)表D的確定方法,可以通過如下的算法實(shí)現(xiàn)算法4域值抖動(dòng)算法首先我們建立一個(gè)[-8,8]的一個(gè)域值表F,該表表項(xiàng)的確定,可以根據(jù)層次區(qū)域中點(diǎn)的前后16個(gè)值做隨機(jī)排列而成。具體如何由表F得到最終的D表,由下面的算法實(shí)現(xiàn)設(shè)定控制點(diǎn)P1,P2,P3,每個(gè)控制點(diǎn)對(duì)應(yīng)的抖動(dòng)調(diào)整參數(shù)d1,d2,d3(具體設(shè)定的控制點(diǎn)數(shù)及相應(yīng)的取值根據(jù)實(shí)際測(cè)試結(jié)果設(shè)定)相應(yīng)的每個(gè)層次的抖動(dòng)調(diào)整參數(shù)為dj<pre listing-type="program-listing">For(i=0;i<256;i++) { if(i<P1) dj=(0--d1)的插值結(jié)果<!-- SIPO <DP n="6"> --><dp n="d6"/> else it(P1<i<P2) dj=(d1-d2)的插值結(jié)果 else if(P2<i<P3) dj=(d2-d3)的插值結(jié)果 }</pre>將得到的dj值代入下面的公式得到相應(yīng)層次下的[-8,8]個(gè)抖動(dòng)域值的重新組合表Dfor(j=0;j<32;j++)Dij=((Fj-層次域中點(diǎn))X dj)+層次域中點(diǎn)。
改進(jìn)措施三誤差擴(kuò)散系數(shù)的各異性算法1和算法2中的誤差擴(kuò)散系數(shù)的設(shè)定是一定的,不隨灰度層次的改變而改變,而我們?cè)谶@里提出擴(kuò)散系數(shù)的各異性就是指輸入圖像像素值與閾值之間的差,作為誤差,要向臨近的像素點(diǎn)擴(kuò)散,臨近的像素點(diǎn)中,不同位置的點(diǎn)擴(kuò)散的權(quán)重不同。并且不同的誤差值,擴(kuò)散權(quán)重的分配方法不同。由于各異性的存在,考慮到實(shí)際掛網(wǎng)的效率,因此我們也就不采用傳統(tǒng)的12個(gè)方向上的擴(kuò)散,而采用三個(gè)方向上的擴(kuò)散,具體擴(kuò)散方向參見附圖中的圖2。
改進(jìn)措施四圖像像素奇偶行掃描機(jī)制所謂的圖像像素奇偶行掃描機(jī)制是指在輸入圖像的處理順序上采用了正反向交錯(cuò)進(jìn)行的方法,例如,第一行數(shù)據(jù)從左至右逐個(gè)像素點(diǎn)進(jìn)行處理,第二行數(shù)據(jù)從右向左進(jìn)行處理,第三行又從左至右,依此類推。其作用是抵消由于水平順序掃描圖象數(shù)據(jù)引起的誤差擴(kuò)散上的規(guī)則性變化,進(jìn)一步消除一些灰度層次容易出現(xiàn)的規(guī)則紋路。具體實(shí)現(xiàn)算法如下算法5基于圖象奇偶行掃描機(jī)制的誤差擴(kuò)散算法假定待掛網(wǎng)的原稿圖象N的寬高為w h,本算法將此圖象轉(zhuǎn)化為同樣尺寸的調(diào)頻半色調(diào)二值圖B。
<pre listing-type="program-listing">For(i=0;i<h;i++){ if(i%2==0) {//偶數(shù)行數(shù)據(jù)處理 For(j=0;j<w;j++) {遞增掃描每行原圖象數(shù)據(jù) 取(i,j)處的圖象象素值p=Nij; if(p>127)<!-- SIPO <DP n="7"> --><dp n="d7"/> Bij=255; else Bij=0; 計(jì)算輸入亮度相對(duì)于輸出亮度的誤差Err=Nij-Bij; 將該誤差(Err)分別乘以圖3中的擴(kuò)散濾波器的系數(shù),然后分別與相 應(yīng)位置的原稿圖象象素相加,并將結(jié)果代替原稿圖象相應(yīng)的象素 值; } } else {奇數(shù)行數(shù)據(jù)處理 For(j=w-1;j=0;j--) {遞減掃描每行原圖象數(shù)據(jù) 取(i,j)處的圖象象素值p=Nij; if(p>127) Bij=255; else Bij=0; 計(jì)算輸入亮度相對(duì)于輸出亮度的誤差Err=Nij-Bij; 將該誤差(Err)分別乘以圖3中的擴(kuò)散濾波器的系數(shù),然后分別與相 應(yīng)位置的原稿圖象象素相加,并將結(jié)果代替原稿圖象相應(yīng)的象素 值; } }}</pre>以上都是針對(duì)現(xiàn)有技術(shù)所存在的不足而改進(jìn)和完善得出的新的調(diào)頻網(wǎng)算法。通過上述改進(jìn)和優(yōu)化算法,我們得到了符合預(yù)期目標(biāo)的效果,下面的圖例是綜合了我們所有的改進(jìn)算法后所做的二位深度的調(diào)頻網(wǎng)輸出效果,我們采用了線性漸變圖掛網(wǎng)的圖例來說明,參見附圖4。從附圖4中可以看出兩位深度的調(diào)頻網(wǎng)經(jīng)過我們實(shí)現(xiàn)的優(yōu)化算法產(chǎn)生了完美的調(diào)頻網(wǎng)點(diǎn),這一點(diǎn)可以與附圖2進(jìn)行對(duì)比。
如附圖5-附圖7所示,這里我們作一例子,假定只作兩位成像深度的調(diào)頻網(wǎng),參數(shù)設(shè)置如下將0到255級(jí)的層次區(qū)域均分為三個(gè)區(qū)域R1=85,R2=171,則層次區(qū)域劃分如下0-85(Rangel),85-171(Range2),171-255(Range3),取各區(qū)域中點(diǎn)作為域值抖動(dòng)基點(diǎn),則抖動(dòng)前各層次區(qū)域抖動(dòng)表如下假定抖動(dòng)表大小為[-8,8]F1={45,39,43,38,45,46,41,40,39,44,43,44,40,38,41,46},F(xiàn)2={126,125,130,129,124,132,127,125,131,130,127,126,129,132,124,131},F(xiàn)3={215,212,210,211,214,209,216,212,217,210,216,214,215,217,211,209};在域值抖動(dòng)上,我們?cè)O(shè)定四個(gè)控制點(diǎn),這里我們?nèi)?-85這個(gè)層次區(qū)域,由于均分特性其他區(qū)域可作對(duì)應(yīng)即可P1=24,P2=48,P3=54.P4=64,相應(yīng)的抖動(dòng)調(diào)整參數(shù)設(shè)置為區(qū)間Range1抖動(dòng)系數(shù)(d)Range2抖動(dòng)系數(shù)(d)Range3抖動(dòng)系數(shù)(d)(0,24) 0.4381.00.438(24,48)3.8 3.83.8(48,54)0.4381.00.438(54,64)3.8 3.83.8通過上面的參數(shù)設(shè)定后我們作了不同層次區(qū)域內(nèi)的傳統(tǒng)一位調(diào)頻網(wǎng)和改進(jìn)后的二位調(diào)頻網(wǎng)對(duì)比的參考圖,可以參見附圖5,圖6,圖7。
權(quán)利要求
1.一種在多位成像深度的設(shè)備上進(jìn)行圖像復(fù)制的調(diào)頻掛網(wǎng)方法,包括以下步驟1)輸入原稿圖象,對(duì)原稿圖象的象素g(m,n)進(jìn)行閾值運(yùn)算,運(yùn)算的結(jié)果被轉(zhuǎn)換為半色調(diào)圖象的相應(yīng)象素b(m,n);2)將b(m,n)和被求閾值的象素g(m,n)進(jìn)行比較,并求得兩者差值即誤差e(m,n);3)將誤差e(m,n)用一個(gè)擴(kuò)散濾波器擴(kuò)散至當(dāng)前處理象素周圍的未被處理的象素上,即被求閾值的象素值是原稿象素g(m,n)和被擴(kuò)散至此象素上的誤差的和;4)重復(fù)以上步驟,直到原稿圖象的所有象素g(m,n)被處理完,最后形成原稿圖象的半色調(diào)圖像;其特征在于(1)域值不是固定的,而是根據(jù)輸出設(shè)備的特性在圖像層次取值范圍內(nèi)設(shè)定,即采用設(shè)定多個(gè)閾值的方法實(shí)現(xiàn)多位深度的掛網(wǎng)結(jié)果;(2)對(duì)設(shè)定的域值作隨機(jī)處理,在每次使用閾值的時(shí)候,都加上一個(gè)隨機(jī)數(shù);(3)將誤差向臨近的像素點(diǎn)擴(kuò)散時(shí),不同位置的點(diǎn)擴(kuò)散的權(quán)重不同,并且不同的誤差值擴(kuò)散權(quán)重的分配方法也不同;(4)在對(duì)原稿圖象的象素g(m,n)進(jìn)行處理時(shí)按照逐行變換方向的順序處理,即采用了正反向交錯(cuò)進(jìn)行的處理順序。
2.如權(quán)利要求1所述的一種在多位成像深度的設(shè)備上進(jìn)行圖像復(fù)制的半色調(diào)處理方法,其特征是閾值的設(shè)定是不等分的。
3.如權(quán)利要求1所述的一種在多位成像深度的設(shè)備上進(jìn)行圖像復(fù)制的半色調(diào)處理方法,其特征是在每次使用閾值的時(shí)候所加上的隨機(jī)數(shù)個(gè)數(shù)的范圍是[-8 8]。
全文摘要
本發(fā)明涉及一種在多位成像深度設(shè)備上進(jìn)行圖像復(fù)制的調(diào)頻掛網(wǎng)方法?,F(xiàn)有的技術(shù)方法是將輸入的圖像數(shù)據(jù)轉(zhuǎn)換成一位設(shè)備輸出的圖像數(shù)據(jù)后,人為地將一位數(shù)據(jù)強(qiáng)制轉(zhuǎn)換成相應(yīng)位深度設(shè)備所要求的圖像數(shù)據(jù),例如常用的二位深度的點(diǎn)陣數(shù)據(jù),然后輸出。本發(fā)明是在傳統(tǒng)的誤差擴(kuò)散調(diào)頻掛網(wǎng)技術(shù)基礎(chǔ)上利用多閾值的誤差擴(kuò)散技術(shù),對(duì)不同圖像層次采用不同的擴(kuò)散參數(shù),結(jié)合隨機(jī)擾動(dòng)直接輸出多位深度設(shè)備所要求的圖像輸出數(shù)據(jù)。采用本發(fā)明所述的方法,大大改善了成像質(zhì)量,使得圖像層次過渡更加平滑,各個(gè)層次網(wǎng)點(diǎn)分布更加均勻,高光部分更加細(xì)膩。
文檔編號(hào)G06K9/36GK1426018SQ02159180
公開日2003年6月25日 申請(qǐng)日期2002年12月30日 優(yōu)先權(quán)日2002年12月30日
發(fā)明者楊斌, 李海峰, 周秉鋒 申請(qǐng)人:北京北大方正電子有限公司, 北京大學(xué)計(jì)算機(jī)科學(xué)技術(shù)研究所