国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > Python > 正文

Python+OpenCV+圖片旋轉并用原底色填充新四角的例子

2024-09-09 19:03:14
字體:
來源:轉載
供稿:網(wǎng)友

我就廢話不多說了,直接上代碼吧!

import cv2from math import fabs, sin, cos, radiansimport numpy as npfrom scipy.stats import modedef get_img_rot_broa(img, degree=45, filled_color=-1): """ Desciption:  Get img rotated a certain degree, and use some color to fill 4 corners of the new img. """ # 獲取旋轉后4角的填充色 if filled_color == -1: filled_color = mode([img[0, 0], img[0, -1],    img[-1, 0], img[-1, -1]]).mode[0] if np.array(filled_color).shape[0] == 2: if isinstance(filled_color, int):  filled_color = (filled_color, filled_color, filled_color) else: filled_color = tuple([int(i) for i in filled_color]) height, width = img.shape[:2] # 旋轉后的尺寸 height_new = int(width * fabs(sin(radians(degree))) +   height * fabs(cos(radians(degree)))) width_new = int(height * fabs(sin(radians(degree))) +   width * fabs(cos(radians(degree)))) mat_rotation = cv2.getRotationMatrix2D((width / 2, height / 2), degree, 1) mat_rotation[0, 2] += (width_new - width) / 2 mat_rotation[1, 2] += (height_new - height) / 2 # Pay attention to the type of elements of filler_color, which should be # the int in pure python, instead of those in numpy. img_rotated = cv2.warpAffine(img, mat_rotation, (width_new, height_new),     borderValue=filled_color) # 填充四個角 mask = np.zeros((height_new + 2, width_new + 2), np.uint8) mask[:] = 0 seed_points = [(0, 0), (0, height_new - 1), (width_new - 1, 0),   (width_new - 1, height_new - 1)] for i in seed_points: cv2.floodFill(img_rotated, mask, i, filled_color) return img_rotated

以上這篇Python+OpenCV+圖片旋轉并用原底色填充新四角的例子就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網(wǎng)之家。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 浮山县| 晋州市| 东光县| 祁东县| 山阳县| 宁强县| 潮安县| 和田县| 博乐市| 新野县| 襄樊市| 五莲县| 谢通门县| 祁连县| 阳山县| 滦南县| 泰顺县| 镇雄县| 遵义市| 泽普县| 陇西县| 伊川县| 石河子市| 荥经县| 巴林右旗| 河间市| 宣武区| 西丰县| 上思县| 昆明市| 周至县| 丹寨县| 新平| 霍州市| 嘉善县| 凯里市| 东乌珠穆沁旗| 长宁县| 西畴县| 吴堡县| 荃湾区|