As I want to categorize and compare photos in terms of their brightness, I want to normalize the V values (HSV) to be between 0 and 1 - with 1 being the brightest. I use opencv with python. Thank you in advance!
CodePudding user response:
import cv2
import numpy as np
# Read an image
frame = cv2.imread("Path/to/img")
# Convert it to hsv
hsv = cv2.cvtColor(frame, cv.COLOR_BGR2HSV)
# Get the V channel
v=hsv[:,:,2]
# Convert it to float
v=v.astype(np.float32)
# Normalize to brightest value
v/=np.amax(v)