ROpenCVLite
is a utility package that installs OpenCV
within R
for use by other
packages. This package is not a wrapper around OpenCV
(it does not provide
access to OpenCV
functions in R), not is it a computer vision package for R
. All it does is
compiling and installing OpenCV
within your R
installation so
that other packages can easily find it and compile against it.
OpenCV
is one of the
most - if not the most - popular and efficient open-source computer
vision library available today. If you want to develop fast video
processing software or implement real time computer vision algorithms,
you pretty much have to use OpenCV
nowadays.
ROpenCVLite
necessary?There are no computer vision package available for R
currently. There
are some very good image processing packages (see imager for instance) but
none of them can handle fast processing of large videos.
The goal of ROpenCVLite
is to promote the development of efficient computer vision packages for
R
based on OpenCV
. ROpenCVLite
facilitates the installation of OpenCV
in a convenient
location for other packages to find it and compile against it.
OpenCV
’s
binaries with your package?Yes, but… it is fairly difficult to ship binary files compiled
against OpenCV
that will
work for sure on someone else’s computer. It is not OpenCV
’s fault; it is
because there are so many video formats and standards for peripherals
out there that nobody can be certain what interfaces and libraries will
be available on anyone’s computer to grab images from videos and camera
streams. The least worst solution for developers is therefore to make
sure that there is a copy of OpenCV
on each user’s
computer that has been compiled taking into account the specificities of
said computer.
HOWEVER…
OpenCV
is notoriously
difficult to compile and install from scratch, especially for people
without experience with low level languages. This is where ROpenCVLite
come into play. This package tries as much as possible to cleanly
compile OpenCV
and to
install it in a standardized location that all R
package developers
can easily find.
ROpenCVLite
compiles and installs the core modules of the OpenCV
library but does not
compile or install its contributed extra
modules. This is to reduce the compilation time (which is already
long enough) and also because most of these extra modules are (1) too
specific for most applications of OpenCV
, and (2) they do not
always compile nicely.
We will work toward providing a mechanism to install the extra modules, but this is not part of our immediate plans.