專(zhuān)利名稱(chēng):可均勻伸縮數(shù)字圖象尺寸的方法及其裝置的制作方法
本申請(qǐng)是1995年7月31日提交的申請(qǐng)?zhí)枮?5109686.9,發(fā)明名稱(chēng)為“可均勻伸縮數(shù)字圖象尺寸的方法及其裝置”的專(zhuān)利申請(qǐng)的分案申請(qǐng)。
本發(fā)明涉及一種圖象處理的方法及其裝置,特別是涉及一種可均勻伸縮數(shù)字圖象尺寸的方法及其裝置。
在多媒體電腦的應(yīng)用中,具有整合數(shù)字圖象的能力是非常重要的,將一數(shù)字圖象(digital image)與另一數(shù)字圖象整合之前,必須將該了圖象先處理,而處理的方法通常是藉由增加該數(shù)字圖象尺寸(以下稱(chēng)為伸展(scaling up))、減少該數(shù)字圖象尺寸(以下稱(chēng)為壓縮(scaling down))、剪裁該數(shù)字圖象的一被選擇部分、平移該數(shù)字圖象的一被選擇部份至另一區(qū)域等來(lái)完成。
上述數(shù)字圖象的伸展與壓縮是藉由特別規(guī)劃的電腦來(lái)完成,該數(shù)字圖象包括多數(shù)條掃描線,每一條掃描線更包括多數(shù)個(gè)象素?cái)?shù)據(jù)(pixel data),該數(shù)字圖象的伸展是藉由在每?jī)蓷l掃描線之間執(zhí)行線性內(nèi)插(linear interpolation),而得到介于兩掃描線間的至少一條插補(bǔ)掃描線,及藉由在每?jī)蓚€(gè)掃描象素之間執(zhí)行線性內(nèi)插,而得到介于兩掃描象素間的至少一個(gè)插補(bǔ)象素?cái)?shù)據(jù)。而該數(shù)字圖象的壓縮則是藉由刪除數(shù)字圖象的部份掃描線及藉刪除每一個(gè)被保留的掃描線的部份象素?cái)?shù)據(jù)來(lái)達(dá)成。
對(duì)于數(shù)字圖象的伸展來(lái)說(shuō),藉電腦處理原始圖象數(shù)據(jù)的線性內(nèi)插是相當(dāng)慢的,因此,如歐洲專(zhuān)利第0079542A2號(hào)及英國(guó)專(zhuān)利第GB2226471A號(hào)所揭示的不同處理功能的硬體裝置,已經(jīng)被發(fā)展至允許對(duì)數(shù)字圖象作即時(shí)伸展處理。
這些不同處理功能的硬體裝置的一個(gè)缺點(diǎn)在于它們只能有限度地伸展數(shù)字圖象,當(dāng)伸展一個(gè)具有N條掃描線的數(shù)字圖象時(shí),被插入的掃描線的總數(shù)必須是N-1的整數(shù)倍,以允許插入在該原始掃描線的每?jī)蓷l掃描線間的插補(bǔ)掃描線具有相同數(shù)目,使伸展后的圖象仍能維持均勻,相同地,當(dāng)伸展一個(gè)具有N′個(gè)象素?cái)?shù)據(jù)也是一樣。因此,如果該插補(bǔ)掃描線(或每一掃描線的插補(bǔ)象素?cái)?shù)據(jù))的總數(shù)不是N-1(或N′-1)的整數(shù)倍時(shí),以往的圖象伸展裝置就不能均勻地伸縮一個(gè)具有N條掃描線的數(shù)字圖象(或每一掃描線的N′個(gè)象素?cái)?shù)據(jù))。而且,以往的圖象伸展裝置只能在水平方向及垂直方向進(jìn)行圖象伸展,而不能對(duì)任一個(gè)水平方向或垂直方向壓縮數(shù)字圖象。
因此,本發(fā)明的一個(gè)主要目的在提供一種可均勻伸縮數(shù)字圖象尺寸的方法及其裝置,當(dāng)插補(bǔ)掃描線的總數(shù)或每一條掃描線的插補(bǔ)象素?cái)?shù)據(jù)的總數(shù)不是原始掃描線總數(shù)減1的整數(shù)倍或每一條掃描線的象素?cái)?shù)據(jù)的原始總數(shù)減1的整數(shù)倍時(shí),仍能在水平方向或垂直方向的至少一個(gè)方向上均勻地伸展一個(gè)數(shù)字圖象。
本發(fā)明的另一個(gè)主要目的在提供一種可以在水平方向或垂直方向任一方向上均勻地壓縮數(shù)字圖象尺寸的方法及其裝置。
根據(jù)本發(fā)明的一主要特征,在于提供一種處理原始數(shù)字圖象而得到均勻伸縮的目的數(shù)字圖象的方法,該原始數(shù)字圖象具有N個(gè)連續(xù)的原始圖象數(shù)據(jù),該目的數(shù)字圖象具有M個(gè)連續(xù)的目的圖象數(shù)據(jù),且M大于N,上述均勻伸縮數(shù)字圖象尺寸的方法包括下列步驟
提供一個(gè)線性內(nèi)插器;以及控制該線性內(nèi)插器,以便在(M-N)除以(N-1)得到一個(gè)余數(shù)S且n為滿足條件(n+1)×(S)≥(s)×(N)的最小值時(shí),執(zhí)行第n個(gè)及第n+1個(gè)原始圖象數(shù)據(jù)的線性內(nèi)插,產(chǎn)生一個(gè)插在其間的殘余插補(bǔ)圖象數(shù)據(jù),其中s的范圍為1至S。
本發(fā)明的另一主要特征在于該均勻伸縮數(shù)字圖象尺寸的方法包括下列步驟(I-1)將該原始圖象的N個(gè)原始圖象數(shù)據(jù)存儲(chǔ)在一個(gè)存儲(chǔ)器單元中;(I-2)提供一個(gè)地址產(chǎn)生器,該地址產(chǎn)生器控制該存儲(chǔ)器單元來(lái)輸出該原始圖象的第一原始圖象數(shù)據(jù);(I-3)將該數(shù)值N除以數(shù)值M所得到的余數(shù)U儲(chǔ)存在一個(gè)數(shù)據(jù)寄存器中;(I-4)將該余數(shù)U與儲(chǔ)存在該數(shù)據(jù)寄存器中的數(shù)值相加,而得到一個(gè)和數(shù);(I-5)比較上述和數(shù)及數(shù)值M;(I-6)啟動(dòng)該地址產(chǎn)生器去控制該存儲(chǔ)器單元輸出另一原始圖象數(shù)據(jù),當(dāng)該和數(shù)小于該數(shù)值M時(shí),該另一原始圖象數(shù)據(jù)是與前一圖象數(shù)據(jù)相差V個(gè)圖象數(shù)據(jù),其中V等于M除以N的商數(shù),而當(dāng)該和數(shù)大于等于該數(shù)值M時(shí),該另一原始圖象數(shù)據(jù)則與前一圖象數(shù)據(jù)相差V+1個(gè)圖象數(shù)據(jù);(I-7)當(dāng)該和數(shù)至少等于該數(shù)值M時(shí),由該和數(shù)減去M,并將得到的差值儲(chǔ)存在該數(shù)據(jù)寄存器中,而當(dāng)該和數(shù)小于該數(shù)值M時(shí),就將該和數(shù)儲(chǔ)存在該數(shù)據(jù)寄存器中;(I-8)重復(fù)上述步驟(I-4)至步驟(I-7),直到該存儲(chǔ)器單元完成M個(gè)原始圖象數(shù)據(jù)輸出為止。
本發(fā)明的再一特征在于提供一種用來(lái)處理一原始數(shù)字圖象得到一均勻伸縮的目的數(shù)字圖象的裝置,該原始數(shù)字圖象具有N個(gè)連續(xù)的原始圖象數(shù)據(jù),該目的數(shù)字圖象具有M個(gè)連續(xù)的目的圖象數(shù)據(jù),且M大于N,上述均勻伸縮數(shù)字圖象尺寸裝置包括一個(gè)線性內(nèi)插器及一個(gè)控制裝置,該控制裝置與該線性內(nèi)插器成電氣連接,以控制該線性內(nèi)插器,使其在(M-N)除以(N-1)得到一個(gè)余數(shù)S且n為滿足條件(n+1)×(S)≥(s)×(N)的最小值時(shí),執(zhí)行第n個(gè)及第n+1個(gè)原始圖象數(shù)據(jù)的線性內(nèi)插,產(chǎn)生一個(gè)插在其間的殘余插補(bǔ)圖象數(shù)據(jù),其中s的范圍為1至S。
本發(fā)明的另一主要特征在于提供一種用來(lái)處理一原始數(shù)字圖象得到一均勻伸縮的目的數(shù)字圖象的裝置,其中原始數(shù)字圖象具有N個(gè)連續(xù)的原始圖象數(shù)據(jù),該目的數(shù)字圖象具有M個(gè)連續(xù)的目的圖象數(shù)據(jù),且M小于N,上述均勻伸縮數(shù)字圖象尺寸的裝置更包括一個(gè)存儲(chǔ)器單元,用來(lái)儲(chǔ)存上述原始圖象的N個(gè)原始圖象數(shù)據(jù);一個(gè)地址產(chǎn)生器,連接于該存儲(chǔ)器單元,用來(lái)控制該存儲(chǔ)器單元輸出該原始圖象的第一原始圖象數(shù)據(jù);一個(gè)余數(shù)產(chǎn)生裝置,產(chǎn)生一個(gè)數(shù)值U,該數(shù)值U為該數(shù)值N除以該數(shù)值M得到的余數(shù);
一個(gè)數(shù)據(jù)寄存器;一個(gè)加法器裝置,連接于該余數(shù)產(chǎn)生裝置及該數(shù)據(jù)寄存器,將該余數(shù)U與儲(chǔ)存在該數(shù)據(jù)寄存器中的數(shù)值相加,而得到一個(gè)和數(shù);以及一個(gè)計(jì)算裝置,與該加法器裝置、該地址產(chǎn)生器及該數(shù)據(jù)寄存器連接,用來(lái)比較該和數(shù)及該數(shù)值M,并啟動(dòng)該地址產(chǎn)生器去控制該存儲(chǔ)器單元輸出該原始圖象數(shù)據(jù)的另一原始圖象數(shù)據(jù),當(dāng)和數(shù)小于該數(shù)值M時(shí),該另一原始圖象數(shù)據(jù)與前一圖象數(shù)據(jù)相差V個(gè)圖象數(shù)據(jù),其中V等于N除以M的商數(shù),而當(dāng)該和數(shù)大于等于該目的圖象數(shù)據(jù)量M時(shí),該另一原始圖象數(shù)據(jù)則與前一圖象數(shù)據(jù)相差V+1個(gè)圖象數(shù)據(jù)。
該計(jì)算裝置在當(dāng)和數(shù)大于等于該數(shù)值M時(shí),將該和數(shù)與數(shù)值M的差值儲(chǔ)存在該數(shù)據(jù)寄存器中,而當(dāng)該和數(shù)小于該數(shù)值M時(shí),則將該和數(shù)儲(chǔ)存在該數(shù)據(jù)寄存器中。
下面結(jié)合附圖及實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明
圖1是本發(fā)明較佳實(shí)施例的伸縮裝置的電路方塊圖。
圖2是本發(fā)明較佳實(shí)施例的雙線性加法器的電路方塊圖。
圖3是本發(fā)明較佳實(shí)施例的伸縮控制器的電路方塊圖。
圖4是本發(fā)明較佳實(shí)施例的伸縮控制器的殘余分布器的電路方塊圖。
圖5是本發(fā)明較佳實(shí)施例的伸縮控制器的α串列產(chǎn)生器的電路方塊圖。
圖6是本發(fā)明較佳實(shí)施例的伸縮控制器的地址產(chǎn)生器的電路方塊圖。
圖7是當(dāng)N=5且ΔN=2時(shí),本發(fā)明較佳實(shí)施例作伸展處理的時(shí)序圖。
圖8是當(dāng)N=5且ΔN=6時(shí),本發(fā)明較佳實(shí)施例作伸展處理的時(shí)序圖。
圖9是當(dāng)N=5且ΔN=2時(shí),本發(fā)明較佳實(shí)施例作壓縮處理的時(shí)序圖。
如圖1所示,本發(fā)明的均勻伸縮數(shù)字圖象尺寸的裝置包括一個(gè)垂直伸縮單元及一個(gè)水平伸縮單元。該垂直伸縮單元可在垂直方向伸展或壓縮數(shù)字圖象數(shù)據(jù),包括一個(gè)線存儲(chǔ)器3(linememory)、一個(gè)線緩沖器4(line buffer)、一個(gè)雙線性加法器5(bilinear adder)及一個(gè)垂直伸縮控制器6(vertical scalingcontroller)。該水平伸縮單元可在水平方向伸展或壓縮數(shù)字圖象數(shù)據(jù),包括一個(gè)點(diǎn)寄存器7(dot register)、一個(gè)點(diǎn)緩沖器8(dotbuffer)、一個(gè)雙線性加法器9(bilinear adder)及一個(gè)水平伸縮控制器10(horizontal scaling controller)。
使用時(shí),經(jīng)由本發(fā)明的裝置所處理的一數(shù)字圖象最初是被儲(chǔ)存在一個(gè)幀存儲(chǔ)器2(frame memory)中,而該數(shù)字圖象可以來(lái)自一圖象解碼器或是來(lái)自一圖象捕捉系統(tǒng)等數(shù)字圖象數(shù)據(jù)源1。該垂直伸縮控制器6控制該幀存儲(chǔ)器2,以提供該數(shù)字圖象的一被選擇掃描線至該線存儲(chǔ)器3。該垂直伸縮控制器6進(jìn)一步地控制該線緩沖器4,以儲(chǔ)存來(lái)自該線存儲(chǔ)器3中的前一掃描線。該雙線性加法器5接收來(lái)自該線存儲(chǔ)器3及該線緩沖器4的掃描線數(shù)據(jù),并根據(jù)來(lái)自該垂直伸縮控制器6的一對(duì)加權(quán)系數(shù)α、1-α執(zhí)行雙線性內(nèi)插。
如圖2所示,是該雙線性加法器5的電路方塊圖,來(lái)自該線緩沖器4且與儲(chǔ)存在該幀存儲(chǔ)器2的數(shù)字圖象的第n條掃描線所對(duì)應(yīng)的掃描線數(shù)據(jù)經(jīng)一個(gè)寄存器501及一個(gè)乘法器502被乘以該系數(shù)1-α,而來(lái)自該線存儲(chǔ)器3且與儲(chǔ)存在該幀存儲(chǔ)器2的數(shù)字圖象的第n+1條掃描線對(duì)應(yīng)的掃描線數(shù)據(jù)經(jīng)另一個(gè)寄存器503及另一個(gè)乘法器504被乘以系數(shù)α。當(dāng)該系數(shù)α為分?jǐn)?shù)時(shí)(也就是α不等于1也不等于0),將以上得到的乘積經(jīng)一個(gè)加法器505相加,則得到一條插補(bǔ)掃描線。該雙線性加法器5的操作將在下文中詳細(xì)敘述。
如圖3所示,該垂直伸縮控制器6包括一個(gè)可編程的寄存器組30(programmable register set)、一個(gè)第一計(jì)算電路31(computing circuit)、一個(gè)第二計(jì)算電路32、一個(gè)第三計(jì)算電路33、一個(gè)選擇器34(two-input selector)、一個(gè)殘余分布器35(residue distributor)、一個(gè)α串列產(chǎn)生器36(alpha seriesgenerator)及一個(gè)地址產(chǎn)生器37(address generator)。
該可編程的寄存器組30包括有一個(gè)第一寄存器301、一個(gè)第二寄存器302及一個(gè)第三寄存器303,該第一寄存器301可儲(chǔ)存該框存儲(chǔ)器2中的數(shù)字圖象的原始掃描線數(shù)據(jù)量N,該第二寄存器302儲(chǔ)存被插入或被刪除的掃描線量ΔN,該第三寄存器303儲(chǔ)存一個(gè)INC/DEC旗標(biāo)38,前述INC/DEC旗標(biāo)38用來(lái)指示在垂直方向時(shí),該數(shù)字圖象數(shù)據(jù)的伸展或者壓縮被執(zhí)行。該第一計(jì)算電路31、第二計(jì)算電路32及第三計(jì)算電路33分別讀取儲(chǔ)存在該第一寄存器301、第二寄存器302及第三寄存器303的內(nèi)容,而該第一計(jì)算電路31可輸出ΔN除以N-1所得到的商數(shù)T,該第二計(jì)算電路32可輸出ΔN除以N-1所得到的余數(shù)S。因此,當(dāng)該數(shù)字圖象在做伸展處理時(shí),該商數(shù)T相當(dāng)于被插入該數(shù)字圖象的每?jī)蓷l相鄰掃描線間的插補(bǔ)掃描線的最小數(shù),該余數(shù)S相當(dāng)于均勻分布在該數(shù)字圖象的原始掃描線間的殘余插補(bǔ)掃描線的總數(shù)。該第三計(jì)算電路33可輸出N除以N-ΔN的余數(shù)U,當(dāng)該數(shù)字圖象被壓縮時(shí),該余數(shù)U相當(dāng)于被刪除的殘余掃描線的總數(shù)。
該選擇器34包括接收來(lái)自該第三計(jì)算電路33的余數(shù)U的一個(gè)第一輸入端及接收來(lái)自該第二計(jì)算電路的余數(shù)S的一個(gè)第二輸入端,該選擇器34更包括一個(gè)控制輸入端,該控制輸入端接收來(lái)自該第三寄存器303的INC/DEC旗標(biāo)38,該選擇器34的輸出端42與該殘余分布器35連接,該殘余分布器35接收來(lái)自該第一計(jì)算電路31的商數(shù)T,且包括接收來(lái)自該第三寄存器303的INC/DEC旗標(biāo)38的一個(gè)控制輸入端及與該α串列產(chǎn)生器36及該地址產(chǎn)生器37相連接的控制輸出端39。該殘余分布器35決定在該數(shù)字圖象做伸展處理期間、何時(shí)執(zhí)行殘余內(nèi)插步驟及當(dāng)數(shù)字圖象做壓縮處理期間,何時(shí)刪除一殘余掃描線。該α串列產(chǎn)生器36接收來(lái)自該第一計(jì)算電路31的商數(shù)T及來(lái)自該第三寄存器303的INC/DEC旗標(biāo)38,并且產(chǎn)生該雙線性加法器5的系數(shù)α、1-α及該線緩沖器4(如圖1)的一個(gè)儲(chǔ)存指令信號(hào)。該地址產(chǎn)生器37同樣地也接收來(lái)自該第三寄存器303的INC/DEC旗標(biāo)38并且提供線地址數(shù)據(jù)給該框存儲(chǔ)器2。
如圖4所示,該殘余分布器35包括一個(gè)計(jì)算電路40(computing circuit)、一個(gè)雙輸入的選擇器41(two-inputselector)、一個(gè)中間數(shù)據(jù)寄存器56(medial dataregister)、一個(gè)雙輸入的加法器43(two-input adder)、一個(gè)計(jì)算電路44、一個(gè)雙輸入的選擇器45、一個(gè)時(shí)鐘調(diào)變電路46(clock modifying circuit)及一個(gè)選擇器47。
該計(jì)算電路40可輸出N與ΔN的差值,該選擇器41具有接收該計(jì)算電路40輸出的一個(gè)第一輸入端、接收來(lái)自第一寄存器301的數(shù)值N的一個(gè)第二輸入端以及接收來(lái)自該第三寄存器303的INC/DEC旗標(biāo)38的控制輸入端。該中間數(shù)據(jù)寄存器56接收該選擇器34的輸出42(如圖3),且具有連接至該雙輸入加法器43一輸入端的一個(gè)輸出端。該加法器43的另一個(gè)輸入端則接收該選擇器34的輸出端42,該加法器43的輸出端與該選擇器41的輸出端為一計(jì)算電路44的輸入端,該計(jì)算電路44將該加法器43的輸出扣除該選擇器41的輸出,當(dāng)該加法器43的輸出大于或等于該選擇器41的輸出時(shí),該計(jì)算電路44在它的一個(gè)控制輸出端39產(chǎn)生一個(gè)致能信號(hào)。該雙輸入選擇器45包括接收該加法器43的一個(gè)第一輸入端、接收來(lái)自該計(jì)算電路44的該加法器43與該選擇器41的輸出差值的一個(gè)第二輸入端與該計(jì)算電路44的控制輸出端39連接的一個(gè)控制輸入端,以及與該中間數(shù)據(jù)寄存器56連接的一個(gè)輸出端。
該時(shí)鐘調(diào)變電路46接收該原始輸入線時(shí)鐘(original inputline clock),且依據(jù)該控制輸出端39的信號(hào)及來(lái)自該第一計(jì)算電路31的商數(shù)T來(lái)調(diào)變?cè)撛驾斎刖€時(shí)鐘。當(dāng)該控制輸出端39在高邏輯位準(zhǔn)狀態(tài)時(shí),該時(shí)鐘調(diào)變電路46輸出一個(gè)除以T+2時(shí)鐘(divide-by-(T+2)clock),且該除以T+2時(shí)鐘具有該原始輸入線時(shí)鐘的T+2倍的時(shí)間延遲,而當(dāng)該控制輸出端39在低邏輯位準(zhǔn)狀態(tài)時(shí),該時(shí)鐘調(diào)變電路46輸出一個(gè)除T+1時(shí)鐘(該除以T+1時(shí)鐘具有該原始輸入線時(shí)鐘的T+1倍的時(shí)間延遲)。該時(shí)鐘調(diào)變電路46的輸出端及該原始輸入線時(shí)鐘與該選擇器47的輸入端連接,而來(lái)自該第三寄存器303的INC/DEC旗標(biāo)38則用來(lái)作為該選擇器47的控制輸入。該中間數(shù)據(jù)寄存器56包括一個(gè)負(fù)載端LD(load pin),該負(fù)載端LD接收來(lái)自該選擇器47輸出的時(shí)鐘信號(hào)mClock1。
如圖5所示,該α串列產(chǎn)生器36包括一個(gè)系數(shù)產(chǎn)生器363(coefficient generator)、一個(gè)選擇器364(selector)及一個(gè)減法器電路365(subtracting circuit)。
該系數(shù)產(chǎn)生器363與該計(jì)算電路44的控制輸出端39連接且接收該原始輸入線時(shí)鐘及來(lái)自該第一計(jì)算電路31的商數(shù)T。當(dāng)該控制輸出端39在高邏輯位準(zhǔn)狀態(tài)時(shí),該系數(shù)產(chǎn)生器363在連續(xù)的(T+2)個(gè)原始輸入線時(shí)鐘周期中分別地產(chǎn)生連續(xù)的α系數(shù)1、1/(T+2)、2/(T+2)、…、(T+1)/(T+2);當(dāng)該控制輸出端39在低邏輯位準(zhǔn)狀態(tài)時(shí),該系數(shù)產(chǎn)生器363在連續(xù)的(T+1)個(gè)原始輸入線時(shí)鐘周期中分別地產(chǎn)生連續(xù)的α系數(shù)1、1/(T+1)、2/(T+1)、…、T/(T+1)。該選擇器364包括被固定為1的一個(gè)第一輸入端、接收該系數(shù)產(chǎn)生器363的輸出的一個(gè)第二輸入端及接收該INC/DEC旗標(biāo)38的一個(gè)控制輸入端,該選擇器363的輸出為系數(shù)α且充當(dāng)作該減法器電路365的一個(gè)輸入,該減法器電路365的另一個(gè)輸入端被固定為1。該減法器電路365的一個(gè)輸出端為輸出系數(shù)1-α,另一個(gè)輸出端則輸出該線緩沖器4(如圖1)的儲(chǔ)存指令信號(hào)。當(dāng)該減法器電路365系數(shù)1-α等于0時(shí)(α=1),該減法器電路365產(chǎn)生該儲(chǔ)存指令信號(hào)。
如圖6所示,該地址產(chǎn)生器37包括一個(gè)計(jì)算電路371、一個(gè)加法器372、一個(gè)選擇器373、一個(gè)加法器374、一個(gè)地址寄存器375、一個(gè)鎖存電路376(latch circuit)、一個(gè)時(shí)鐘調(diào)變電路377及一個(gè)選擇器378。
該計(jì)算電路371可輸出N除以N-ΔN所得到的商數(shù)V,該商數(shù)V相當(dāng)于當(dāng)該數(shù)字圖象數(shù)據(jù)被壓縮時(shí),在該框存儲(chǔ)器2的數(shù)字圖象的兩個(gè)被選擇掃描線的差數(shù)(offest number)),該商數(shù)V及該控制輸出39作為該加法器372的輸入端,而該加法器372的輸出端則作為該選擇器373的一個(gè)輸入端,該選擇器373的另一個(gè)輸入端則被固定為1,該INC/DEC旗標(biāo)38作為該選擇器373的一個(gè)控制輸入端。該選擇器373所產(chǎn)生的一個(gè)差數(shù)(offestnumber)則被遞送至該加法器374。該加法器374的輸出端連接至該地址寄存器375,該地址寄存器375的輸出端再被連接至該加法器374,該地址寄存器375有一起始輸入端(START),用來(lái)設(shè)定該幀存儲(chǔ)器2中第一條掃描線的地址,而該地址寄存器375具有一負(fù)載輸入端LD,用以控制下一地址的更新。
該鎖存電路376根據(jù)該原始輸入線時(shí)鐘對(duì)該控制輸出端39作取樣及保持,該時(shí)鐘調(diào)變電路377接收該原始輸入線時(shí)鐘并根據(jù)該鎖存電路376的輸出與來(lái)自該第一計(jì)算電路31的商數(shù)T來(lái)調(diào)變?cè)撛驾斎刖€時(shí)鐘。當(dāng)該鎖存電路376的輸出在高位準(zhǔn)邏輯狀態(tài)時(shí),該時(shí)鐘調(diào)變電路377輸出一個(gè)除以T+2時(shí)鐘(divide-by-(T+2)clock),該除以T+2時(shí)鐘具有該原始輸入線時(shí)鐘的T+2倍的時(shí)間延遲;當(dāng)該鎖存電路376的輸出在低邏輯位準(zhǔn)狀態(tài)時(shí),該時(shí)鐘調(diào)變電路377輸出一個(gè)除以T+1時(shí)鐘(divide-by-(T+1)clock),該除以T+1時(shí)鐘具有該原始輸入線時(shí)鐘的T+1倍的時(shí)間延遲。該選擇器378接收該原始輸入線時(shí)鐘及該時(shí)鐘調(diào)變電路377的輸出,并受該INC/DEC旗標(biāo)38控制而輸出一時(shí)鐘輸出mClock2,而該時(shí)鐘輸出mClock2則被該地址寄存器375的負(fù)載輸入端LD所接收。
該垂直伸縮單元的操作描述如下(1)為了方便說(shuō)明本發(fā)明實(shí)施例的伸展操作,假設(shè)以一個(gè)具有五條原始掃描線的原始數(shù)字圖象被伸展而得到一個(gè)具有七條目的掃描線的目的數(shù)字圖象。
如圖3所示,該可程式的寄存器組30最初被設(shè)定為在該第一寄存器301中儲(chǔ)存數(shù)字“5”、在該第二寄存器302中儲(chǔ)存數(shù)字“2”及在該第三寄存器303中儲(chǔ)存一邏輯“1”。該數(shù)字“5”相當(dāng)于在該幀存儲(chǔ)器2的該原始圖象數(shù)據(jù)的原始掃描線量N,該數(shù)字“2”相當(dāng)于被插入的掃描線總數(shù)ΔN,在該第三寄存器303的該邏輯1則指示該數(shù)字圖象數(shù)據(jù)的伸展被執(zhí)行。
該第一計(jì)算電路31輸出ΔN除以N-1所得到的商數(shù)T,因?yàn)棣小于N-1,所以該商數(shù)T等于0。該第二計(jì)算電路32輸出ΔN除以N-1所得到的余數(shù)S,在這個(gè)例子中,該余數(shù)S等于2。該第三計(jì)算電路33則為不相關(guān)的,因?yàn)樵谏煺共僮髌陂g,該選擇器34提供該第二計(jì)算電路32的輸出給該殘余分布器35。
如圖1、3-7所示,該地址產(chǎn)生器37的地址寄存器375最初設(shè)定儲(chǔ)存在該幀存儲(chǔ)器2的該原始掃描線的第一原始掃描線的線地址,并且控制該幀存儲(chǔ)器2來(lái)提供該原始掃描線的第一原始掃描線至該線存儲(chǔ)器3,同時(shí),該余數(shù)S被存入該中間數(shù)據(jù)寄存器56,而后該加法器43再將該余數(shù)S及該中間數(shù)據(jù)寄存器56的內(nèi)容相加。因?yàn)樵摷臃ㄆ?3的輸出為4而小于N(N等于5),因此該計(jì)算電路44的控制輸出端39處于低邏輯位準(zhǔn)狀態(tài)。該選擇器45將該加法器43的輸出提供給該中間數(shù)據(jù)寄存器56,且提供給中間數(shù)據(jù)寄存器56的時(shí)鐘輸入mClock1為一除以T+1時(shí)鐘,因?yàn)樵撋虜?shù)T等于0,所以該時(shí)鐘輸入mClock1恰好與該原始輸入線時(shí)鐘相同。
因?yàn)樵摽刂戚敵龆?9處于低邏輯狀態(tài)且因該商數(shù)T等于0,所以該系數(shù)產(chǎn)生器363提供數(shù)字“1”給該選擇器364。因該INC/DEC旗標(biāo)38位在邏輯“1”,該選擇器364選擇該系數(shù)產(chǎn)生器363的輸出當(dāng)作加權(quán)系數(shù)α。因該系數(shù)α等于1,該系數(shù)1-α等于0,且產(chǎn)生該儲(chǔ)存指令信號(hào),以便控制該線緩沖器4儲(chǔ)存來(lái)自該線存儲(chǔ)器3的原始掃描線的第一原始掃描線。在這階段中該雙線性加法器5的輸出為該原始掃描線的第一原始掃描線。
該選擇器373提供一個(gè)等于1的差值給該加法器374,因此,當(dāng)下一個(gè)線時(shí)鐘mClock2到達(dá)時(shí),該加法器374會(huì)使該地址寄存器375的輸出增加一個(gè)單位,藉此控制該幀存儲(chǔ)器2提供該原始掃描線的第二條掃描線至該線存儲(chǔ)器3。
當(dāng)下一個(gè)線時(shí)鐘mclock1到達(dá)時(shí),該中間數(shù)據(jù)寄存器56儲(chǔ)存該加法器43先前的輸出(該輸出等于4),此時(shí),該加法器43的輸出(等于6)大于N(等于5),使該計(jì)算電路44的控制輸出端39處在高邏輯狀態(tài)。該選擇器45提供該加法器43的輸出及該選擇器41的輸出的差值給該中間值數(shù)據(jù)寄存器56,此時(shí)該時(shí)鐘輸入mClock1為除以T+2時(shí)鐘,具有該原始輸入線時(shí)鐘兩倍的延遲時(shí)間。
此時(shí),該控制輸出端39處在高邏輯狀態(tài),該系數(shù)產(chǎn)生器363在一時(shí)脈mClock1(也就是兩連續(xù)的原始輸入線時(shí)鐘)期間產(chǎn)生連續(xù)的兩個(gè)輸出1及1/2。當(dāng)在該第一原始輸入線時(shí)鐘期間內(nèi),因?yàn)樵撓禂?shù)α等于1,所以該雙線性加法器5輸出該原始掃描線的第二原始掃描線,且同時(shí)將該第二原始掃描線儲(chǔ)存在該線緩沖器4中。在該第二原始輸入線時(shí)鐘的期間,該地址寄存器375的內(nèi)容在下一個(gè)時(shí)鐘輸入mClock2時(shí)會(huì)被增加一個(gè)單位,此時(shí)該系數(shù)產(chǎn)生器363的輸出等于1/2,該系數(shù)α等于1/2,該系數(shù)1-α等于1/2,所以未產(chǎn)生儲(chǔ)存指令信號(hào)。因此,原始掃描線中的第二原始掃描線保留在該線緩沖器4中,在這一階段中該雙線性加法器5的輸出為原始掃描線中的第二原始掃描線及第三原始掃描線的雙線性內(nèi)插。
該中間數(shù)據(jù)寄存器56的內(nèi)容在下一時(shí)鐘輸入mClock1到達(dá)時(shí)被更新為1,也就是該加法器43及該數(shù)字N的差值,該加法器43的輸出小于N(該輸出為3),使該控制輸出端39位在低邏輯狀態(tài)。該選擇器45提供該加法器43的輸出給該中間數(shù)據(jù)寄存器56,且提供給該中間數(shù)據(jù)寄存器56的時(shí)鐘輸入mClock1為除以T+1時(shí)鐘,且來(lái)自該α串列產(chǎn)生器36的系數(shù)α等于1。該雙線性加法器5的輸出為該原始掃描線的第三原始掃描線,因該系數(shù)α等于1,因此該原始掃描線的第三原始掃描線被儲(chǔ)存在該線緩沖器4中。
而后接續(xù)的步驟與前述相同,一直至該原始掃描線數(shù)據(jù)的第五原始掃描線數(shù)據(jù)由該雙線性加法器5輸出為止。
如圖7所示,為本發(fā)明上述實(shí)施例的時(shí)序圖,其中N=5、ΔN=2。
由上所述可知,該垂直伸縮控制器6控制該雙線性加法器5執(zhí)行該原始掃描線的第n條及第n+1條掃描線的雙線性內(nèi)插,其中該第n條掃描線儲(chǔ)存在該線緩沖器4中,而該第n+1條掃描線儲(chǔ)存在該線存儲(chǔ)器3中,以便當(dāng)ΔN除以N-1得到一余數(shù)S,在n為滿足條件(n+1)×(S)≥(s)×(N)的最小值(其中s從1至S)時(shí),可制造一條插在該原始掃描線第n條及第n+1條原始掃描線間的殘余插補(bǔ)掃描線。
在前述的例子中,ΔN除以N-1所得到商數(shù)T為0,如果該商數(shù)不等于0,也就是說(shuō),ΔN大于或等于N-1,該垂直伸縮控制器6更控制該雙線性加法器5執(zhí)行該原始掃描線第n條及第n+1條原始掃描線的雙線性內(nèi)插,以制造T個(gè)附加的連續(xù)插補(bǔ)掃描線插入該原始掃描線第n條及第n+1條原始掃描線之間,如圖8所示,為當(dāng)N=5且ΔN=6時(shí),本發(fā)明較佳實(shí)施例執(zhí)行伸展操作的時(shí)序圖,在這個(gè)例子中,該商數(shù)等于1,且該余數(shù)等于2,很明顯地,除了兩條殘余插補(bǔ)掃描線之外,在該等原始掃描線的每?jī)蓷l相鄰掃描線之間均有一條附加的插補(bǔ)掃描線。
(2)為了便于說(shuō)明本發(fā)明較佳實(shí)施例執(zhí)行壓縮操作,假設(shè)以一個(gè)具有五條原始掃描線的原始數(shù)字圖象被壓縮得到一個(gè)具有三條目的掃描線的目的數(shù)字圖象。
如圖3所示,該可程式的寄存器組30最初被設(shè)定為在該第一寄存器301中儲(chǔ)存數(shù)值“5”、該第二寄存器302中儲(chǔ)存數(shù)值“2”及在該第三寄存器303中儲(chǔ)存一邏輯“0”,該數(shù)值“5”相當(dāng)于在該幀存儲(chǔ)器2中的該原始圖象數(shù)據(jù)的原始掃描線量N,該數(shù)值“2”相當(dāng)于被刪除的掃描線總數(shù)ΔN,在該第三寄存器303的該邏輯0則為該數(shù)字圖象數(shù)據(jù)的執(zhí)行壓縮操作。
在壓縮操作期間時(shí),該第一、二計(jì)算電路31、32的輸出是不相關(guān)的,該第三計(jì)算電路33可輸出N除以N-ΔN所得到的余數(shù)U,其中N-ΔN為被保留的該原始掃描線的數(shù)目,在此例子中,該余數(shù)U等于2,該選擇器34提供該第三計(jì)算電路33的輸出給該殘余分布器35。
如圖1、3、6、9所示,該地址產(chǎn)生器37的地址寄存器375最初設(shè)定儲(chǔ)存在該幀存儲(chǔ)器2中的該原始掃描線的第一原始掃描線的線地址,且在一起始線時(shí)鐘期間控制該框存儲(chǔ)器3,同時(shí),該余數(shù)U被儲(chǔ)存在該中間數(shù)據(jù)寄存器56中,而后該加法器43再將該余數(shù)U與該中間數(shù)據(jù)寄存器56的內(nèi)容相加。該計(jì)算電路44將來(lái)自該加法器43的輸出減去來(lái)自該選擇器41的數(shù)值N-ΔN,因?yàn)樵摷臃ㄆ?3的輸出在此時(shí)等于4且大于N-ΔN(等于3),因此該計(jì)算電路44的控制輸出端39處于高邏輯狀態(tài),該選擇器45提供該加法器43的輸出與該選擇器41的輸出間的差值給中間數(shù)據(jù)寄存器56,而該原始線時(shí)鐘藉該選擇器47被供給至該中間數(shù)據(jù)寄存器56。
如圖3、5所示,因?yàn)橐贿壿嫛?”被儲(chǔ)存在該第三寄存器303中,因此該選擇器364維持該系數(shù)α為1,而系數(shù)1-α等于0,該儲(chǔ)存指令信號(hào)持續(xù)產(chǎn)生,以便作動(dòng)該線緩沖器4持續(xù)地由該線存儲(chǔ)器3儲(chǔ)存一原始掃描線,另外,該雙線性加法器5的輸出一直是該線存儲(chǔ)器3的輸出。
如圖6所示,該計(jì)算電路371輸出N除以N-ΔN所得到的商數(shù)V,在這個(gè)例子中,該商數(shù)V等于1,該加法器372產(chǎn)生該商數(shù)V與該控制輸出端39的邏輯狀態(tài)的和數(shù)(sum),此時(shí)的邏輯狀態(tài)為高邏輯狀態(tài)。該選擇器373選擇該加法器372的輸出(等于2),并且提供相同的輸出給該加法器374,如此,該地址寄存器375的輸出在下一時(shí)鐘輸入mClock2到達(dá)時(shí)會(huì)增加兩個(gè)單位,藉此控制該幀存儲(chǔ)器2提供該原始掃描線的第三原始掃描線至該線存儲(chǔ)器3。
如圖4所示,直到下一個(gè)線時(shí)鐘到達(dá)時(shí),該中間數(shù)據(jù)寄存器56儲(chǔ)存由該計(jì)算電路44計(jì)算得到的前一差數(shù)“1”,此時(shí),該加法器43的輸出(等于3)等于該選擇器41的輸出,該計(jì)算電路44的控制輸出端39位在高邏輯狀態(tài),且該選擇器45提供該加法器43的輸出與該選擇器41的輸出間的差數(shù)給該中間數(shù)據(jù)寄存器56。
如圖6所示,該加法器372再一次地產(chǎn)生該商數(shù)V與該控制輸出端39的邏輯狀態(tài)的和數(shù)(sum),該加法器372的輸出(等于2)藉該選擇器373被提供至該加法器374,如此,該地址寄存器375的輸出在當(dāng)下一時(shí)鐘輸入mClock2到達(dá)時(shí)將再被增加兩個(gè)單位,藉此控制該幀存儲(chǔ)器2以提供該原始掃描線的第五原始掃描線給該線存儲(chǔ)器3。如圖9所示,即為本發(fā)明上述實(shí)施例執(zhí)行壓縮處理的時(shí)序圖。
承上所述,該地址產(chǎn)生器37控制該幀存儲(chǔ)器2只輸出該原始掃描線中被選擇的掃描線,而在該幀存儲(chǔ)器2中未被輸出的原始掃描線事實(shí)上是被拋棄的,值得注意的是,當(dāng)該加法器43的輸出小于該N-ΔN的差數(shù)時(shí),由該幀存儲(chǔ)器2中被輸出的原始掃描線與之前由該幀存儲(chǔ)器2輸出的原始掃描線的差數(shù)5值為V,及當(dāng)加法器43的輸出至少等于該差數(shù)N-ΔN時(shí),由該幀存儲(chǔ)器2中被輸出的原始掃描線與之前由該幀存儲(chǔ)器2輸出的原始掃描線的差數(shù)值為V+1。
水平伸縮單元的結(jié)構(gòu)與操作描述如下。
該雙線性加法器5的輸出被該點(diǎn)寄存器7所接收,該水平伸縮控制器10控制該點(diǎn)緩沖器8來(lái)儲(chǔ)存由該點(diǎn)寄存器7輸出的一前一象素?cái)?shù)據(jù),該雙線性加法器9接收來(lái)自該點(diǎn)寄存器7及該點(diǎn)緩沖器8的象素?cái)?shù)據(jù),并且根據(jù)來(lái)自該水平伸縮控制器10的一對(duì)加權(quán)系數(shù)α、1-α來(lái)執(zhí)行雙線性內(nèi)插。該雙線性加法器9的結(jié)構(gòu)與圖2的該雙線性加法器5的結(jié)構(gòu)相似,而在該雙線性加法器9中,來(lái)自該點(diǎn)緩沖器8的象素?cái)?shù)據(jù)為對(duì)應(yīng)于一掃描線數(shù)據(jù)的第n′個(gè)象素?cái)?shù)據(jù),其將被乘以系數(shù)1-α,來(lái)自該點(diǎn)寄存器7的象素?cái)?shù)據(jù)為對(duì)應(yīng)一掃描線數(shù)據(jù)第n′+1個(gè)象素?cái)?shù)據(jù),其將被乘以系數(shù)α,如此,該點(diǎn)寄存器7相當(dāng)于該垂直伸縮單元的線存儲(chǔ)器3,而該點(diǎn)緩沖器8相當(dāng)于該垂直伸縮單元的線緩沖器4。
該水平伸縮控制器10的結(jié)構(gòu)同樣地類(lèi)似如圖3到圖6所示的該垂直伸縮控制器6,但是該垂直伸縮控制器6與該水平伸縮控制器10仍有一些差異,例如,在該水平伸縮控制器10中,該可編程的寄存器組的第一寄存器被使用來(lái)儲(chǔ)存該位在幀存儲(chǔ)器2中的數(shù)字圖象的每一條掃描線的象素?cái)?shù)據(jù)量N′,該第二寄存器被使用來(lái)儲(chǔ)存該每一條掃描線被插入或刪除的象素?cái)?shù)據(jù)量ΔN′,該第三寄存器儲(chǔ)存一INC/DEC旗標(biāo),而該INC/DEC旗標(biāo)作為指示在水平方向上的象素?cái)?shù)據(jù)的伸展或者壓縮何時(shí)被執(zhí)行,該時(shí)鐘輸入至該地址產(chǎn)生器、該α串列產(chǎn)生器及該殘余分布器為原始象素時(shí)鐘,該水平伸縮控制器10的地址寄存器的地址輸出為一點(diǎn)地址,該點(diǎn)地址用來(lái)控制該線存儲(chǔ)器3及該線緩沖器4,如此,在水平方向的伸展期間,該原始掃描線的第n條及第n+1條原始掃描線及在其間的插補(bǔ)掃描線的所有象素?cái)?shù)據(jù)會(huì)通過(guò)該雙線性加法器5。當(dāng)在垂直方向及水平方向都?jí)嚎s時(shí),只有該原始掃描線中被選擇原始掃描線的被選擇象素?cái)?shù)據(jù)通過(guò)該雙線性加法器5。
綜上所述,本發(fā)明確實(shí)可均勻地伸縮數(shù)字圖象數(shù)據(jù),而且,對(duì)于插補(bǔ)掃描線或每一掃描線的插補(bǔ)象素?cái)?shù)據(jù)的總數(shù)不是N-1(或N′-1)的倍數(shù),本發(fā)明也可以對(duì)具有N條掃描線(或每一掃描線的N′個(gè)象素?cái)?shù)據(jù))均勻地伸縮,進(jìn)一步來(lái)說(shuō),本發(fā)明的伸縮裝置可以在任何水平方向或垂直方向上選擇地伸展或壓縮數(shù)字圖象。
權(quán)利要求
1.一種處理原始數(shù)字圖像以獲得均勻縮放的期望數(shù)字圖像的方法,該原始數(shù)字圖像具有N個(gè)連續(xù)的原始圖像數(shù)據(jù),該期望數(shù)字圖像具有M個(gè)連續(xù)的期望圖像數(shù)據(jù),M大于N,所述方法包括以下步驟提供第一線性內(nèi)插器;控制所述第一線性內(nèi)插器,以便在(M-N)除以(N-1)得到一個(gè)余數(shù)S且n為滿足條件(n+1)×(S)>(s)×(N)的最小值時(shí),執(zhí)行第n個(gè)及第n+1個(gè)原始圖像數(shù)據(jù)的線性內(nèi)插,產(chǎn)生一個(gè)插在其間的殘余插補(bǔ)圖像數(shù)據(jù),其中s的范圍為1至S;該原始圖像數(shù)據(jù)為一個(gè)掃描線的原始像素?cái)?shù)據(jù)。
2.一個(gè)處理原始數(shù)字圖像以獲得均勻縮放的期望數(shù)字圖像的裝置,該原始數(shù)字圖像具有N個(gè)連續(xù)的原始圖像數(shù)據(jù),該期望數(shù)字圖像具有M個(gè)連續(xù)的期望圖像數(shù)據(jù),M大于N,所述裝置包括第一線性內(nèi)插器;以及第一控制器裝置,與所述第一線性內(nèi)插器連接,用于控制所述第一線性內(nèi)插器,以便在(M-N)除以(N-1)得到一個(gè)余數(shù)S且n為滿足條件(n+1)×(S)>(s)×(N)的最小值時(shí),執(zhí)行第n個(gè)及第n+1個(gè)原始圖像數(shù)據(jù)的線性內(nèi)插,產(chǎn)生一個(gè)插在其間的殘余插補(bǔ)圖像數(shù)據(jù),其中s的范圍為1至S;該原始圖像數(shù)據(jù)為一個(gè)掃描線的像素?cái)?shù)據(jù)。
全文摘要
一種均勻伸縮數(shù)字圖象尺寸的方法及其裝置,處理原始數(shù)字圖象,得到均勻伸縮的目的數(shù)字圖象,該原始數(shù)字圖象有連續(xù)的原始圖象數(shù)據(jù)量N,目的數(shù)字圖象有目的圖象數(shù)據(jù)量M,當(dāng)M大于N時(shí),其方法包括提供一線性內(nèi)插器及控制線性內(nèi)插器去執(zhí)行第n個(gè)及第n+1個(gè)的原始圖象數(shù)據(jù)的線性內(nèi)插,當(dāng)(M-N)除以(N-1)得到余數(shù)S且當(dāng)(n+1)×(S)≥(s)×(N)的條件下,n為最小值時(shí),產(chǎn)生一個(gè)插入在第n個(gè)及第n+1個(gè)原始圖象數(shù)據(jù)間的殘余插補(bǔ)圖象數(shù)據(jù),s的范圍由1至S。
文檔編號(hào)G06T7/00GK1343958SQ0112309
公開(kāi)日2002年4月10日 申請(qǐng)日期2001年7月24日 優(yōu)先權(quán)日2001年7月24日
發(fā)明者徐榮富, 張鳳玲 申請(qǐng)人:華邦電子股份有限公司