import cv2 import numpy as np # 1. Citim imaginea img = cv2.imread("car.jpg") hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV) # 2. Segmentare pe culoare (de ex. albastru) lower_blue = (50, 150, 50) upper_blue = (140, 255, 255) mask = cv2.inRange(hsv, lower_blue, upper_blue) # 3. Kernel pentru morfologie (mărimea influențează agresivitatea curățării) kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5)) # 4. Opening – elimină zgomotul mic (puncte izolate) mask_open = cv2.morphologyEx(mask, cv2.MORPH_OPEN, kernel) # 5. Closing – umple găurile mici din interiorul obiectului mask_clean = cv2.morphologyEx(mask_open, cv2.MORPH_CLOSE, kernel) # 6. Aplicăm masca curățată peste imagine result = cv2.bitwise_and(img, img, mask=mask) # 7. Afișare rezultate cv2.imshow("Original", img) cv2.imshow("Masca initiala", mask) cv2.imshow("Dupa OPEN (fara zgomot)", mask_open) cv2.imshow("Dupa OPEN + CLOSE (curat)", mask_clean) cv2.imshow("Rezultat final", result) cv2.waitKey(0) cv2.destroyAllWindows()