freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)論文_基于快匹配的人群運(yùn)動(dòng)估計(jì)-資料下載頁

2025-07-07 15:22本頁面

【導(dǎo)讀】等方面都有著重要的應(yīng)用價(jià)值。隨著經(jīng)濟(jì)社會(huì)的發(fā)展,各種公共場(chǎng)地和設(shè)施中的人群流動(dòng)越來越頻繁。合的人群進(jìn)行有效管理與控制,是不得不考慮的重大問題。智能化人群監(jiān)控技術(shù)應(yīng)運(yùn)而生,它主要包括人群的密度估計(jì)和運(yùn)動(dòng)估計(jì)兩部分內(nèi)容。本文著手解決人群運(yùn)動(dòng)估計(jì)這一塊,全以及建筑設(shè)計(jì)領(lǐng)域等。它們能夠直接或間接地提高上述場(chǎng)合工作人員的工作效率和建筑。OpenCV與塊匹配各重要環(huán)節(jié)有具體分析。

  

【正文】 nCV/cxcore/include‖ 的 中。 1. 在這些數(shù)據(jù)類型中最簡單的就是 CvPoint。 CvPoint 是一個(gè)簡單的機(jī)構(gòu)體,定義如下: CvPoint 二維坐標(biāo)系下的點(diǎn),類型為整型 typedef struct CvPoint { int x。 /* X 坐標(biāo) , 通常以 0 為基點(diǎn) */ int y。 /* y 坐標(biāo) , 通常以 0 為基點(diǎn) */ } CvPoint。 CvPoint 有兩個(gè)變體類型; CvPoint2D32f 和 CvPoint3D32f。前者同樣有兩個(gè)成員 x,y,但他們是浮點(diǎn)類型;后者多一個(gè)浮點(diǎn)類型的成員 z。 2. CvSize 類型與 cvPoint 非常相似,但它的數(shù)據(jù)成員是 integer 類型的 width 和 height。如果希望使用浮點(diǎn)類型,則選用 CvSize 的變體類型 CvSize2D32f。 CvMat OpenCV 里有三大數(shù)據(jù)結(jié)構(gòu): CvArr、 CvMat、 IplImage,它們遵循面向?qū)ο蟮乃枷?。?shí)際上, IplImage 是 CvMat 的派生,而 CvMat 由 CvArr 派生: 四川大學(xué)本科畢業(yè)論文 基于塊匹配的人群運(yùn) 動(dòng)估計(jì) 18 圖 31 CvArr, CvMat, IplImage 的關(guān)系圖 在 OpenCV 中沒有向量結(jié)構(gòu)。任何時(shí)候需要向量,都只需要一個(gè)列矩陣。 OpenCV 矩陣的概念與線性代數(shù)課里的概念相比,更抽象,尤其是矩陣的元素,并非只能取簡單的數(shù)值類型。例如,一個(gè)用于新建一個(gè)二維矩陣的例程具有以下原型: cvMat* cvCreateMat ( int rows, int cols, int type )。 CvMat 數(shù)據(jù)結(jié)構(gòu)的定義 : typedef struct CvMat { int type。 /* CvMat 標(biāo)識(shí) (CV_MAT_MAGIC_VAL), 元素類型和標(biāo)記 */ int step。 /*每行所占的總位數(shù) */ int* refcount。 /* 數(shù)據(jù)引用計(jì)數(shù) */ union { uchar* ptr。/* 矩陣頭,指向矩陣第 0 行第 0 個(gè)元素 */ short* s。 int* i。 float* fl。 double* db。 } data。 /* data 指針 */ ifdef __cplusplus union { int rows。 int height。 }。 union 四川大學(xué)本科畢業(yè)論文 基于塊匹配的人群運(yùn)動(dòng)估計(jì) 19 { int cols。 int width。 }。 else int rows。 /* 行數(shù) */ int cols。 /* 列數(shù) */ endif } CvMat。 與 CvMat 配套的有 cvCreateMat, cvReleaseMat cvCreateMat 用來創(chuàng)建 CvMat,格式如下: cvCreateMat ( int rows, int cols, int type )。 cvReleaseMat 用來釋放 CvMat, cvReleaseMat( amp。CvMat) IplImage 從本質(zhì)上講,它是一個(gè) CvMat 對(duì)象,但它還有其他一些成員變量將矩陣解釋為圖像。這個(gè)結(jié)構(gòu)最初被定義為 Intel圖像處理庫 (IPL)的一部分。 IplImage 結(jié)構(gòu)的準(zhǔn)確定義: typedef struct _IplImage { int nSize。 int ID。 int nChannels。 int alphaChannel。 int depth。 char colorModel[4]。 char channelSeq[4]。 int dataOrder。 int origin。 int align。 int width。 int height。 struct _IplROI* roi。 struct _IplImage* maskROI。 四川大學(xué)本科畢業(yè)論文 基于塊匹配的人群運(yùn) 動(dòng)估計(jì) 20 void* imageId。 struct _IplTileInfo* tileInfo。 int imageSize。 char* imageData。 int widthStep。 int BorderMode[4]。 int BorderConst[4]。 char* imageDataOrigin。 } IplImage。 width 和 height 這兩個(gè)變量很重要,其次是 depth 和 nchannals。 depth 變量的值取自 中定義的一組數(shù)據(jù),但與在矩陣中看到的對(duì)應(yīng)變量不同。因?yàn)樵趫D像中,往往將深度和通道數(shù)分開處理,而在矩陣中,往往同時(shí)表示它們 . 可用的深度值如表 32 所示。 表 32: OpenCV 圖像 深度 類型 宏 圖像像素類型 IPL_DEPTH_8U 無符號(hào) 8 位整數(shù) (8u) IPL_DEPTH_8S 有符號(hào) 8 位整數(shù) (8s) IPL_DEPTH_16S 有符號(hào) 16 位整數(shù) (16s) IPL_DEPTH_32S 有符號(hào) 32 位整數(shù) (32s) IPL_DEPTH_32F 32 位浮點(diǎn)數(shù)單精度 (32f) IPL_DEPTH_64F 64 位浮點(diǎn)數(shù)雙精度 (64f) 通道數(shù) nChannels 可取的值是 1, 2, 3 或 4。 Origin 變量有兩種取值: IPL_ORIGIN_TL 或 OPL_ORIGIN_BL,分別設(shè)置坐標(biāo)原點(diǎn)的位置于圖像的左上角或左下角。而 OpenCV 經(jīng)常出錯(cuò)于此,有時(shí)在轉(zhuǎn)換通道時(shí)原點(diǎn)會(huì)變換,有時(shí)在平滑處理時(shí)會(huì),這些會(huì)導(dǎo)致圖像顛倒,甚至造成處理的嚴(yán)重偏差。 同 CvMat, IplImage 也有配套函數(shù): cvCreateImage, cvReleaseImage 它們格式分別是: cvCreateImage( CvSize size, int depth, int channels )。 四川大學(xué)本科畢業(yè)論文 基于塊匹配的人群運(yùn)動(dòng)估計(jì) 21 cvReleaseImage(amp。Image)。 其他函數(shù) 前面介紹的都是數(shù)據(jù)結(jié)構(gòu),下面介紹函數(shù): 1) cvSetZero 清空數(shù)組 void cvSetZero( CvArr* arr )。 define cvZero cvSetZero arr 要被清空數(shù)組 . 函數(shù) cvSetZero 清空數(shù)組 . 對(duì)于密集型號(hào)數(shù)組 (CvMat, CvMatND or IplImage) cvZero(array) 就相當(dāng)于 cvSet(array,cvScalarAll(0),0), 對(duì)于稀疏數(shù)組所有的元素都將被刪除 . 函數(shù) cvSetZero()僅僅是 cvSet()別名。 void cvSet(CvArr*arr,CvScalar value,const CvArr*mask=NULL)。 這些函數(shù)能將數(shù)組的所有通道的所有值設(shè)置為指定的參數(shù) value。該 cvSet()函數(shù)接受一個(gè) 可選的參數(shù):如果提供參數(shù),那么只有那些與參數(shù) mask 中非 0 值對(duì)應(yīng)的像素將被設(shè)置為指定的值。 2) cv ConvertScale(本程序用的是 cvConvert) 使用線性變換轉(zhuǎn)換數(shù)組 void cvConvertScale( const CvArr* src, CvArr* dst, double scale=1, double shift=0 )。 define cvCvtScale cvConvertScale define cvScale cvConvertScale define cvConvert( src, dst ) cvConvertScale( (src), (dst), 1, 0 ) src 輸入數(shù)組 . dst 輸出數(shù)組 scale 比例因子 . shift 該加數(shù)被加到輸入數(shù)組元素按比例縮放后得到的元素上 函數(shù) cvConvertScale 有多個(gè)不同的目的因此就有多個(gè)同義函數(shù)(如上面的 define 所示)。該函數(shù)首先對(duì)輸入數(shù)組的元素進(jìn)行比例縮放,然后將 shift 加到比例縮放后得到的各四川大學(xué)本科畢業(yè)論文 基于塊匹配的人群運(yùn) 動(dòng)估計(jì) 22 元素上,即: dst(I)=src(I)*scale + (shift,shift,...),最后可選的類型轉(zhuǎn)換將結(jié)果拷貝到輸出數(shù)組。 多通道的數(shù)組對(duì)各個(gè)通道是獨(dú)立處理的。 類型轉(zhuǎn)換主要用舍入和溢出截?cái)鄟硗瓿?。也就是如果縮放 +轉(zhuǎn)換后的結(jié)果值不能用輸出數(shù)組元素類型值精確表達(dá),就設(shè)置成在輸出數(shù)組數(shù)據(jù)軸上最接近該數(shù)的值。 如果 scale=1, shift=0 就不會(huì)進(jìn)行比例縮放 . 這是一個(gè)特殊的優(yōu)化,相當(dāng)于該函數(shù)的同義函數(shù)名: cvConvert 。如果原來數(shù)組和輸出數(shù)組的類型相同,這是另一種特殊情形,可以被用于比例縮放和平移矩陣或圖像,此時(shí)相當(dāng)于該函數(shù)的同義函數(shù)名: cvScale。 3) cvCmpS 比較數(shù)組的每個(gè)元素與數(shù)量的關(guān)系 void cvCmpS( const CvArr* src, double value, CvArr* dst, int cmp_op )。 src 原數(shù) ,必須有一個(gè)單通道。 value 用與數(shù)組元素比較的數(shù)量值 dst 輸出數(shù)組必須是 8u 或 8s 類型 . cmp_op 該標(biāo)識(shí)指定要檢查的元素之間的關(guān)系: CV_CMP_EQ src1(I) 等于 value CV_CMP_GT src1(I) 大于 value CV_CMP_GE src1(I) 大于等于 value CV_CMP_LT src1(I) 小于 value CV_CMP_LE src1(I) 小于等于 value CV_CMP_NE src1(I) 不等于 value 函數(shù) cvCmpS 比較數(shù)組元素與數(shù)量并且添充目標(biāo)復(fù)蓋面數(shù)組: dst(I)=src(I) op scalar, 這里 op 是 39。=39。, 39。39。, 39。=39。, 39。39。, 39。=39。 or 39。!=39。. 如果元素之間的關(guān)系為真則設(shè)置 dst(I)為 0xff (也就是所有的位都為 39。139。) 否則為 0。所有的數(shù)組必須有相同的大?。ɑ?ROI 大?。? 4) cvCopy 拷貝一個(gè)數(shù)組給另一個(gè)數(shù)組 void cvCopy( const CvArr* src, CvArr* dst, const CvArr* mask=NULL )。 src 輸入數(shù)組。 四川大學(xué)本科畢業(yè)論文 基于塊匹配的人群運(yùn)動(dòng)估計(jì) 23 dst 輸出數(shù)組。 mask 操作掩碼是 8 比特單通道的數(shù)組,它指定了輸出數(shù)組中被改變的元素。 函數(shù) cvCopy 從輸入數(shù)組中復(fù)制選定的成分到輸出數(shù)組: 如果 mask(I)!=0,則 dst(I)=src(I)。 如果輸入輸出數(shù)組中的一個(gè)是 IplImage 類型的話,其 ROI 和 COI 將被使用。輸入輸出數(shù)組必須是同樣的類型、維數(shù)和大小。函數(shù)也可以用來復(fù)制散列數(shù)組(這種情況下不支持 mask)。 5) GetReal*D(本程序用的是 cvGetReal2D) 返回單通道數(shù)組的指定元素 double cvGetReal1D( const CvArr* arr, int idx0 )。 double cvGetReal2D( const CvArr* arr, int idx0, int idx1 )。 double cvGetReal3D( const CvArr* arr, int idx0, int idx1, int idx2 )。 double cvGe
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1