在使用remap函式時一直沒明白那個map_x,和map_y一直搞混了,通過實驗來記錄一下以防以後忘記了
先看一段**
#include
#include
#include
using namespace std;
using namespace cv;
int main()
remap(srcimage,dstimage,map_x,map_y,inter_linear);
imshow("xianshi",dstimage);
waitkey(0);
return 0;
}**中的map_x實際上記錄的是對應srcimage中(i,j)位置的橫座標,map_y實際上記錄的是(i,j)位置的縱座標,而我們在這裡把畫素操作的i當做了橫座標,j當做了縱座標。
所以有時會混淆怎麼賦值.看看下圖:
map_x是橫著跑的,map_y是豎著跑的。來具體看看畫素:
假設這是乙個
map_x上面對應的是:
map_y是:
所以如果我要讓第一行的12和98換位置,那麼
map_x:
3 1 2 0
0 1 2 3
0 1 2 3
map_y不變
而我們表示畫素的的時候12是srcimage.at(0,0) 98是srcimage.at(0,3);
簡寫a(i1,j1),a(i1,j2);很容易誤認為換j,而這裡map_x可以看成是在螢幕x軸(左上角橫著的)的值,map_y可以看成是螢幕y軸(左上角往下)的值,那麼map_x存的是畫素表示中的j值(列),map_y存的是畫素表示中的i值(行).這和用影象構建乙個矩形是一樣的image.cols是寬,image.row是高.
remap的那些事
月14日 今天還在看啟動 看到target.c這裡。先說說target.c的職責。target.c檔案包含和目標初始化相關的 如remap設定 系統時鐘設定和儲存器加速模組設定等,以及irq和fiq的異常處理空函式。好吧,這裡 看到了remap就好好查資料把它搞清楚咯!其實我前面看過這個了,只是人上...
OpenCV的雙目相機remap
雙目相機的remap主要是為了解決 極線對齊 的問題,需要輸入相機的內外引數,分別產生左圖x方向 y方向和右圖x方向 y方向的remap 並由這個 按照lut對原影象進行 極限校正 對極幾何是雙目相機立體標定的數學基礎,相關知識點參考 主要思路是 1 讀入雙目相機的內外引數 filestorage ...
矩陣的困惑
include stdafx.h include include include include pragma comment lib,cv.lib pragma comment lib,cvcam.lib pragma comment lib,cxcore.lib pragma comment l...