在线中文-在线在线ccc66-在线永久免费观看的毛片-在线永久免费观看的a站视频-久久精品最新免费国产成人-久久精品综合一区二区三区

以文本方式查看主題

-  曙海教育集團論壇  (http://www.bgl88.cn/bbs/index.asp)
--  DSP系統和硬件開發討論區  (http://www.bgl88.cn/bbs/list.asp?boardid=5)
----  李現路:DSP6000圖像位置移動與變形的典型算法(一)  (http://www.bgl88.cn/bbs/dispbbs.asp?boardid=5&id=82)

--  作者:admin
--  發布時間:2009-12-3 13:46:58
--  李現路:DSP6000圖像位置移動與變形的典型算法(一)

 

                              李現路:DSP6000圖像位置移動與變形的典型算法(一)

 

一、圖像的平移算法

圖像平移的數學表達式原理:

初始坐標為(x0,y0)的點經過平移(tx,ty)(以向右,向下為正方向)后,坐標變為(x1,y1)。這兩點之間的關系是x1=x0+tx,y1=y0+ty 。

這樣,平移后的圖像上的每一點都可以在原圖像中找到對應的點。例如,對于新圖中的(0,0)像素,代入上面的議程組,可以求出對應原圖中的點,可以直接將它的像素值同意設置為0或者255(對于灰度圖就是黑色或白色)。

同樣,若有點不在原圖中,也就說明原圖中有點被移出顯示區域。如果不想丟失被移出的部分圖像,可以將新生成的圖像擴大tx,高度擴大ty。


 

平移處理的C語言代碼:


 

/*圖像偏移量初始化*/

Int intXOffset=-200; //水平偏移量

Int intYOffset=-200; //垂直偏移量,必須是2的整數

void geometryTrans()

{

         int i,j;

         int intCapX,intCapY;

         for(i=0;i<numLines;i++) //行數

         {

             for(j=0;j<numPixels;j++) //像素數 /每行

             {                    

            intCapX = j-intXOffset;

            intCapY = i-intYOffset/2;           

            

            // 判斷 是否在原圖范圍內

            if((intCapX>=0) && (intCapX<numPixels))  

            {  

                //奇數行

                     if((i<numLines/2) && (intCapY>=0) && (intCapY<numLines/2))

                     {

                                         // 傳送亮度信號

                                         *(Uint8 *)(tempYbuffer + i*numPixels + j) = *(Uint8 *)(capYbuffer + (i-intYOffset/2)*numPixels + intCapX); 

                                }

                                //偶數行

                                else if((i>=numLines/2) && (i<numLines) && (intCapY>=numLines/2) && (intCapY<numLines))

                                {

                                             // 傳送亮度信號

                                         *(Uint8 *)(tempYbuffer + i*numPixels + j) = *(Uint8 *)(capYbuffer + (i-intYOffset/2)*numPixels + intCapX);                                 

                                }

                                else

                                {

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

                                }                                                                                  

                 }

            else

            {

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

            }                                             

                   }       

         }

}       

二、圖像的垂直鏡像變換算法

數學表達式原理:

設圖像高度為IHeight,寬度為IWidth,原圖中(x0,y0)垂直鏡像后將變為(x0,

IHeight-y0),其表達式為:

設圖像高度為IHeight,寬度為IWidth,原圖中(x0,y0)垂直鏡像后將變為(x0,

IHeight-y0),其表達式為:

X0=x1; y0=IHeight-y1


 

算法的C語言代碼:


 

         portNumber = 0;

         vpHchannel0 = bt656_8bit_ncfc(portNumber);

         bt656_capture_start(vpHchannel0);

         /*等待第一幀數據采集完成*/

         while(capNewFrame == 0){}

         /*將數據存入顯示緩沖區,并清采集完成的標志*/

         capNewFrame =0;


 

         for(i=0;i<numLines;i++)

         {

              /*傳送Y緩沖區*/

              //前半部分為原始圖像

                   DAT_copy((void *)(capYbuffer + i * numPixels),

                      (void *)(disYbuffer + i * numPixels),

                      numPixels>>1);

                   //后半部分為垂直鏡像圖像

                   DAT_copy((void *)(capYbuffer + i * numPixels),


主站蜘蛛池模板: 亚洲永久免费视频 | 蜜桃精品视频 | 国产男女视频在线观看 | 国产精品入口麻豆 | 久久久精品麻豆 | 亚洲第一视频网站 | 亚洲不卡免费视频 | 精品欧美一区二区精品久久 | 最新久久免费视频 | 欧美日韩综合一区 | 欧美在线观看视频一区 | 亚洲天堂h| 精品久久免费观看 | 亚洲男人的天堂网站 | 综合在线亚洲 | 香蕉视频在线精品 | 亚洲精品国产字幕久久vr | 欧美色性 | 亚洲永久中文字幕在线 | 羞羞影院免费观看网址在线 | 亚洲美女免费视频 | 四虎www| 中文字幕精品一区二区三区视频 | 日韩欧美一区二区久久黑人 | 欧美午夜视频一区二区三区 | 亚洲国产一成人久久精品 | 午夜羞羞视频 | 国产男人天堂 | 最新理论片在线第一页05电影网 | 黄色大片国产 | 亚洲人成人毛片无遮挡 | 国产免费资源高清小视频在线观看 | 最近高清中文在线国语电影 | 亚洲人成一区二区不卡 | 最近免费中文字幕大全视频 | 国色天香社区视频免费高清在线观看 | 在线视频网站www色 羞羞视频免费观 | 全免费a级毛片免费看 | 在线播放亚洲精品 | 亚洲第一国产 | 综合色网站 |