mirror of
https://github.com/ultralytics/yolov5.git
synced 2025-06-03 14:49:29 +08:00
Faster HSV augmentation (#3462)
remove datatype conversion process that can be skipped
This commit is contained in:
parent
d40481acc5
commit
c37f072ba7
@ -655,12 +655,12 @@ def augment_hsv(img, hgain=0.5, sgain=0.5, vgain=0.5):
|
|||||||
hue, sat, val = cv2.split(cv2.cvtColor(img, cv2.COLOR_BGR2HSV))
|
hue, sat, val = cv2.split(cv2.cvtColor(img, cv2.COLOR_BGR2HSV))
|
||||||
dtype = img.dtype # uint8
|
dtype = img.dtype # uint8
|
||||||
|
|
||||||
x = np.arange(0, 256, dtype=np.int16)
|
x = np.arange(0, 256, dtype=r.dtype)
|
||||||
lut_hue = ((x * r[0]) % 180).astype(dtype)
|
lut_hue = ((x * r[0]) % 180).astype(dtype)
|
||||||
lut_sat = np.clip(x * r[1], 0, 255).astype(dtype)
|
lut_sat = np.clip(x * r[1], 0, 255).astype(dtype)
|
||||||
lut_val = np.clip(x * r[2], 0, 255).astype(dtype)
|
lut_val = np.clip(x * r[2], 0, 255).astype(dtype)
|
||||||
|
|
||||||
img_hsv = cv2.merge((cv2.LUT(hue, lut_hue), cv2.LUT(sat, lut_sat), cv2.LUT(val, lut_val))).astype(dtype)
|
img_hsv = cv2.merge((cv2.LUT(hue, lut_hue), cv2.LUT(sat, lut_sat), cv2.LUT(val, lut_val)))
|
||||||
cv2.cvtColor(img_hsv, cv2.COLOR_HSV2BGR, dst=img) # no return needed
|
cv2.cvtColor(img_hsv, cv2.COLOR_HSV2BGR, dst=img) # no return needed
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user