久久中文视频-久久中文网-久久中文亚洲国产-久久中文字幕久久久久-亚洲狠狠成人综合网-亚洲狠狠婷婷综合久久久久


曙海教育集團(tuán)論壇DSP專區(qū)DSP系統(tǒng)和硬件開發(fā)討論區(qū) → 李現(xiàn)路:圖像增強(qiáng)處理算法大全


  共有7650人關(guān)注過本帖樹形打印

主題:李現(xiàn)路:圖像增強(qiáng)處理算法大全

客人(124.78.*.*)
  1樓


李現(xiàn)路:圖像增強(qiáng)處理算法大全  發(fā)帖心情 Post By:2009-12-3 11:38:07

 

李現(xiàn)路:圖像增強(qiáng)處理算法大全


算法一、圖像反相算法

將圖像按像素進(jìn)行求反,取得類似照相底片效果。求反處理的圖像與原始圖“黑白顛倒”, 可以看清原始圖中灰黑區(qū)域的情況。求反的圖像一般用于數(shù)字圖像的初步處理。
   設(shè)DA表示輸入圖像的灰度,DB表示輸入圖像的灰度。灰度變換方程為:

DB=255-DA

在視頻顯示任務(wù)的循環(huán)中,程序首先將視頻數(shù)據(jù)從輸入緩沖區(qū)讀入自己開設(shè)的臨時(shí)

圖像處理緩沖區(qū),再在臨時(shí)圖像處理緩沖區(qū)上進(jìn)行處理,處理后的數(shù)據(jù)再輸出到輸出緩沖區(qū)。

圖像的采集分為奇偶場采集,即將圖像的奇數(shù)行作為一場數(shù)據(jù),偶數(shù)行作為另

一場數(shù)據(jù)。對像素處理時(shí),一般需分為奇數(shù)行與偶數(shù)行處理。在下面的程序中奇數(shù)行是第一場數(shù)據(jù)放在臨時(shí)圖像處理緩沖區(qū)的前半部。


/********具體處理反相的代碼如下:**********************************/

/*進(jìn)行圖像反色處理*/

void videoReverse()

{

int i,j;

//方框內(nèi)奇數(shù)行

for(i=intALines;i<intDLines;i++) //行數(shù)

{

    for(j=intAPixels;j<intDPixels;j++) //像素個(gè)數(shù)/每行

    {

            *(Uint8 *)(tempYbuffer + i*numPixels + j) =  0xFF-*(Uint8 *)(tempYbuffer + i*numPixels + j);

    }        

}

//方框內(nèi)偶數(shù)行

for(i=numLines/2+intALines;i<numLines/2+intDLines;i++)//行數(shù)

{

    for(j=intAPixels;j<intDPixels;j++) //像素個(gè)數(shù)/每行

    {      

            *(Uint8 *)(tempYbuffer + i*numPixels + j) =  0xFF-*(Uint8 *)(tempYbuffer + i*numPixels + j);

    }  

}      

}


算法二、圖像灰度處理算法


灰度圖(gray-scale imgc5)是指將圖像按照灰度等級的數(shù)目來劃分后形成的圖像。灰度模式最多使用256級灰度來表現(xiàn)圖像,圖像中的每個(gè)像素有一個(gè)0(黑色)到255(白色)之間的亮度值。實(shí)現(xiàn)灰度圖現(xiàn)實(shí)的方法比較簡單,將UV分量的值賦為0X80,Y分量值保持不變即可。

以下是處理算法的具體函數(shù),用下面的算法處理函數(shù)把上面完整程序里的相關(guān)算法處理函數(shù)替換掉,就可實(shí)現(xiàn)圖像處理的效果。

/*消去彩色*/

void removeColor()

{

int i,j;

//方框內(nèi)奇數(shù)行

for(i=intALines;i<intDLines;i++)//行數(shù)

{

    for(j=intAPixels/2;j<intDPixels/2;j++) //像素?cái)?shù)/每行

    {

            *(Uint8 *)(tempCbbuffer + i * (numPixels >> 1) + j) =  0x80;

            *(Uint8 *)(tempCrbuffer + i * (numPixels >> 1) + j) =  0x80;

    }        

}

//方框內(nèi)偶數(shù)行

for(i=numLines/2+intALines;i<numLines/2+intDLines;i++)//行數(shù)

{

    for(j=intAPixels/2;j<intDPixels/2;j++) //像素?cái)?shù)/每行

    {      

            *(Uint8 *)(tempCbbuffer + i * (numPixels >> 1) + j) =  0x80;

            *(Uint8 *)(tempCrbuffer + i * (numPixels >> 1) + j) =  0x80;

    }  

}      

}


算法三、圖像閾值變換算法


灰度的閾值變換可以將一幅灰度圖像轉(zhuǎn)換成黑白二值圖像。它的操作過程是先由用戶指

