360º Images

From the platform in the middle of Costaflores Organic Vineyard, 360-degree images are taken automatically every 60 seconds.

These images are stored on IPFS.

The hashes of these image stores on IPFS are registered on the blockchain.

Everyday, the days images are stitched together to create a daily time-lapse.

Every month a monthly time-lapse is created.

Every year a yearly time-lapse is created.

360 camera hardware

Theta SC camera

Physical support and environmental protection

Connection to openvinopi

USB connection

Theta USB API

gphoto2

gphoto2 is the software used to connect to the Theta SC camera from openvinopi, via USB, and take pictures. The gphoto2 software collection is a phenomenal source of tools that enable command-line access to PTP cameras connected by USB.


gPhoto2 is a free, redistributable, ready to use set of digital camera software applications for Unix-like systems, written by a whole team of dedicated volunteers around the world. It supports more than 2700 cameras and media players

gPhoto2 runs on a large range of UNIX-like operating system, including Linux, FreeBSD, NetBSD, MacOS X, etc. gPhoto is provided by major Linux distributions like Debian GNU/Linux, Ubuntu, Gentoo, Fedora, openSUSE, Mandriva, etc.

libgphoto2 is freely available and distributed under the terms of the GNU LGPL.; the other gphoto programs are freely available and distributed under the terms of the GNU GPL.

Newer libgphoto2 versions also support Media Transfer Protocol (MTP) based media players since their communications protocol is based on the Picture Transfer Protocol (PTP).

Installation

While gphoto2 CAN be installed using the apt-get utility, currently this provides an older version that may not support all of the features useful for the Theta SC. The following installation instructions are an excerpt from Control your DSLR using the Raspberry Pi

mbarrow@openvinopi:~ $ gphoto2 --version

mbarrow@openvinopi:~ $ gphoto2 --version gphoto2 2.5.11 Copyright (c) 2000-2016 Lutz Mueller and others gphoto2 comes with NO WARRANTY, to the extent permitted by law. You may redistribute copies of gphoto2 under the terms of the GNU General Public License. For more information about these matters, see the files named COPYING. This version of gphoto2 is using the following software versions and options: gphoto2 2.5.11 gcc, popt(m), exif, cdk, aa, jpeg, readline libgphoto2 2.5.12 all camlibs, gcc, ltdl, EXIF libgphoto2_port 0.12.0 gcc, ltdl, USB, serial without locking

To install the latest version of gphoto2 and the libgphoto2 libraries, these are the instructions:

  1. Update the raspberry pi operating system and files

sudo apt-get update sudo apt-get upgrade

2. Install necessary packages:

sudo apt-get install git make autoconf libltdl-dev libusb-dev libexif-dev libpopt-dev libxml2-dev libjpeg-dev libgd-dev gettext autopoint

(some of these packages may have already been installed)

3. Download libgphoto2 libraries:

4. Compile libgphoto2 libraries:

5. Download gphoto2

6. Compile the gphoto2

7. Edit libc.conf to to insure that the configuration file referencing the “/usr/local/lib” folder exists:

Add these lines, if they are not already present:

8. Refresh the config cache so that /usr/local/lib will be searched by the operating system when linking libraries.

Not necessary if libc.conf already referenced

9. Generate the udev rules for the camera. Generate the required udev list by running the following command and pipe the command directly into a rules file that the udev service will automatically read.

10. Generate the hardware database file for udev

11. Test that gphoto2 is setup correctly:

Success! we have upgraded from 2.5.11 to 2.5.28.1 in this example

Light metering

Capture images every 60 seconds

threesixty.sh

Publishing images on IPFS

NFS mount between foxtrot and openvinopi

IPFS node on foxtrot

First create an ipfs user to run the ipfs daemon

bash-4.2$ export IPFS_PATH=/ov_data/threesixty/

 

Setup IPFS to start automatically

 

 

 

Pinning image files on IPFS

 

Storing IPFS hash on the blockchain

enchainté

Stitching images into time-lapses

ffmpeg

Install ffmpeg:

[mbarrow@foxtrot ~]$ sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro

[mbarrow@foxtrot ~]$ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

[mbarrow@foxtrot ~]$ sudo yum install ffmpeg ffmpeg-devel -y

 

verify the installation: