Video Encryption using Space Filling Curves
Video-Encryption/
βββ bin
βΒ Β βββ setup
βΒ Β βββ setup.sh
βββ capture_frames.py
βββ decrypt.py
βββ encrypt.py
βββ frame_editor.py
βββ frames
βΒ Β βββ frame0.jpg
βΒ Β βββ frame_dec.jpg
βΒ Β βββ frame_enc_2.jpg
βΒ Β βββ frame_enc_9.jpg
βΒ Β βββ frame_enc.jpg
βββ hilbertt.py
βββ img.jpg
βββ input2.avi
βββ input2.mp4
βββ inverted_pixels.json
βββ metrics
βΒ Β βββ correlation.py
βΒ Β βββ entropy.py
βΒ Β βββ hist.py
βΒ Β βββ ncc2.py
βΒ Β βββ plot_cor.py
βΒ Β βββ psnr.py
βΒ Β βββ ssim.py
βββ multiprocessing
βΒ Β βββ mulitprocessing.py
βΒ Β βββ pooling.py
βββ output.avi
βββ output_dec.avi
βββ pixels.json
βββ playback.mp4
βββ playout.avi
βββ README.md
βββ requirements.txt
βββ resize_frame.py
βββ reverse_pixels.py
βββ SETUP.md
βββ swap.py
βββ video_dec.py
capture_frames.py
- This files uses OpenCV and other tools to capture a particular frame.
- It takes the location of the video through commandline arguments.
- It then capture frames at every 6 seconds interval.
- Output frames are then saved in the
Frames
folder. - The code has been provided with relevant comments for further information.
- Capturing Frames
- Getting particular frames from a given video.
- Strategy for selecting frames
- Deciding algorithm for selecting frames for
Selective Frame Encryption
.
- Deciding algorithm for selecting frames for
- Scrambling the frames
- Using SFCs to encrypt the acquired frame.
- Putting back the Frames
- Pushing the scrambled frames back in the output video.
- Decrypting it back
- Converting the scrambled frames back to original frame and create the output video.
Visit the Setup file