定一個(gè)閾值,如果圖像中期權(quán)像素的灰度值小于該閾值,則將該像素的灰度值設(shè)置為0,否則灰度值設(shè)置為255。

以下是處理算法的具體函數(shù),用下面的算法處理函數(shù)把上面完整程序里的相關(guān)算法處理函數(shù)替換掉,就可實(shí)現(xiàn)圖像處理的效果。

/*****進(jìn)行閾值分割處理*********/

void threshold()

{

int i,j;

//方框內(nèi)奇數(shù)行

for(i=intALines;i<intDLines;i++)//行數(shù)

{

    for(j=intAPixels;j<intDPixels;j++) //像素?cái)?shù)/每行

    {

        *(Uint8 *)(tempYbuffer + i*numPixels + j) = *(Uint8 *)(tempYbuffer + i*numPixels + j)<intThreshold?0x00:0xFF;

    }  

}

//方框內(nèi)偶數(shù)行

for(i=numLines/2+intALines;i<numLines/2+intDLines;i++)//行數(shù)

{

    for(j=intAPixels;j<intDPixels;j++) //像素?cái)?shù)/每行

    {      

        *(Uint8 *)(tempYbuffer + i*numPixels + j) = *(Uint8 *)(tempYbuffer + i*numPixels + j)<intThreshold?0x00:0xFF;  

        }

}      

}


算法四、圖像灰度線性變換算法


灰度的線性變換就是將圖像中所有的點(diǎn)的灰度按照線性灰度變換函數(shù)進(jìn)行變換。該線性

灰度變換函數(shù)是一個(gè)一維線性函數(shù):

灰度變換方程為:

dB=fA*dA+fB


1.   如果fA<0,暗區(qū)域?qū)⒆兞粒羺^(qū)域?qū)⒆儼担c(diǎn)運(yùn)算完成了圖像求補(bǔ)運(yùn)算

2.   當(dāng)fA>1時(shí),輸出圖像的對比度將增大

3.   當(dāng)fA<1時(shí),輸出圖像的對比度將減小

4.   當(dāng)fA=1且fB≠0時(shí),操作僅使所有像素的灰度值上移或下移,其效果是使整個(gè)圖像更暗或更亮;

5.   如果fA<0,暗區(qū)域?qū)⒆兞粒羺^(qū)域?qū)⒆儼担c(diǎn)運(yùn)算完成了圖像求補(bǔ)運(yùn)算。

6.   特殊情況下,當(dāng)fA=1,fB=0時(shí),輸出圖像和輸入圖像相同

7.   當(dāng)fA=1,fB=255時(shí),輸出圖像的灰度正好反轉(zhuǎn)。


以下是處理算法的具體函數(shù),用下面的算法處理函數(shù)把上面完整程序里的相關(guān)算法處理函數(shù)替換掉,就可實(shí)現(xiàn)圖像處理的效果。


/***進(jìn)行灰度線性變換處理*******/

void linerTrans()

{

int i,j,intTemp;

//方框內(nèi)奇數(shù)行

for(i=intALines;i<intDLines;i++)//行數(shù)

{

    for(j=intAPixels;j<intDPixels;j++) //像素?cái)?shù)/每行

    {

         intTemp = (*(Uint8 *)(tempYbuffer + i*numPixels + j))*intFA+intFB;

    

         if(intTemp>255)

         {

             *(Uint8 *)(tempYbuffer + i*numPixels + j) = 0xFF;

         }

         else if(intTemp<0)

         {

             *(Uint8 *)(tempYbuffer + i*numPixels + j) = 0x00;

         }

         else

         {

             *(Uint8 *)(tempYbuffer + i*numPixels + j) = intTemp;

         }      

        }

}

//方框內(nèi)偶數(shù)行

for(i=numLines/2+intALines;i<numLines/2+intDLines;i++)//行數(shù)

{

    for(j=intAPixels;j<intDPixels;j++) //像素?cái)?shù)/每行

    {

         intTemp = (*(Uint8 *)(tempYbuffer + i*numPixels + j))*intFA+intFB;

    

         if(intTemp>255)

         {

             *(Uint8 *)(tempYbuffer + i*numPixels + j) = 0xFF;

         }

         else if(intTemp<0)

         {

             *(Uint8 *)(tempYbuffer + i*numPixels + j) = 0x00;

         }

         else

         {

             *(Uint8 *)(tempYbuffer + i*numPixels + j) = intTemp;

         }      

        }

}      

}

算法五、灰度窗口變換算法


灰度窗口變換(slicing)是將某一區(qū)間的灰度級和其他部分(背景)分開。

