Skip to content

An OpenCV (python interface) Docker image repo, for Raspberry Pi 3 with Raspbian OS (Debian). It's based on resin.io python docker image.

License

Notifications You must be signed in to change notification settings

Loongle/raspberrypi3-opencv-docker

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Docker Stars Docker Pulls

About

The Git repo of an OpenCV Docker image , for Raspberry Pi 3 with Raspbian OS (Debian). The modules from OpenCV contrib are included as well. It is based on the resin.io python image.

Usage

See the image Docker Hub page for information on how to use the image.

Build

If you prefer to build the image yourself (takes around 2 hours), you can do it as follows:

  • Make sure docker is installed in your Raspberry Pi. See here for instructions.
  • Clone this repository into your Raspberry Pi.
git clone git@github.com:mohaseeb/raspberrypi3-opencv-docker.git
  • Build the image by running:
cd raspberrypi3-opencv-docker/<opencv version build script dir>
docker build -t my_pi_opencv_img .
  • And run it
docker run -it --rm \
       --name my_opencv_app_run \
       my_pi_opencv_img \
       python -c "import cv2; print(cv2.__version__)"
  • And here is how you can capture video using your Raspberry Pi camera.
    Save the video capturing script to a file named save_video.py in your Raspberry Pi.
import cv2

cap = cv2.VideoCapture(0)

# Define the codec and create VideoWriter object
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('/videos/output.avi', fourcc, 20.0, (640, 480))
n_frames = 200
while n_frames > 0:
    ret, frame = cap.read()
    if ret == True:
        # write the flipped frame
        out.write(frame)
        n_frames -= 1
    else:
        break
    print('frames to capture: {}'.format(n_frames))

# Release everything when done
cap.release()
out.release()

Execute the script as follows (assumes the camera appears as /dev/vidoe0 on the Raspberry Pi)

docker run -it --rm \
    -v `pwd`/save_video.py:/save_video.py \
    -v `pwd`:/videos \
    --device /dev/video0 \
    my_pi_opencv_img \
    python /save_video.py

The captured video will be written to file named output.avi in the current directory.

References

OpenCV
Blog post on installing OpenCV 3 on Raspberry Pi
Blog post on installing OpenCV 4 on Raspberry Pi

Licence

MIT

About

An OpenCV (python interface) Docker image repo, for Raspberry Pi 3 with Raspbian OS (Debian). It's based on resin.io python docker image.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dockerfile 50.5%
  • Shell 49.5%