OpenCV 教程(1) -- 基本图像处理

以下参照OpenCV官网进行OpenCV的学习。使用的环境为jupyter notebook. 代码注释中已经有了详细的说明,因此不再进行文字赘述。

import numpy as np
import cv2

# Load an color image in grayscale
# -1 represents IMREAD_COLOR -- Loads a clore image neglecting any transparency.
# 0 represents IMREAD_GRAYSCALE -- Loads image in grayscale mode.
# 1 represents IMREAD_UNCHANGED -- Loads image as such including alpha channel.
img1 = cv2.imread('download.jpg', -1)
img2 = cv2.imread('download.jpg', 0)
img3 = cv2.imread('download.jpg', 1)

cv2.imshow('image1', img1)
cv2.imshow('image2', img2)
cv2.imshow('image3', img3)
cv2.waitKey(0)
cv2.destroyAllWindows()

# Change the window size instead of automatic fitting
cv2.namedWindow('image', cv2.WINDOW_NORMAL)  # WINDOW_AUTOSIZE is Default
cv2.imshow('image', img1)
cv2.waitKey(0)
cv2.destroyAllWindows()

# Write an image named wimage.png
cv2.imwrite('wimage.png', img1)
img4 = cv2.imread('wimage.png', 0)
cv2.imshow('wimage', img4)
cv2.waitKey(0)
cv2.destroyAllWindows()
# Sum them up
# Load an image in grayscale, display it, save the iamge if you press 's' and exit
# or simply exit without saving if you press ESC key
img = cv2.imread('download.jpg', 0)
cv2.imshow('image', img)
k = cv2.waitKey(0) & 0xFF
if k == 27:
    cv2.destroyAllWindows()
elif k == ord('s'):
    cv2.imwrite('down-gray.png', img)
    cv2.destroyAllWindows()
# Using matplotlib
# Color image loaded by OpenCV is in BGR mode while Matplotlib displays in RGB mode.
import numpy as np
import cv2
import matplotlib.pyplot as plt

img = cv2.imread('download.jpg', 0)
plt.imshow(img, cmap='gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([]) # to hide tick values on X and Y axis
plt.show()

这里写图片描述

# Convertion of color image between OpenCV and Matplotlib
img5 = cv2.imread('download.jpg', 1)
cv2.imshow('original image', img5)
#print(img5)
# img6 = img5[::,::-1]
img6 = img5[:,:,::-1]
#print()
#print(img6)

plt.subplot(121); plt.imshow(img5)
plt.subplot(122); plt.imshow(img6)
plt.show()

cv2.waitKey(0)
cv2.destroyAllWindows()

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值