亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cvmorph.cpp

?? 將OpenCV移植到DSP上
?? CPP
字號:
////////////////////////////////////////////////////////////////////////////////////////////  IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.////  By downloading, copying, installing or using the software you agree to this license.//  If you do not agree to this license, do not download, install,//  copy or use the software.//////                 License For Embedded Computer Vision Library//// Copyright (c) 2008, EMCV Project,// Copyright (c) 2000-2007, Intel Corporation,// All rights reserved.// Third party copyrights are property of their respective owners.//// Redistribution and use in source and binary forms, with or without modification, // are permitted provided that the following conditions are met:////    * Redistributions of source code must retain the above copyright notice, //      this list of conditions and the following disclaimer.//    * Redistributions in binary form must reproduce the above copyright notice, //      this list of conditions and the following disclaimer in the documentation //      and/or other materials provided with the distribution.//    * Neither the name of the copyright holders nor the names of their contributors //      may be used to endorse or promote products derived from this software //      without specific prior written permission.//// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. // IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, // INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT // NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY // OF SUCH DAMAGE.//// Contributors://    * Shiqi Yu (Shenzhen Institute of Advanced Technology, Chinese Academy of Sciences)#include "cv.h"void icvErode_8UC1(    const unsigned char *restrict in_data,     unsigned char       *restrict out_data,     const char          *restrict mask,     int cols,    int step){    int i;    unsigned m0, m1, m2, m3, m5, m6, m7, m8;    unsigned p0, p1, p2, p3, p4, p5, p6, p7, p8;    unsigned result;    m0 = mask[0] < 0 ? 0 : 1;    m1 = mask[1] < 0 ? 0 : 1;    m2 = mask[2] < 0 ? 0 : 1;    m3 = mask[3] < 0 ? 0 : 1;    //m4 = mask[4] < 0 ? 0 : 1;    m5 = mask[5] < 0 ? 0 : 1;    m6 = mask[6] < 0 ? 0 : 1;    m7 = mask[7] < 0 ? 0 : 1;    m8 = mask[8] < 0 ? 0 : 1;    //_nassert((int)    cols % 4 == 0);    //#pragma MUST_ITERATE(2,,2);    //#pragma UNROLL(2);     for (i = 0; i < cols-2; i += 2)    {         p0 = (_mem4_const(&in_data[i         ]));        p3 = (_mem4_const(&in_data[i + step  ]));        p6 = (_mem4_const(&in_data[i + step*2]));        p1 = p0>>8;       p2 = p0>>16;        p4 = p3>>8;       p5 = p3>>16;        p7 = p6>>8;       p8 = p6>>16;        result = p4 & 0xFFFF;        result = m0 ? _minu4(result, p0) : result;        result = m1 ? _minu4(result, p1) : result;        result = m2 ? _minu4(result, p2) : result;        result = m3 ? _minu4(result, p3) : result;        result = m5 ? _minu4(result, p5) : result;        result = m6 ? _minu4(result, p6) : result;        result = m7 ? _minu4(result, p7) : result;        result = m8 ? _minu4(result, p8) : result;        out_data[i] = (result & 0xFF);        out_data[i+1] = (result>>8 & 0xFF);    }}void icvDilate_8UC1(    const unsigned char *restrict in_data,     unsigned char       *restrict out_data,     const char          *restrict mask,     int cols,    int step){    int i;    unsigned m0, m1, m2, m3, m5, m6, m7, m8;    unsigned p0, p1, p2, p3, p4, p5, p6, p7, p8;    unsigned result;    m0 = mask[0] < 0 ? 0 : 1;    m1 = mask[1] < 0 ? 0 : 1;    m2 = mask[2] < 0 ? 0 : 1;    m3 = mask[3] < 0 ? 0 : 1;    //m4 = mask[4] < 0 ? 0 : 1;    m5 = mask[5] < 0 ? 0 : 1;    m6 = mask[6] < 0 ? 0 : 1;    m7 = mask[7] < 0 ? 0 : 1;    m8 = mask[8] < 0 ? 0 : 1;    //_nassert((int)    cols % 4 == 0);    //#pragma MUST_ITERATE(2,,2);    //#pragma UNROLL(2);     for (i = 0; i < cols-2; i += 2)    {         p0 = (_mem4_const(&in_data[i         ]));        p3 = (_mem4_const(&in_data[i + step  ]));        p6 = (_mem4_const(&in_data[i + step*2]));        p1 = p0>>8;       p2 = p0>>16;        p4 = p3>>8;       p5 = p3>>16;        p7 = p6>>8;       p8 = p6>>16;        result = p4 & 0xFFFF;        result = m0 ? _maxu4(result, p0) : result;        result = m1 ? _maxu4(result, p1) : result;        result = m2 ? _maxu4(result, p2) : result;        result = m3 ? _maxu4(result, p3) : result;        result = m5 ? _maxu4(result, p5) : result;        result = m6 ? _maxu4(result, p6) : result;        result = m7 ? _maxu4(result, p7) : result;        result = m8 ? _maxu4(result, p8) : result;        out_data[i] = (result & 0xFF);        out_data[i+1] = (result>>8 & 0xFF);    }}static voidicvMorphOp( const void* srcarr, void* dstarr, IplConvKernel* element,            int iterations, int mop ){    CvMat* temp = 0;    CV_FUNCNAME( "icvMorphOp" );    __BEGIN__;    int i, coi1 = 0, coi2 = 0;    CvMat srcstub, *src = (CvMat*)srcarr;    CvMat dststub, *dst = (CvMat*)dstarr;    CvMat *real_dst = 0;    CvMat *buf = 0;    CvSize size;    char kernel[9];    int type;    if( !CV_IS_MAT(src) )        CV_CALL( src = cvGetMat( src, &srcstub, &coi1 ));        if( src != &srcstub )    {        srcstub = *src;        src = &srcstub;    }    if( dstarr == srcarr )        dst = src;    else    {        CV_CALL( dst = cvGetMat( dst, &dststub, &coi2 ));        if( !CV_ARE_TYPES_EQ( src, dst ))            CV_ERROR( CV_StsUnmatchedFormats, "" );        if( !CV_ARE_SIZES_EQ( src, dst ))            CV_ERROR( CV_StsUnmatchedSizes, "" );    }    if( dst != &dststub )    {        dststub = *dst;        dst = &dststub;    }	real_dst = dst;	    if( coi1 != 0 || coi2 != 0 )        CV_ERROR( CV_BadCOI, "" );    type = CV_MAT_TYPE( src->type );    size = cvGetMatSize( src );	if(type != CV_8UC1)		CV_ERROR(CV_StsUnsupportedFormat,"Only 8UC1 is supported currently");	    if( iterations == 0 || (element && element->nCols == 1 && element->nRows == 1))    {        if( src->data.ptr != dst->data.ptr )            cvCopy( src, dst );        EXIT;    }    if( element )    {    	CV_ERROR(CV_StsUnsupportedFormat,"Can not support customized kerel. The default one is 3x3.");    }    else    {    	kernel[0]=kernel[1]=kernel[2]=1;    	kernel[3]=kernel[4]=kernel[5]=1;    	kernel[6]=kernel[7]=kernel[8]=1;    }	buf = cvCloneMat(src);	src = buf;  	if(mop == 0) 	{    	for( i = 0; i < iterations; i++ )    	{	       	int r;        	int offset;	        for( r = 1; r < size.height-1; r++)    	    {    	    	offset = r*dst->step;        		icvErode_8UC1(src->data.ptr + offset-src->step,        						dst->data.ptr + offset +1 ,        						kernel,        						src->width,        						src->step);        	}                	//swap src and dst        	temp = src;        	src = dst;        	dst = temp;    	}    } 	else{    	for( i = 0; i < iterations; i++ )    	{        	int r;	        for( r = 1; r < size.height-1; r++)    	    {        		icvDilate_8UC1(src->data.ptr + (r-1)*src->step,        						dst->data.ptr + r*dst->step + 1,        						kernel,        						src->width,        						src->step);        	}                	//swap src and dst        	temp = src;        	src = dst;        	dst = temp;    	}    }	if(real_dst->data.ptr != src->data.ptr)			cvCopy(src, real_dst);   	cvReleaseMat( &buf );   	    __END__;}CV_IMPL voidcvErode( const void* src, void* dst, IplConvKernel* element, int iterations ){    icvMorphOp( src, dst, element, iterations, 0 );}CV_IMPL voidcvDilate( const void* src, void* dst, IplConvKernel* element, int iterations ){    icvMorphOp( src, dst, element, iterations, 1 );}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品一卡二卡| 欧美韩日一区二区三区| 另类小说视频一区二区| 欧美日韩高清一区二区三区| 久久国产精品色| 5566中文字幕一区二区电影| 国产69精品久久99不卡| 日韩国产欧美在线播放| 中文在线资源观看网站视频免费不卡 | 欧美裸体bbwbbwbbw| 日韩经典一区二区| 亚洲视频中文字幕| 亚洲激情五月婷婷| 性感美女极品91精品| 午夜久久久久久久久久一区二区| 亚洲va天堂va国产va久| 日韩va亚洲va欧美va久久| 蜜桃视频一区二区三区| 国产美女精品一区二区三区| 高清不卡在线观看| 91麻豆国产香蕉久久精品| 欧美性生交片4| 日韩欧美精品在线视频| 国产亚洲精品aa午夜观看| 国产精品第四页| 亚洲成人自拍网| 国产一区在线视频| 91免费观看在线| 51午夜精品国产| 久久久精品影视| 亚洲精选一二三| 另类小说综合欧美亚洲| 成人avav影音| 这里只有精品电影| 亚洲国产精品成人久久综合一区| 综合网在线视频| 蜜桃传媒麻豆第一区在线观看| 国精品**一区二区三区在线蜜桃| 99久久精品久久久久久清纯| 欧美日韩中文一区| 26uuu精品一区二区三区四区在线| 国产精品污网站| 奇米精品一区二区三区四区| 岛国一区二区三区| 91麻豆精品国产自产在线观看一区 | 久久婷婷综合激情| 国产精品视频免费看| 丝袜亚洲另类欧美综合| 粉嫩久久99精品久久久久久夜 | 国产盗摄精品一区二区三区在线| 欧洲一区在线电影| 久久久国产精品午夜一区ai换脸| 亚洲精品视频自拍| 国产69精品久久久久毛片| 91精品久久久久久蜜臀| 一区二区三区国产| 成人精品鲁一区一区二区| 精品理论电影在线| 亚洲午夜久久久久| 国产精品一二三| 一本到三区不卡视频| 7777精品伊人久久久大香线蕉经典版下载| 久久99日本精品| 国产成人综合网站| 国产精品一区2区| 成人av免费观看| 91麻豆精品国产综合久久久久久| 国产视频一区二区在线| 亚洲电影在线免费观看| 九九九久久久精品| 色婷婷综合久久久久中文| 欧美v亚洲v综合ⅴ国产v| 亚洲视频中文字幕| 国内精品免费**视频| 精品污污网站免费看| 日本一区免费视频| 午夜精品免费在线观看| 丁香另类激情小说| 日韩欧美你懂的| 亚洲精选免费视频| 国产精品一区二区在线播放| 欧美精品视频www在线观看| 国产清纯白嫩初高生在线观看91 | 91视视频在线直接观看在线看网页在线看| 欧美精品丝袜中出| 中文字幕一区二区三区色视频| 91丨porny丨在线| 精品嫩草影院久久| 久久色成人在线| 图片区小说区区亚洲影院| av在线不卡电影| 制服丝袜国产精品| 亚洲一区在线视频| 91蝌蚪国产九色| 国产精品拍天天在线| 国产真实乱偷精品视频免| 在线成人免费观看| 亚洲综合精品久久| 色欧美日韩亚洲| 亚洲欧洲精品一区二区三区| 国产99精品在线观看| 久久亚洲一区二区三区四区| 精品国产91九色蝌蚪| 美女尤物国产一区| 欧美日韩久久不卡| 午夜精品在线视频一区| 欧美自拍偷拍一区| 亚洲国产乱码最新视频| 91福利国产成人精品照片| 亚洲男人的天堂一区二区| 99久久er热在这里只有精品66| 国产精品久久久久久户外露出| 成人午夜伦理影院| 国产精品久久免费看| av在线这里只有精品| 亚洲免费av在线| 在线观看亚洲一区| 久久精品一区二区三区不卡牛牛 | 免费观看久久久4p| 日韩精品一区二区三区视频 | 91精品欧美久久久久久动漫 | 狠狠色丁香久久婷婷综| 久久亚洲精品国产精品紫薇| 国产福利精品一区| 亚洲欧洲日韩av| 色欧美片视频在线观看在线视频| 亚洲国产成人av好男人在线观看| 欧美日韩亚洲综合一区| 激情文学综合网| 日本一区二区成人| 欧美午夜一区二区| 久久国产综合精品| 国产精品五月天| 91精品国产一区二区三区香蕉| 久久精品国产一区二区三| 国产三级精品三级在线专区| 色婷婷综合五月| 麻豆精品一区二区综合av| 精品视频在线免费看| 国产麻豆精品95视频| 亚洲黄色小说网站| 精品国产乱码久久久久久影片| 成人福利在线看| 日韩精品电影一区亚洲| 中文天堂在线一区| 欧美伦理电影网| 成人综合在线网站| 男女男精品网站| 亚洲日穴在线视频| 制服.丝袜.亚洲.中文.综合| 五月激情六月综合| 色婷婷久久久综合中文字幕| 国产精品系列在线播放| 午夜不卡av免费| 国产精品国模大尺度视频| 日韩欧美综合在线| 在线一区二区三区做爰视频网站| 激情欧美日韩一区二区| 亚洲福利视频一区| 亚洲免费毛片网站| 久久久精品蜜桃| 日韩免费视频一区二区| 欧洲人成人精品| 成人激情电影免费在线观看| 久久精品国产精品亚洲精品| 一区二区三区欧美激情| 亚洲欧洲av在线| 中文字幕二三区不卡| 91黄视频在线| 亚洲一区二区三区视频在线播放 | 久久九九影视网| 国产欧美一区二区三区在线老狼| 日韩一区二区三区在线| 在线区一区二视频| 91啪亚洲精品| 91丝袜国产在线播放| av亚洲精华国产精华| 成人综合婷婷国产精品久久| 美女视频网站黄色亚洲| 日本aⅴ亚洲精品中文乱码| 亚洲成人av在线电影| 一区二区三区免费看视频| 国产精品福利电影一区二区三区四区| 久久久久久久性| 国产午夜精品一区二区三区视频 | 亚洲国产精品精华液ab| 国产午夜亚洲精品不卡| 久久综合色天天久久综合图片| 日韩免费高清电影| 日韩欧美国产综合| 精品久久久久久久久久久久久久久久久| 678五月天丁香亚洲综合网| 欧美日本韩国一区二区三区视频| 欧美无砖专区一中文字| 国产一区二区不卡在线| 91热门视频在线观看| 欧美三级电影网| 日韩三区在线观看| 精品少妇一区二区三区免费观看 | 免费av成人在线|