Python中OpenCV的基礎(chǔ)知識
點擊上方“小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂” 重磅干貨,第一時間送達(dá) ![]()
設(shè)置虛擬環(huán)境
python3 -m pip install virtualenv
python3 -m venv my_venv
source my_venv/bin/activate
安裝 OpenCV
sudo apt update
sudo apt install python3-opencv
pip install opencv-python
打開圖像
import cv2
image = cv2.imread("images/messi.jpg")
cv2.imshow("Original image", image)
print("Original image shape:", image.shape)
更改圖像色彩空間
image_grayscale = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
cv2.imshow(“Grayscale image”, image_grayscale)
print("Grayscale image shape:", image_grayscale.shape)
編輯圖像通道
image_red = image.copy()
image_red[:, :, :2] = 0
cv2.imshow("Red image", image_red)
print("Red image shape:", image_red.shape)
旋轉(zhuǎn)圖像
width, height, _ = image.shape
center = (width//2, height//2)
rotation_matrix = cv2.getRotationMatrix2D(center, 45, 1.0)
image_rotated = cv2.warpAffine(image, rotation_matrix, (width, height))
cv2.imshow(“Rotated image”, image_rotated)
調(diào)整圖像大小
new_size = (width//3, height//3)
image_resized = cv2.resize(image, new_size, interpolation=cv2.INTER_LINEAR)
cv2.imshow(“Resized image”, image_resized)
print(“Resized image shape:”, image_resized.shape)
將繪圖插入圖像
image_line = cv2.line(image.copy(), (0, 0), (height//2, width//2), (0, 255, 255), 10)
cv2.imshow(“Image with line”, image_line)
image_rectangle = cv2.rectangle(image.copy(), (500, 150), (900, 550), (0, 255, 255), 5)
cv2.imshow(“Image with rectangle”, image_rectangle)
image_circle = cv2.circle(image.copy(), (300, 300), 200, (0, 255, 255), 5)
cv2.imshow(“Image with circle”, image_circle)
完整的腳本
下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程
在「小白學(xué)視覺」公眾號后臺回復(fù):擴(kuò)展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺、目標(biāo)跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。
下載2:Python視覺實戰(zhàn)項目52講 在「小白學(xué)視覺」公眾號后臺回復(fù):Python視覺實戰(zhàn)項目,即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計數(shù)、添加眼線、車牌識別、字符識別、情緒檢測、文本內(nèi)容提取、面部識別等31個視覺實戰(zhàn)項目,助力快速學(xué)校計算機(jī)視覺。
下載3:OpenCV實戰(zhàn)項目20講 在「小白學(xué)視覺」公眾號后臺回復(fù):OpenCV實戰(zhàn)項目20講,即可下載含有20個基于OpenCV實現(xiàn)20個實戰(zhàn)項目,實現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。
交流群
歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學(xué)影像、GAN、算法競賽等微信群(以后會逐漸細(xì)分),請掃描下面微信號加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進(jìn)入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~
評論
圖片
表情

