I have one image with some structure (rectangle) That all of them are approximately green. I used this code to find a number of those objects in the image and make a contour around them. Their hue value will change over time. I need to add one code to extract the average of the new hue value in each counter that we detect in the previous step and save them in a new array. My mask, I want to find The average hue value inside the mask(or detected contour) after one hour
import cv2
import numpy as np
img = cv2.imread(r"Image.JPG")
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
lower_range = np.array([75, 50, 50])
upper_range = np.array([165, 200, 255])
mask = cv2.inRange(hsv, lower_range, upper_range)
(cnt, hierarchy) = cv2.findContours(mask.copy(),cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE)
print("Number of object in the image is : ", len(cnt))
rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
count=cv2.drawContours(rgb, cnt, -2, (0, 0, 0), 2)
cv2.imshow('count',count)
cv2.waitKey(0)
cv2.destroyAllWindows()
source https://stackoverflow.com/questions/71257214/extracting-hue-value-from-specific-part-of-image
Comments
Post a Comment