opencv常見操作

2021-09-02 23:14:05 字數 1274 閱讀 7689

cv2.resize

傳的大小是寬高不是高寬, 是[width, height], 不是[height, width]

影象座標和python numpy矩陣

opencv關於影象座標和numpy 陣列關於同樣位置座標問題。在opencv中,以左上角為起點,向右是x座標,向下是y座標,而在numpy中,向右是列,向下是行,在中的座標(x,y),在numpy中則是(y,x),因此在對座標操作的時候需要考慮到這一點。

bgr to rgb

python 通過cv2.imread讀取的影象是bgr通道的,一般其它程式使用都是rgb通道,因此讀完之後需要進行通道轉換, 建議使用b,g,r = cv2.split(img) img = cv2.merge([r,g,b])這種方法來進行通道轉換. 使用img = cv2.cvtcolor(img, cv2.color_bgr2rgb),程式是建議先進行img /= 255.操作,使得img變成0~1範圍.所以建議還是直接使用第一種方法, 簡單快捷明確又不會對原圖造成其它影響.

video_capture = cv2.videocapture(video_path)

fps = video_capture.get(cv2.cap_prop_fps)

video_capture.set(cv2.cap_prop_pos_frames, fps*(start_frame_idx))

上畫點, 畫線, 寫文字

cv::line(img, single_point_1, single_point_2, (30, 144, 255), 2)

cv2.circle(img, (x,y), 2, (0, 255, 0), -1)

cv2.puttext(img, str(i), (x,y), cv2.font_hershey_complex, 1, (0, 0, 255), 1)

cv2.rectangle(img, (bbox[0], bbox[1]), (bbox[2], bbox[3]), (255, 0, 0))

opencv中關於畫素的常見操作

一 獲取影象畫素指標 mat.ptr int i 0 獲取畫素矩陣的指標,索引i表示第幾行,從0開始計行數。獲得當前行指標const uchar current myimage.ptr row 獲取當前畫素點p row,col 的畫素值 p row,col current col 二 畫素範圍處理s...

OpenCV常見錯誤

其實實際操作中遇到的是第二種情況,我在做相機標定的時候,通過檔案函式匯入的時候,在匯入的檔名的 txt 檔案中,後面多加了幾行換行,導致檔案在識別不到名稱,還要輸出,因此導致錯誤。如何發現的 因為我只匯入了14張,但輸出框內卻顯示到了15,然後看了這位博主的部落格,有所感悟,將文字匯入檔案的換行符去...

學習 Opencv 常見介面

opencv改變影象大小的操作 void resize inputarray src,outputarray dst,size dsize,double fx 0,double fy 0,int interpolation inter linear 各個引數的意義比較直觀,但是需要注意的是 dsiz...