harvitronix / five-video-classification-methods

Code that accompanies my blog post outlining five video classification methods in Keras and TensorFlow
https://medium.com/@harvitronix/five-video-classification-methods-implemented-in-keras-and-tensorflow-99cad29cc0b5
MIT License
1.18k stars 478 forks source link

Training using own Dataset #147

Open suheib-sherif opened 4 years ago

suheib-sherif commented 4 years ago

Hello there, Thanks for the great work, I have tested it with 101 Dataset and all went good. Now I want to train a model using my dataset, I converted all videos to .avi (from mp4) using ffmpeg. I followed a similar naming structure : testlist01.txt containing 30 videos [10 from each category] `Fighting/v_Fighting_g01_c01.avi Fighting/v_Fighting_g01_c02.avi Fighting/v_Fighting_g01_c03.avi Fighting/v_Fighting_g02_c01.avi Fighting/v_Fighting_g02_c02.avi ... Normal/v_Normal_g01_c01.avi Normal/v_Normal_g01_c02.avi Normal/v_Normal_g01_c03.avi Normal/v_Normal_g02_c01.avi Normal/v_Normal_g02_c02.avi ... Shooting/v_Shooting_g01_c01.avi Shooting/v_Shooting_g01_c02.avi Shooting/v_Shooting_g01_c03.avi Shooting/v_Shooting_g02_c01.avi Shooting/v_Shooting_g02_c02.avi ...

my trainlist01.text contains: Fighting/v_Fighting_g04_c01.avi 1 Fighting/v_Fighting_g04_c02.avi 1 Fighting/v_Fighting_g04_c03.avi 1 Fighting/v_Fighting_g04_c04.avi 1 Fighting/v_Fighting_g05_c01.avi 1 Fighting/v_Fighting_g05_c02.avi 1 ... Normal/v_Normal_g04_c01.avi 2 Normal/v_Normal_g04_c02.avi 2 Normal/v_Normal_g04_c03.avi 2 Normal/v_Normal_g04_c04.avi 2 Normal/v_Normal_g05_c01.avi 2 Normal/v_Normal_g05_c02.avi 2 ... Shooting/v_Shooting_g04_c01.avi 3 Shooting/v_Shooting_g04_c02.avi 3 Shooting/v_Shooting_g04_c03.avi 3 Shooting/v_Shooting_g04_c04.avi 3 Shooting/v_Shooting_g05_c01.avi 3 Shooting/v_Shooting_g05_c02.avi 3 ...

my classInd.text contains: 1 Fighting 2 Normal 3 Shooting

when I run 1_move_files.py and 2_extract_files.py I get the expected results.

My issue is when I run extract_features.py I only get this files generated: v_Normal_g04_c04-40-features.npy v_Normal_g10_c02-40-features.npy v_Shooting_g01_c01-40-features.npy

there is no errors, but only 3 features files are extracted from my dataset, may I know why? and what should I do? my dataset have 3 categories, each with 50 videos, divided into 20% testing 80% training.

your help is highly appreciated! Thanks

suheib-sherif commented 4 years ago

I just noticed that max number of frames a video can have for us to use it self.max_frames = 300 and most of my videos exceed this limit, only 3 are lower than 300. Now it makes sense, I will reduce my videos length and try again.