strawberryPicker / scripts /collect_dataset.py
Gareth
Initial clean commit for Hugging Face
efb1801
import cv2
import os
cap = cv2.VideoCapture(0)
if not cap.isOpened():
print("Cannot open camera")
exit()
good_dir = 'dataset/good'
bad_dir = 'dataset/bad'
os.makedirs(good_dir, exist_ok=True)
os.makedirs(bad_dir, exist_ok=True)
good_count = len(os.listdir(good_dir))
bad_count = len(os.listdir(bad_dir))
print("Press 'g' to save as good, 'b' to save as bad, 'q' to quit")
while True:
ret, frame = cap.read()
if not ret:
print("Can't receive frame")
break
cv2.imshow('Dataset Collection', frame)
key = cv2.waitKey(1) & 0xFF
if key == ord('g'):
filename = f'{good_dir}/good_{good_count:04d}.jpg'
cv2.imwrite(filename, frame)
good_count += 1
print(f"Saved {filename}")
elif key == ord('b'):
filename = f'{bad_dir}/bad_{bad_count:04d}.jpg'
cv2.imwrite(filename, frame)
bad_count += 1
print(f"Saved {filename}")
elif key == ord('q'):
break
cap.release()
cv2.destroyAllWindows()