Advertisement
wyx0311

电宇智控视觉组2_3

May 31st, 2024
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.91 KB | Source Code | 0 0
  1. import cv2
  2. import numpy as np
  3.  
  4. # 读取图像
  5. image = cv2.imread('Tree.png')
  6.  
  7. # 将图像从 BGR 转换为 HSV
  8. hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
  9.  
  10. # 定义绿色的 HSV 范围
  11. lower_green = np.array([15, 35, 35])
  12. upper_green = np.array([85, 255, 255])
  13.  
  14. # 创建绿色区域的掩码
  15. mask = cv2.inRange(hsv, lower_green, upper_green)
  16.  
  17. # 获取绿色区域的 V 值和 S 值
  18. green_v = hsv[:, :, 2]
  19. green_s = hsv[:, :, 1]
  20.  
  21. # 创建红色 HSV 图像
  22. red_hsv = hsv.copy()
  23.  
  24. red_hsv[:, :, 0] = 0
  25. red_hsv[:, :, 1] = green_s
  26. red_hsv[:, :, 2] = green_v
  27.  
  28. # 转换回 BGR
  29. red_bgr = cv2.cvtColor(red_hsv, cv2.COLOR_HSV2BGR)
  30.  
  31. # 将绿色部分替换为红色
  32. result = cv2.bitwise_and(image, image, mask=~mask) + cv2.bitwise_and(red_bgr, red_bgr, mask=mask)
  33.  
  34. # 显示结果图像
  35. cv2.imshow('1', image)
  36. cv2.imshow('2', result)
  37. cv2.waitKey(0)
  38. cv2.destroyAllWindows()
  39. cv2.imwrite('result_3.png', result)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement