CalcOpticalFlowBM,用塊匹配方法計算兩幅圖像的光流,void cvCalcOpticalFlowBM( const CvArr* prev, const CvArr* curr, CvSize block_size, CvSize shift_size, CvSize max_range, int use_previous, CvArr* velx, CvArr* vely );
基本介紹
- 中文名:CalcOpticalFlowBM
- 定義:用塊匹配方法計算兩幅圖像的光流
- 算法:匹配方法計算
- 分類:數學
函式形式,參數,說明,
函式形式
用塊匹配方法計算兩幅圖像的光流
void cvCalcOpticalFlowBM( const CvArr* prev, const CvArr* curr, CvSize block_size, CvSize shift_size, CvSize max_range, int use_previous, CvArr* velx, CvArr* vely );
參數
- prev
- curr
- 第二幅圖像, 8-比特, 單通道.
- block_size
- 比較的基本塊尺寸
- shift_size
- 塊坐標的增量
- max_range
- 塊周圍象素的掃描鄰域的尺寸
- use_previous
- 使用以前的 (輸入) 速度域
- velx
- 光流的水平部分,尺寸為 floor((prev->width - block_size.width)/shiftSize.width) × floor((prev->height - block_size.height)/shiftSize.height) , 32-比特,浮點數, 單通道.
- vely
- 光流的垂直部分,與 velx 大小一樣,32-比特,浮點數, 單通道.
說明
函式 cvCalcOpticalFlowBM 為重疊塊 block_size.width×block_size.height 中的每一個象素計算光流,因此其速度域小於整個圖像的速度域。對每一個在圖像 prev 中的塊,函式試圖在 curr 中某些原始塊或其偏移 (velx(x0,y0),vely(x0,y0)) 塊的鄰域裡尋找類似的塊,如同在前一個函式調用中所計算的類似(如果 use_previous=1)