AI training datasets should have lots of samples, both negative and positive. For image recognition, each training sample can consist of single image. However, for self-driving training, you'll need video as you have mentioned. This is a challenge because you could easily have an overwhelming amount of information to wade through, and your chosen platform (Raspberry Pi) has limited resources.
To create tractable datasets of training videos, you can control:
- resolution: use lower definition where possible to save space and speed up training.
- frame rate: crank down the frame rate to the minimum needed for training
- color depth: use black/white if you can or 8-bit video if you have to.
- high-contrast scenes: unless you're doing real world city street training, choose high contrast scenes with clearly defined objects having sharp edges and geometric shapes. This may be possible for warehouse self-driving training, for example.
- video length: make videos as short as possible. A long meandering video might be good for a final test, but short and numerous videos are best for training.
Video storage presents a problem as well. Local storage is fast. Online storage is convenient but you may run into bandwidth issues (e.g., how much is your ISP charging you?) as you send data back and forth for training.
For actual training, avoid the Raspberry Pi if you can. It's slow, perhaps 10-20x slower than your laptop. Use your laptop or better for training your neural networks. Then run the neural network on the Raspberry Pi.