久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

立即注冊 登錄
返回首頁

uid:245772的個(gè)人空間

日志

今天的圖像處理實(shí)驗(yàn)

已有 678 次閱讀2017-11-3 18:10

1、平滑濾波(均值濾波)

 void CTextView::OnSmooth()

{

    //功能:實(shí)現(xiàn)均值濾波處理

    //判斷圖像是否打開,沒打開,則彈出提示框并退出函數(shù)

    if(!m_dib.m_bLoaded) 

    {

        AfxMessageBox("圖像還打開,請先打開圖像!");

        return;

    }

    //獲取圖像寬和高

    int nw=m_dib.GetDIBWidth();

    int nh=m_dib.GetDIBHeight();

    int i,j,m,n;

 

    BYTE* ptmp=new BYTE[nw*nh];   // 開辟一個(gè)與m_dib.m_pdata指向同樣大小的緩沖區(qū),可以進(jìn)一步了解BYTE是什么數(shù)據(jù)類型

    memcpy(ptmp,m_dib.m_pdata,nw*nh);//m_dib.m_pdata指向的nw*nh個(gè)字節(jié)內(nèi)容復(fù)制給ptmp指向的緩沖區(qū)

    int mask[9]={1,1,1,   1,1,1,  1,1,1};  // 建立算子模板

 

    int w_mask=3;                       //定義模板的大小

 

    //對(duì)每一個(gè)象素進(jìn)行模板運(yùn)算處理

    for(j=w_mask/2;j<nh-w_mask/2;j++)         //注意,行和列的起始和結(jié)束位置,思考為什么會(huì)要這樣?

        for(i=w_mask/2;i<nw-w_mask/2;i++)

        {

            //對(duì)圖像的第j行、第i列的像素

            int result=0;                         

             for(m=-w_mask/2;m<=w_mask/2;m++)          

                   for(n=-w_mask/2;n<=w_mask/2;n++)

                    result+=ptmp[(j+m)*nw+i+n]*mask[(m+w_mask/2)*w_mask+n+w_mask/2];

 

            result=(result)/9;   //因?yàn)檫\(yùn)算后有點(diǎn)值小于零

            if(result>255)        

                result=255;

            m_dib.m_pdata[j*nw+i]=result;

        }

    //將修改的m_pdata的數(shù)據(jù)賦值給m_pDIBData,以顯示修改的結(jié)果

    m_dib.UpdateData();

    //刷新屏幕

    Invalidate();

    delete ptmp;

}

 

2、銳化(拉普拉斯算子)

void CTextView::OnMask()

{

    //功能:實(shí)現(xiàn)銳化處理

    //判斷圖像是否打開,沒打開,則彈出提示框并退出函數(shù)

    if(!m_dib.m_bLoaded) 

    {

        AfxMessageBox("圖像還打開,請先打開圖像!");

        return;

   

    //獲取圖像寬和高

    int nw=m_dib.GetDIBWidth();

    int nh=m_dib.GetDIBHeight();

    int i,j,m,n;

   

    BYTE* ptmp=new BYTE[nw*nh];   // 開辟一個(gè)與m_dib.m_pdata指向同樣大小的緩沖區(qū),可以進(jìn)一步了解BYTE是什么數(shù)據(jù)類型

    memcpy(ptmp,m_dib.m_pdata,nw*nh);//m_dib.m_pdata指向的nw*nh個(gè)字節(jié)內(nèi)容復(fù)制給ptmp指向的緩沖區(qū)

   int mask[9]={0,1,0,   1,-4,1,   0,1,0};  // 建立算子模板 Laplace 3*3

    int w_mask=3;                       //定義模板的大小

       

    for(j=w_mask/2;j<nh-w_mask/2;j++)     

        for(i=w_mask/2;i<nw-w_mask/2;i++)

        {

            //對(duì)圖像的第j行、第i列的像素

            int result=0;                    

             for(m=-w_mask/2;m<=w_mask/2;m++)                    {

              for(n=-w_mask/2;n<=w_mask/2;n++)

               {result+=ptmp[(j+m)*nw+i+n]*mask[(m+w_mask/2)*w_mask+n+w_mask/2];}

        }

           

            result=abs(result+ptmp[(j+m)*nw+i+n]);   //因?yàn)檫\(yùn)算后有點(diǎn)值小于零

            if(result>255)        

                result=255;

            m_dib.m_pdata[j*nw+i]=result;

        }

    //將修改的m_pdata的數(shù)據(jù)賦值給m_pDIBData,以顯示修改的結(jié)果

    m_dib.UpdateData();

    //刷新屏幕

    Invalidate();

    delete ptmp;}


路過

雞蛋

鮮花

握手

雷人

評(píng)論 (0 個(gè)評(píng)論)

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

返回頂部
主站蜘蛛池模板: 影视先锋av资源噜噜 | 黄色在线免费观看视频网站 | 国产午夜精品一区二区三区在线观看 | 欧美日韩久久精品 | 日韩视频专区 | 国产69精品久久久久777 | 久久精品国产久精国产 | 拍真实国产伦偷精品 | 中文字幕亚洲区 | 国产高清精品网站 | 中文字幕韩在线第一页 | 久热免费在线 | 97久久精品午夜一区二区 | 成人在线a| 中文精品视频 | 日韩一区二区三区视频 | 超碰人人人 | 一级欧美一级日韩片免费观看 | 欧美理论片在线观看 | 欧美一级淫片免费视频黄 | 久久伊人青青草 | 国产黄色网址在线观看 | 精品伊人久久 | 亚洲高清视频一区二区 | 亚洲精品电影在线 | 毛片免费观看 | www.亚洲精品| 91av在线免费观看 | 国产精品一区二区免费看 | 99精品国自产在线 | 久久一二 | 欧美福利久久 | 日本成人片在线观看 | 亚洲欧美日韩精品久久亚洲区 | 国产高清一区二区三区 | 亚洲人久久 | 国产欧美在线视频 | 欧美a级成人淫片免费看 | 欧美福利专区 | 四虎最新视频 | 99热播精品 |