灰度窗口變換有兩種,一種是清除背景的,一種是保留背景的。前者把不在灰度窗口范圍內(nèi)的像素都賦值為0,在灰度窗口范圍內(nèi)的像素都賦值為255,這也能實(shí)現(xiàn)灰度圖的二值化;后者是把不在灰度窗口范圍內(nèi)的像素保留原灰度值,在灰度窗口范圍內(nèi)的像素都賦值為255。本實(shí)驗(yàn)采用的是清除背景的灰度窗口變換。灰度窗口變換可以檢測出在某一灰度窗口范圍內(nèi)的所有像素,是圖像灰度分析中的一個(gè)有力工具。


在視頻顯示任務(wù)的循環(huán)中,程序首先將視頻數(shù)據(jù)從輸入緩沖區(qū)讀入自己開設(shè)的臨時(shí)圖像處理緩沖區(qū),再在臨時(shí)圖像處理緩沖區(qū)上進(jìn)行處理,處理后的數(shù)據(jù)再輸出到輸出緩沖區(qū)。

在屏幕中央開辟一個(gè)矩形區(qū)域,對這個(gè)區(qū)域內(nèi)的圖像進(jìn)行處理。

以下是處理算法的具體函數(shù),用下面的算法處理函數(shù)把上面完整程序里的相關(guān)算法處理函數(shù)替換掉,就可實(shí)現(xiàn)圖像處理的效果。

/*灰度的窗口變換*/                     

void windowTrans()

{

         int i,j,intTemp;

         //方框內(nèi)奇數(shù)行

         for(i=intALines;i<intDLines;i++)//行數(shù)

         {

             for(j=intAPixels;j<intDPixels;j++) //像素?cái)?shù)/每行

             {                

            intTemp = *(Uint8 *)(tempYbuffer + i*numPixels + j);

            if(intTemp<intL)

                     *(Uint8 *)(tempYbuffer + i*numPixels + j) = 0x00;

            else if(intTemp>intU)

                *(Uint8 *)(tempYbuffer + i*numPixels + j) = 0xFF;

            else

                     *(Uint8 *)(tempYbuffer + i*numPixels + j) = intTemp;                      

                   }       

         }

         //方框內(nèi)偶數(shù)行

         for(i=numLines/2+intALines;i<numLines/2+intDLines;i++)//行數(shù)

         {

             for(j=intAPixels;j<intDPixels;j++) //像素?cái)?shù)/每行

             {                

            intTemp = *(Uint8 *)(tempYbuffer + i*numPixels + j);

            if(intTemp<intL)

                     *(Uint8 *)(tempYbuffer + i*numPixels + j) = 0x00;

            else if(intTemp>intU)

                *(Uint8 *)(tempYbuffer + i*numPixels + j) = 0xFF;

            else

                     *(Uint8 *)(tempYbuffer + i*numPixels + j) = intTemp;                      

                   }       

         }                

}

 

                                              曙海教育

                                            曙海嵌入式學(xué)院

                        (課程:DSP培訓(xùn),FPGA培訓(xùn),MTK培訓(xùn),Android培訓(xùn),iPhone培訓(xùn))

                                           電話:021-51875830

                                           網(wǎng)址:http://www.51qianru.cn

                                              講師:李現(xiàn)路

                          版權(quán)所有-曙海教育 歡迎轉(zhuǎn)摘,轉(zhuǎn)摘請注明作者和出處

[此貼子已經(jīng)被作者于2009-12-3 11:48:53編輯過]

支持(0中立(0反對(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

李現(xiàn)路:圖像增強(qiáng)處理算法大全








簽名
主站蜘蛛池模板: 免费人成在观看 | 欧美xxxxb| 国产欧美日韩在线观看精品 | 91精品国产高清久久久久久io | a一级特黄日本大片 s色 | 国产精品吹潮在线播放 | 国产亚洲欧美在线播放网站 | 91亚洲国产成人久久精品网址 | 狠色狠狠色狠狠狠色综合久久 | 亚洲精品国产专区91在线 | 中文字幕成人在线观看 | 国产成人亚洲综合欧美一部 | 999久久| 免费观看欧美一级毛片 | 中文字幕天堂久久精品 | 亚洲美女视频一区二区三区 | 久久伊人精品热在75 | 精品日韩欧美一区二区三区在线播放 | 亚洲黄色免费在线观看 | 欧美一级视频免费观看 | 久久久一本精品99久久精品66 | 国产人成精品综合欧美成人 | 日韩欧美一区二区三区久久 | 亚洲毛片在线免费观看 | 久久综合给合久久狠狠狠97色69 | 中文字幕一二三区 | 亚洲视频2| 欧美精品三区 | 九九热精品在线 | 国产高清视频在线观看 | 国产精品成人观看视频国产 | 一个人看的日本免费视频 | 国产在线观看一区精品 | 中日韩美中文字幕 | www色在线| 日韩欧美一区二区精品久久 | 亚洲韩国日本欧美一区二区三区 | 日本特爽特黄特刺激大片 | 欧美一级特黄真人毛片 | 欧美xxxxx九色视频免费观看 | 成人午夜看片 |