[問題] OpenCV 做透視轉換
有找到兩種函式
1.void cvWarpPerspective( const CvArr* src, CvArr* dst, const CvMat* map_matrix,
int flags=CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS,
CvScalar fillval=cvScalarAll(0) );
src
輸入圖像.
dst
輸出圖像.
map_matrix
3×3 變換矩陣
flags
差值方法的開關選項:
CV_WARP_FILL_OUTLIERS - 填充所有縮小圖像的像素。如果部分像素落在輸入圖像的
邊界外,那麼它們的值設定為 fillval.
CV_WARP_INVERSE_MAP - 指定 matrix 是輸出圖像到輸入圖像的反變換,因此可以直
接用來做像素差值。否則, 函數從 map_matrix 得到反變換。
fillval
用來填充邊界外面的值
2.CvMat* cvWarpPerspectiveQMatrix( const CvPoint2D32f* src,
const CvPoint2D32f* dst,
CvMat* map_matrix );
src
輸入圖像的四邊形的4個點坐標
dst
輸出圖像的對應四邊形的4個點坐標
map_matrix
輸出的 3×3 矩陣
比較起來似乎第2種方法會比較快吧?
想請問的是要怎麼取出輸入圖像的4個點坐標呢?
感謝回答!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.62.36.60
推
06/14 12:44, , 1F
06/14 12:44, 1F
→
06/14 13:12, , 2F
06/14 13:12, 2F
→
06/14 13:13, , 3F
06/14 13:13, 3F
→
06/14 13:16, , 4F
06/14 13:16, 4F
推
06/14 16:42, , 5F
06/14 16:42, 5F
→
06/14 16:43, , 6F
06/14 16:43, 6F
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):