opencv(py) 查看图片像素的行数 列数 通道数 像素总数

678 阅读2分钟
  •        Python : 3.8.11
  • opencv-python : 4.1.2.30
  • opencv-contrib-python : 4.1.2.30
  •          OS : Ubuntu Kylin 20.04
  •       Conda : 4.10.1
  •     Pycharm : 2021.1.3

代码示例

import cv2

image_path = "opencv-image.png"
# 灰度图
image = cv2.imread(image_path, cv2.IMREAD_GRAYSCALE)

print(image)
print(type(image))
print(image.shape)
print(image.size)
print(image.dtype)

cv2.imshow("image", image)
cv2.waitKey(2000)
cv2.destroyAllWindows()

print("------")

# 彩色图
image = cv2.imread(image_path, cv2.IMREAD_COLOR)

print(image)
print(type(image))
print(image.shape)
print(image.size)
print(image.dtype)

cv2.imshow("image", image)
cv2.waitKey(2000)
cv2.destroyAllWindows()

运行结果

cv-image-px-number-1.png

cv-image-px-number-2.png

/home/coder/anaconda3/bin/python3.8 /home/coder/PycharmProjects/pythonProject2/main.py
[[255 232 232 ... 226 255 255]
 [255 232 232 ... 226 255 255]
 [239 246 246 ... 255 248 248]
 ...
 [252 234 234 ... 240 250 250]
 [243 245 245 ... 254 252 252]
 [243 245 245 ... 254 252 252]]
<class 'numpy.ndarray'>
(454, 370)
167980
uint8
------
[[[255 255 255]
  [232 232 232]
  [232 232 232]
  ...
  [226 226 226]
  [255 255 255]
  [255 255 255]]

 [[255 255 255]
  [232 232 232]
  [232 232 232]
  ...
  [226 226 226]
  [255 255 255]
  [255 255 255]]

 [[239 239 239]
  [246 246 246]
  [246 246 246]
  ...
  [255 255 255]
  [248 248 248]
  [248 248 248]]

 ...

 [[252 252 252]
  [234 234 234]
  [234 234 234]
  ...
  [240 240 240]
  [250 250 250]
  [250 250 250]]

 [[243 243 243]
  [245 245 245]
  [245 245 245]
  ...
  [254 254 254]
  [252 252 252]
  [252 252 252]]

 [[243 243 243]
  [245 245 245]
  [245 245 245]
  ...
  [254 254 254]
  [252 252 252]
  [252 252 252]]]
<class 'numpy.ndarray'>
(454, 370, 3)
503940
uint8

Process finished with exit code 0

学习推荐


Python具有开源、跨平台、解释型、交互式等特性,值得学习。
Python的设计哲学:优雅,明确,简单。提倡用一种方法,最好是只有一种方法来做一件事。
代码的书写要遵守规范,这样有助于沟通和理解。
每种语言都有独特的思想,初学者需要转变思维、踏实践行、坚持积累。