【问题标题】:changing hsv values of an image in opencv python isnt working在opencv python中更改图像的hsv值不起作用
【发布时间】:2019-11-23 06:21:35
【问题描述】:

我试图在 opencv python 中设置图像的 HSV 的最小值和最大值,但在运行代码后我只能看到一个空白矩形框。

import cv2
import sys
import numpy as np

# Load in image
image = cv2.imread('power.jpg')


# Set minimum and max HSV values to display
lower = np.array([0, 209, 0])
upper = np.array([179, 255, 236])

# Create HSV Image and threshold into a range.
hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
mask = cv2.inRange(hsv, lower, upper)
output = cv2.bitwise_and(image,image, mask= mask)


# Display output image
cv2.imshow('image',output)

【问题讨论】:

    标签: python opencv hsv


    【解决方案1】:

    我能够解决它。

    import numpy as np
    import cv2
    
    img = cv2.imread( "power.jpg" )
    
    ## convert to hsv
    hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
    
    ## mask of red (36,0,0) ~ (70, 255,255)
    mask = cv2.inRange(hsv, (0, 209, 0), (179, 255,236))
    bak = img.copy()
    
    # Show only red
    #bak[mask > 0] = (0, 0, 255)
    imask = mask>0
    green = np.zeros_like(img, np.uint8)
    green[imask] = img[imask]
    
    ## save 
    cv2.imwrite("image.png", green)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-03
      • 1970-01-01
      • 2011-05-28
      • 1970-01-01
      相关资源
      最近更新 更多