Introduction
The Picam project is an Open Source project design to make it very easy to use the Raspberry Pi camera module from a Java application.
Why?
Ordinarily the Raspberry Pi camera must be accessed by a pre-existing native application, a Perl script, or a native "C" API. This works well enough, but there is no easy way to use the camera module with a Java application. The native API uses MMAL and it is a long, long way from straightforward to use that API to get pictures from the camera.
The Picam project provides a Java implementation that hides the complexities of the MMAL API and gives you a very simple interface to simply grab a picture from the camera. The API is as simple as creating a camera component and invoking a single method to grab a picture. You can save the picture to disk, process it in some way, display it in an application window, or whatever.
Where do I get Picam?
The Picam project is at GitHub.
Picam artefacts are available from Maven Central, there are two major versions...
picam-2.x uses a pure JNI solution, with a companion native library:
picam-1.x uses a JNA solution (no companion native library is required):
picam-2.x is the recommended version for new projects.
Tutorials
Some new picam-2 tutorials and picam-1 tutorials are available.