Я пытаюсь запустить некоторый код, используя numba. Я заметил, что код должен быть в форме функции. У меня есть следующий код. Он извлекает кадры (изображения RGB) из видео и добавляет (сохраняет) их в список. Пожалуйста, обратитесь к следующему коду:
#opencv 4
@jit(nopython=True)
def video_to_frames(col):
frame_list = []
cap = cv2.VideoCapture('/media/michael/extHDD/Kaggle/DeepFAke/DF_all/{}'.format(col_name[i]))
while(cap.isOpened()):
ret, frame = cap.read()
if ret == False:
break
frame_list.append(frame) # list of all the frames in fake video
cap.release()
return frame_list
Он запускается в следующем фрагменте кода:
#Main piece of code
first_for_loop = tqdm(range(0,100000,5))
for i in range(len(first_for_loop)):
if str(df2['original'][i]).endswith(".mp4"):
if len(video_to_frames(df2['original']))==len(video_to_frames(df2['fake_name'])):
d1 = diff(video_to_frames(df2['original']),video_to_frames(df2['fake_name'])) #diff is another function
list_of_dis = list_of_distance(d1) #another function
max_value = max(list_of_dis)
max_index = list_of_dis.index(max_value)
cv2.imwrite('/home/michael/DFDC_New/FakeTrain/frame_'+str(df2['fake_name'][i])[:-4]+'.jpg',
fake_frame_list[max_index])
cv2.destroyAllWindows()
Однако, когда я запускаю этот код, я получаю сообщение об ошибке при запуске основной кусок кода . Пожалуйста, найдите его ниже.
Вывод;
Кто-нибудь сможет мне помочь в этом отношении.
Спасибо и наилучшими пожеланиями
Майкл