程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

python-opencv rotation correction

編輯:Python
1. 尋找最小外接矩形,The input parameter is the contour,輸出為rect對象.
2. rect[0]is the center point of the smallest circumscribed rectangle;
3. rect[1]are the length and width of the smallest enclosing rectangle
4. rect[0]為旋轉角度
rotatedRect = cv2.minAreaRect(contours[i])

5. cv2.getRotationMatrix2D計算旋轉矩陣
6. cv2.warpAffinePerform rotation correction
angle = cv2.minAreaRect(contours[i])[-1]
h, w = img1.shape[:2]
center = (w//2, h//2)
M = cv2.getRotationMatrix2D(center, angle, 1.0)
rotated = cv2.warpAffine(img1, M, (w, h), flags=cv2.INTER_CUBIC, borderMode=cv2.BORDER_REPLICATE)
1. cv2.getRectSubPix(img,(height,width),(x,y)) 截取img中以(x,y)為中心,h為高,wfor wide images
crop_img = cv2.getRectSubPix(rotated,(int(mingAreaRect[1][0]), int(mingAreaRect[1][1])), mingAreaRect[0])

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved