5-python影象處理opencv(1.讀圖,顯示,轉換,儲存)
通過opencv的python介面來,呼叫opencv函式實現,對圖片的載入,顯示,顏色轉換和儲存等
由於:opencv中使用到了python的許多第三方外掛,例如 numpy等,以上鍊接均提供相應配置
一.讀圖
opencv提供了一個很簡單的讀圖方法, cv2.imread(path)
img = cv2.imread("test1.jpg")
二.顯示
opencv 中顯示圖片需要兩步
1.建立一個視窗
cv2.namedWindow("myImage")
2.將圖片顯示到視窗上
cv2.imshow("myImage",img)
為了防止一閃而過
cv2.waitKey(0) #暫停一下
關閉所有視窗
cv2.destroyAllWindows()
三.色彩變換
opencv中提供了方法 cvtColor(img,cv2.COLOR_RGB2HSV) 建立影象副本,同時也可以對圖片進行色彩變換
emptyImage3 = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
有個小的規律,cv.COLOR 後面的東西都有個 2 (two) –> to 即:從什麼轉化成什麼具體轉換如下圖:(圖借鑑的)
四.儲存
儲存,可以使用opencv中的 imwrite(path,img,[int(cv2.IMWRITE_JPEG_QUALITY), 100])
第三個是可選引數不填則預設按照原格式儲存
cv2.imwrite("C:/test/save.jpg", img,[int(cv2.IMWRITE_JPEG_QUALITY), 100])
特定格式儲存的引數編碼:
JPEG:params表示0到100的圖片質量(CV_IMWRITE_JPEG_QUALITY),預設值為95;
PNG:params表示壓縮級別(CV_IMWRITE_PNG_COMPRESSION),從0到9,其值越大,壓縮尺寸越小,壓縮時間越長;
PPM / PGM / PBM:params表示二進位制格式標誌(CV_IMWRITE_PXM_BINARY),取值為0或1,預設值是1。
測試案例
#coding=utf-8
#
# 使用opencv做一個小案例,實現
# 對圖片的讀取,顯示,
# 圖片色彩轉化 從RGB轉換為HSV
# 儲存
import cv2
#讀圖 中文路精可能有問題
img = cv2.imread('C:/test/opencvTest/demoCV1/test.jpg')
# 建立視窗
cv2.namedWindow('imgTest1')
# 顯示
cv2.imshow('imgTest1',img)
# 色彩轉換
img2 = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
# 建立視窗
cv2.namedWindow('imgTest2')
# 顯示
cv2.imshow('imgTest2',img2)
#暫停
cv2.waitKey(0)
#關閉所有視窗
cv2.destroyAllWindows()
#儲存位jpg格式,,縮小比率為 0.8
cv2.imwrite("C:/test/opencvTest/demoCV1/save.jpg", img2,[int(cv2.IMWRITE_JPEG_QUALITY), 80])
測試結果:
相關推薦
5-python影象處理opencv(1.讀圖,顯示,轉換,儲存)
通過opencv的python介面來,呼叫opencv函式實現,對圖片的載入,顯示,顏色轉換和儲存等 由於:opencv中使用到了python的許多第三方外掛,例如 numpy等,以上鍊接均提供相
Python 影象處理 OpenCV (1):入門
![](https://cdn.geekdigging.com/opencv/opencv_header.png) ## 引言 又開一個新的系列分享,對影象處理感興趣的同學可以關注這個系列。 更新頻率儘量保持一週兩到三次推送。 新系列第一件事兒當然是資源推薦,下面是一些有關 OpenCV 的資源連結:
Python 影象處理 OpenCV (5):影象的幾何變換
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
Python 影象處理 OpenCV (2):畫素處理與 Numpy 操作以及 Matplotlib 顯示影象
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) ## 普通
Python 影象處理 OpenCV (3):影象屬性、影象感興趣 ROI 區域及通道處理
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
Python 影象處理 OpenCV (4):影象算數運算以及修改顏色空間
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
Python 影象處理 OpenCV (6):影象的閾值處理
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
Python 影象處理 OpenCV (7):影象平滑(濾波)處理
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
Python 影象處理 OpenCV (9):影象處理形態學開運算、閉運算以及梯度運算
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
Python 影象處理 OpenCV (10):影象處理形態學之頂帽運算與黑帽運算
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
Python 影象處理 OpenCV (12): Roberts 運算元、 Prewitt 運算元、 Sobel 運算元和 Laplacian 運算元邊緣檢測技術
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
Python 影象處理 OpenCV (13): Scharr 運算元和 LOG 運算元邊緣檢測技術
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
Python 影象處理 OpenCV (14):影象金字塔
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
Python 影象處理 OpenCV (15):影象輪廓
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
Python 影象處理 OpenCV (16):影象直方圖
![](https://cdn.geekdigging.com/opencv/opencv_header.png) 前文傳送門: [「Python 影象處理 OpenCV (1):入門」](https://www.geekdigging.com/2020/05/17/5513454552/) [「Pyt
影象處理系列(1):測地線動態輪廓(geodesic active contour)
動態輪廓是影象分割的一個熱點,從早期的snake,就有很多的優化版,測地線動態輪廓(GAC)就是其中之一。總體來說,其摒棄了snake對引數的依賴,並加入了水平集,使得輪廓曲線更貼近目標物的拓撲結構。 經典的動態輪廓模型(activecontour model)的能量公式為
opencv學習(1)——讀入並顯示一幅圖片
window7 64位 +vs2013+opencv3.0.0 #include<opencv2/opencv.hpp> using namespace cv; int main(int argc,char*argv[]) { Mat
【影象處理——OpenCV】(1)
目錄 1、測試程式碼 2、報錯如下: 3、報錯原因:未新增庫 4、解決方法: 1、測試程式碼 #include <iostream> #include "stdafx.h" #include <opencv2/core/core.hpp> #inclu
opencv+Python影象處理進階教程學習總結記錄(一)
教程:2 opencv+python影象處理進階 講解老師:賈志剛 1.1 進階主要內容概述:影象卷積與應用,直方圖應用,模板匹配,影象金字塔 1.2 模糊與卷積原理 上圖顯示為一維和二維的均值卷積示例 相關Api : blur 程式碼示例 import c
OpenCV-Python 影象處理(二):影象的讀取、顯示與儲存
說明: 本系列主要是學習OpenCV-Python文件的個人筆記。 很少有理論的敘述,都是函式名、引數描述、作用、應用場景、程式碼、效果圖。簡單明瞭,即學即用。 目標 學會讀取、顯示、儲存單張影象 對應的函式分佈為:cv2.imread() ,