基于python-opencv3實現(xiàn)圖像顯示和保存操作
基于python-opencv3的圖像顯示和保存操作,具體代碼如下所示:
import cv2 as cv import numpy as np #導入庫 print("-------------------------------") image = cv.imread("D:/1.jpeg") #寫入圖像 cv.imshow("image",image) #顯示 cv.waitKey() #等待 cv.destroyAllWindows() #關(guān)閉所有窗口 cv.imwrite("D:\\2.jpeg",image) #保存圖像
首先要導入cv2 和 numpy函數(shù)庫,第四行的cv.imread()
函數(shù)用于寫入一個圖像,imred()函數(shù)原型Mat imread(const String& filename,int flags = IMREAD_COLOR);
返回Mat對象,第一個參數(shù)是文件的絕對路徑,但并不是支持所有文件對象,它支持的文件如下:
l Windows bitmaps - *.bmp, *.dib (always supported)
l JPEG files - *.jpeg, *.jpg, *.jpe (see the Notes section)
l JPEG 2000 files - *.jp2 (see the Notes section)
l Portable Network Graphics - *.png (see the Notes section)
l WebP - *.webp (see the Notes section)
l Portable image format - *.pbm, *.pgm, *.ppm *.pxm, *.pnm (always supported)
l Sun rasters - *.sr, *.ras (always supported)
l TIFF files - *.tiff, *.tif (see the Notes section)
l OpenEXR Image files - *.exr (see the Notes section)
l Radiance HDR - *.hdr, *.pic (always supported)
l Raster and Vector geospatial data supported by Gdal (see the Notes section)
需要注意的是函數(shù)并不是靠識別后綴名,而是靠識別內(nèi)容的編碼。
其實,我們生活中常用的圖像格式都是可以識別的,所以基本不用擔心這個問題。
第二個參數(shù)可以將原圖像進行一定的轉(zhuǎn)換,此參數(shù)很重要,不要輕易設(shè)置,默認是IMREAD_LOAD_GDAL 即使用gdal驅(qū)動程序加載圖像,常用的有以下幾種:
l IMREAD_UNCHANGED 加載原圖,否則可能會被剪裁
l IMREAD_GRAYSCALE 加載單通道灰度圖像
l IMREAD_COLOR 加載三通道BGR圖像
其他的基本不會用到,也就不再贅述。
下面一行cv.imshow()是顯示圖像,其參數(shù)列表(“圖像名”,圖像),
Cv.waitKey()是等待函數(shù),沒有這個函數(shù),會立刻退出,看不到圖像,
參數(shù)列表(【delay】):delay=0(無限等待),delay>0(等待delayms),delay<0(等待任意鍵單擊)
Cv.destroyAllWindows()是在運行完程序后關(guān)閉所有的窗口,這個是不必須的,但為了好的編程習慣應(yīng)該這么做,。
最后,cv.imwrite(),則是保存圖像了,其參數(shù)(路徑名,圖像名),即把想要保存的圖像保存到指定的路徑里(例如“D:/Ambitio/demo.jpeg”即把圖像保存到D的Ambitio文件夾中,名字為demo,格式為jpeg)
總結(jié)
以上所述是小編給大家介紹的基于python-opencv3的圖像顯示和保存操作 ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
Python?OpenCV超詳細講解讀取圖像視頻和網(wǎng)絡(luò)攝像頭
OpenCV用C++語言編寫,它具有C?++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac?OS,OpenCV主要傾向于實時視覺應(yīng)用,并在可用時利用MMX和SSE指令,本篇文章帶你了解OpenCV讀取圖像視頻與網(wǎng)絡(luò)攝像頭的方法2022-04-04python Socket網(wǎng)絡(luò)編程實現(xiàn)C/S模式和P2P
這篇文章主要介紹了python Socket網(wǎng)絡(luò)編程實現(xiàn)C/S模式和P2P,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-06-06Python利用zhconv模塊進行簡繁體字轉(zhuǎn)換的案例演示
zhconv是一個Python庫,提供了簡體字和繁體字之間的轉(zhuǎn)換功能,本教程將向你展示如何使用zhconv模塊來實現(xiàn)簡繁體字的互轉(zhuǎn),并附帶一個案例演示,感興趣的朋友可以參考一下2024-05-05Python+Pyecharts實現(xiàn)散點圖的繪制
散點圖是指在回歸分析中,數(shù)據(jù)點在直角坐標系平面上的分布圖,散點圖表示因變量隨自變量而變化的大致趨勢,據(jù)此可以選擇合適的函數(shù)對數(shù)據(jù)點進行擬合。本文將利用Python Pyecharts實現(xiàn)散點圖的繪制,需要的可以參考一下2022-06-06