SimenHolmestad / CameraHub

An application for controlling a camera connected to a Raspberry PI through a website interface. Can be used to setup a photobooth.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CameraHub

CameraHub is an application for setting up a photobooth powered by a Raspberry PI.

CameraHub demo gif

To set up CameraHub, you need the following:

  • Raspberry PI
  • A camera (Raspberry PI Camera Module or DSLR)
  • A monitor of some sort
  • Cables for the monitor and camera
  • A WiFi network

If used with a DSLR Camera, CameraHub can provide the captured images in full DSLR image quality and even store the raw images directly on the Raspberry PI. In addition, the DSLR camera can be connected to multiple flashes, allowing for studio quality photobooth setups.

Features

  • Automatic creation of QR code to access application
  • Mobile-friendly interface for navigating images and capture new ones
  • Support for both Raspberry PI Camera Module and DSLR cameras
  • Multiple configurations for DSLR cameras, depending on usecase
  • Support for multiple screen setups, including slideshow of current images
  • Generation of QR code for accessing WiFi network
  • Deploy script for easier deployment to Raspberry PI using systemd

Currently, only Raspberry PI Camera Modules and Canon DSLRs are supported, but adding additional camera types should not be that difficult. See architecture for more information.

Links to guides

Follow these links for setting up application:

After setting up, these links might be relevant:

Technologies used

The frameworks and libraries used for CameraHub are:

  • Flask (for the backend)
  • React (for the frontend)
  • Gphoto2 (for communication with DSLR camera)

Design

The design of the frontend is done using Material UI, and the main layout is heavily inspired by (stolen from) the album example at the Material UI template page.

About

An application for controlling a camera connected to a Raspberry PI through a website interface. Can be used to setup a photobooth.


Languages

Language:Python 74.9%Language:JavaScript 23.4%Language:HTML 1.4%Language:CSS 0.3%