/Libcamera-OpenCV-RPi-Bullseye-64OS

Libcamera with OpenCV in Raspberry Pi 64 bit Bullseye

Primary LanguageC++BSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Libcamera OpenCV RPi Bullseye 64OS

output image

Libcamera + OpenCV on a Raspberry Pi 4 with 64-bit Bullseye OS

License

In the new Debian 11, Bullseye, you can only capture live video with a streaming framework, like GStreamer or FFmpeg. This is an example of libcamera working on a Raspberry Pi with an 64-bits OS.


Dependencies.

To run the application, you have to:

  • A Raspberry Pi 4.
  • GStreamer 1.18.4 installed. Install GStreamer
  • OpenCV 64 bit installed. Install OpenCV 4.5
  • Code::Blocks installed. ($ sudo apt-get install codeblocks)
  • A working Raspicam

Installing the app.

To extract and run the app in Code::Blocks
$ mkdir MyDir
$ cd MyDir
$ wget https://github.com/Qengineering/Libcamera-OpenCV-RPi-Bullseye-64OS/archive/refs/heads/main.zip
$ unzip -j master.zip
Remove master.zip, LICENSE and README.md as they are no longer needed.
$ rm master.zip
$ rm LICENSE
$ rm README.md

Your MyDir folder must now look like this:
GStreamer_RPi_64_Bullseye.cpb
main.cpp


Running the app.

To run the application load the project file GStreamer_RPi_64_Bullseye.cbp in Code::Blocks.
Next, follow the instructions at Hands-On.
On this page you can see how to make the webcam work.


Frame rate.

The Raspicam supports many sizes and frame rates, as you can see here.
You can switch between the different options by altering the parameters in the pipeline.
As long it's a valid combination, it will work. For instance:

    //pipeline parameters
    int capture_width = 640 ;
    int capture_height = 480 ;
    int display_width = 640 ;
    int display_height = 480 ;
    int framerate = 90 ;

paypal