1. 程式人生 > >python3隨筆-opencv讀取圖像數據

python3隨筆-opencv讀取圖像數據

opencv 像素 ati 可用 pen 由於 flag 信息 string

如何安裝opencv-python

$pip3 install opencv-python

如何讀取圖像數據

import numpy as np
import cv2 as cv
img = cv.imread(‘1.png‘)
print(img)
print(img.dtype)

[[[200 228 197]
[200 228 197]
[200 228 197]
...
...
[200 228 197]
[200 228 197]
[200 228 197]]]

dtype(‘uint8‘)

使用下面函數

Mat cv::imread  (   const String &  filename,
int     flags = IMREAD_COLOR 
)       
Python:
retval  =   cv.imread(  filename[, flags]   )

imread函數具體說明

可以通過其行和列坐標訪問像素值。對於BGR映像,它返回一個藍、綠、紅值數組。對於灰度圖像,只返回相應的強度。數據讀取方式為:
img[行號,列號,:]

函數根據內容而不是文件擴展名確定圖像的類型。
在彩×××像的情況下,解碼後的圖像將以B G R順序存儲通道。
當使用IMREAD_GRAYSCALE時,如果可用,將使用編×××的內部灰度轉換。結果可能與cvtColor()的輸出不同
在Microsoft Windows OS和MacOSX上,帶有OpenCV映像(libjpeg、libpng、libtiff和libjasper)的編×××默認使用。因此,OpenCV總是可以讀取jpeg、png和tiff。在MacOSX上,還有一個使用本地MacOSX圖像閱讀器的選項。但是要註意的是,由於MacOSX中嵌入了顏色管理,當前這些本機圖像加載器提供的圖像像素值不同。

在Linux、BSD版本和其他類unix的開源操作系統上,OpenCV尋找OS映像提供的編×××。安裝相關的包(不要忘記開發文件,例如Debian和Ubuntu*中的“libjpeg-dev”)以獲得編×××支持或在CMake中打開OPENCV_BUILD_3RDPARTY_LIBS標誌。
在CMake中將WITH_GDAL標記設置為true和IMREAD_LOAD_GDAL來加載圖像的情況下,將使用GDAL驅動程序來解碼圖像,支持以下格式:光柵、向量。
如果EXIF信息嵌入到圖像文件中,將考慮EXIF方向,因此圖像將相應地旋轉,除非傳遞了IMREAD_IGNORE_ORIENTATION標記。

顯示圖像

cv.imshow(‘img‘,img)

python3隨筆-opencv讀取圖像數據