DAYTwo

发布于:2023-01-01 ⋅ 阅读:(286) ⋅ 点赞:(0)
import cv2
import numpy as np

img =np.zeros((200, 200),dtype=np.unit8)
img[50:150,50:150] =255

ret,thresh =cv2.threshold(img, 127, 255, 0)
image, contours, hierarchy=cv2.findContours(thresh, cv2. RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
color = cv2.cvtColor(img, cv2.COLOR_GRAY3BGR)
img = cv2.drawContours(color, contours, -1, (0,255,0), 2)


cv2.imshow('contours', color)
cv2.waitKey(0)
cv2.destroyAllWindows()
  • IMREAD_UNCHANDED(<0) 表示加载原图,不做任何改变
  • IMREAD_GRAYSCALE(0) 表示吧原图作为灰度图像加载进来
  • IMREAD_COLOR(>0) 表示把原图作为 RGB 图像加载进来
cur_img = img.copy()
#颜色的码
# b,g,r = cv.split(img)
# print(b)

# 注意参数的变化,绿色
# cur_img[:,:,0] = 0
# cur_img[:,:,2] = 0
# cv.imshow('G',cur_img)

# 注意参数的变化,红色
# cur_img[:,:,0] = 0
# cur_img[:,:,1] = 0
# cv.imshow('R',cur_img)

# 注意参数的变化,蓝色
cur_img[:,:,1] = 0
cur_img[:,:,2] = 0
cv.imshow('B',cur_img)
import matplotlib.pyplot as plt

img = cv.imread("D:\display/gan.jpg",)

# 定义图片显示大小
top_size,buttom_size,left_size,right_size = (50,50,50,50)

# 复制法,也就是复制最边缘像素
replicate = cv.copyMakeBorder(img,top_size,buttom_size,left_size,right_size,borderType=cv.BORDER_REPLICATE)

# 反射法,对感兴趣的图像中的像素在两边进行复制例如:fedcbajabcdefghjhgfedcb
reflect = cv.copyMakeBorder(img,top_size,buttom_size,left_size,right_size,borderType=cv.BORDER_REFLECT)

# 反射法,也就是以最边缘像素为轴、对称、gfedcbjabcdefghigfedcba
reflect01 = cv.copyMakeBorder(img,top_size,buttom_size,left_size,right_size,borderType=cv.BORDER_REFLECT_101)

# 外包装法 cdeifghjabcdefghjabcdefg
wrap = cv.copyMakeBorder(img,top_size,buttom_size,left_size,right_size,borderType=cv.BORDER_WRAP)

# 常量法,常数值填充
constant = cv.copyMakeBorder(img,top_size,buttom_size,left_size,right_size,borderType=cv.BORDER_CONSTANT)

# 设置图像位置
plt.subplot(231)
# 设置图像显示
plt.imshow(img,'gray')
# 设置标题                         
plt.figure('subplot demo')
plt.title('ORIGINAL')

plt.subplot(232)
plt.imshow(replicate,'gray')
plt.title("REPLICATE")

plt.subplot(233)
plt.imshow(reflect,'gray')
plt.title("REFLECT")

plt.subplot(234)
plt.imshow(reflect01,'gray')
plt.title("REPLICATE01")

plt.subplot(235)
plt.imshow(wrap,'gray')
plt.title("WRAP")

plt.subplot(236)
plt.imshow(constant,'gray')
plt.title("CONSTANT")

# 图像显示
plt.show()

# 图像保存 # 第一个参数是图像要保存的路径,第二个图像是要保存的图像 cv.imwrite("./demo.jpg",img)

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到