import cv2 import image_utils for i in range(0, 10): video = cv2.VideoCapture('test samples/video-' + str(i) + '.avi') if video.isOpened() == 0: print("Error!!!") idx = 0 while video.isOpened(): ret, frame = video.read() if ret: removed_noise_frame = image_utils.image_bin(image_utils.image_gray(frame), 200) removed_noise_frame = image_utils.erode(image_utils.dilate(removed_noise_frame)) cv2.imwrite('noiseless_videos/video_' + str(i) + '/frame_' + str(idx) + '.jpg', removed_noise_frame) if cv2.waitKey(1) & 0xFF == ord('q'): break else: break print(idx) idx = idx + 1 video.release()
" ==========================\n\n") file1.close() img_blue = line_utils.get_only_line(0, frame.copy()) img_green = line_utils.get_only_line(1, frame.copy()) lines_blue = line_utils.get_line(img_blue) lines_green = line_utils.get_line(img_green) #img_bin = image_utils.erode_large(image_utils.dilate_large(img)) #dodata spolj dilatacija #sa dvostruke spolj dil promenjeno na bez spolj dil #ovde je bilo umesto frame img_bin, da vidimo kakve cu rez dobiti sa ovim lines_blue_pixels = line_utils.convert_lines_to_pixels( lines_blue, image_utils.image_gray(frame)) lines_green_pixels = line_utils.convert_lines_to_pixels( lines_green, image_utils.image_gray(frame)) img_bin = image_utils.image_bin(image_utils.image_gray(frame), 200) img_bin_ed = image_utils.dilate( image_utils.erode(image_utils.dilate(img_bin, 1), 1), 2) cv2.imwrite( 'noiseless_videos/video_' + str(i) + '/frame_' + str(idx) + '.jpg', img_bin_ed) selected_regions, numbers, dimensions = video_utils.select_roi( frame.copy(), img_bin_ed, idx, i)
v_h = int(video.get(4)) print(v_w) print(v_h) new_video = cv2.VideoWriter('test samples/video_gr-' + str(i) + '.avi', cv2.VideoWriter_fourcc('M', 'J', 'P', 'G'), 40, (v_w, v_h)) idx = 0 while video.isOpened(): ret, frame = video.read() if ret: img = image_utils.image_bin(image_utils.image_gray(frame)) img_bin = image_utils.erode(image_utils.dilate(img)) selected_regions, numbers = video_utils.select_roi( frame.copy(), img_bin, idx, i) cv2.imwrite( "contoured_frames/video_" + str(i) + "/frame_" + str(idx) + ".jpg", selected_regions) new_video.write(selected_regions) cv2.imshow("Video" + str(i), selected_regions) idx = idx + 1 if cv2.waitKey(1) & 0xFF == ord('q'): break
import image_utils import training_utils import numpy as np image_color = image_utils.load_image('test samples/test_samples(0,25).png') img = image_utils.image_bin(image_utils.image_gray(image_color)) img_bin = image_utils.erode(image_utils.dilate(img)) alphabet = [] selected_regions, numbers, alphabet = image_utils.select_roi( image_color.copy(), img, alphabet) image_utils.display_image(selected_regions) print(alphabet) inputs = image_utils.prepare_for_ann(numbers) outputs = training_utils.convert_output(alphabet) ann = training_utils.load_modell() #print(outputs) result = ann.predict(np.array(inputs, np.float32)) final_alphabet = training_utils.convert_output([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) print(result) print(training_utils.display_result(result, final_alphabet, alphabet))