- Upgrade support to OpenCV 4.7.x and FFmpeg 6.0.x
- Add workaround options for JDK 17+ in launch scripts (issue #28)
- Upgrade support to OpenCV 4.6.x
- Upgrade support to FFmpeg 5.1.x
- Upgrade support to FFmpeg 5.0.x
- Upgrade support to FFmpeg 4.4.x
- Upgrade support to OpenCV 4.5.x
- Fix support for RealSense cameras (issue #25)
- Upgrade support to OpenCV 4.4.x and FFmpeg 4.3.x
- Upgrade support to OpenCV 4.3.x
- Upgrade support to FFmpeg 4.2.x
- Add
RealSense2FrameGrabber
to capture images with librealsense2 - Fix
OpenCVFrameConverter
error inIPCameraFrameGrabber
- Upgrade support to OpenCV 4.1.x
- Upgrade to NetBeans 11.0 with support for recent versions of Java SE (issue #16)
- Adjust code to support latest changes in JavaCV
- Remove no longer necessary workaround that would produce memory leaks
- Upgrade support to OpenCV 4.0.x and FFmpeg 4.1.x
- Upgrade support to OpenCV 3.4.3
- Upgrade support to OpenCV 3.4.2 and FFmpeg 4.0.x
- Fix issues with RealSense cameras (issue #15)
- Upgrade support to OpenCV 3.4.1
- Upgrade support to OpenCV 3.4.0 and FFmpeg 3.4.x
- Work around stability issues on some systems (issue #4)
- Add support for the
linux-armhf
andlinux-ppc64le
platforms, libdc1394 on Windows, and librealsense on Linux x86 - Upgrade support to FFmpeg 3.2.x
- Fix Javadoc links for externally referenced classes
- Upgrade support to OpenCV 3.1.0 and FFmpeg 3.0.x
- Lower Maven prerequisite in the
pom.xml
file to 3.0 (issue bytedeco/javacpp#93)
- Upgrade support to FFmpeg 2.8.x
- Upgrade all Maven dependencies and plugins to latest versions, thus bumping minimum requirements to Java SE 7 and Maven 3.0
- Upgrade support to OpenCV 3.0.0 and FFmpeg 2.7.x
- Adjust code to support latest changes in JavaCV
- Upgrade support to OpenCV 2.4.11 and FFmpeg 2.6.x
- Upgrade support to OpenCV 2.4.10, FFmpeg 2.5.x, and FlyCapture 2.7
- Upgrade support to FFmpeg 2.3.x
- Remove
platform
property frompom.xml
, replaced with theplatform.dependency
one in JavaCPP Presets (javacv issue #10)
- Move from Google Code to GitHub as main source code repository
- Upgrade support to OpenCV 2.4.9 and FFmpeg 2.2.x
- Upgrade to NetBeans 8.0 and work around conflict between
opencv_highgui
andcom.sun.java.swing.plaf.gtk.GTKLookAndFeel
- Rename the
com.googlecode.javacv.procamcalib
package toorg.bytedeco.procamcalib
- Removed old NetBeans project files that cause a conflict when trying to open as a Maven project (issue javacv:210)
- Upgraded support to OpenCV 2.4.8 and FFmpeg 2.1.x
VideoInputFrameGrabber
now uses 640x480 as default image size to prevent "videoInput.getPixels() Error: Could not get pixels."
- Upgraded support to OpenCV 2.4.6.x and FFmpeg 2.0.x
- Upgraded to NetBeans 7.3.1
- Upgraded to ARToolKitPlus 2.3.0 (issue javacv:234)
- Fixed drawing issues with
MarkerDetector.draw()
- Upgraded support to OpenCV 2.4.5 and FFmpeg 1.2
- Upgraded support to OpenCV 2.4.4 and FFmpeg 1.1
- Upgraded support to OpenCV 2.4.3 and FFmpeg 1.0
- Upgraded support to OpenCV 2.4.2 and FFmpeg 0.11
- Started using version numbers, friendly to tools like Maven, and placing packages in a sort of Maven repository
- Upgraded support to OpenCV 2.4.0
- Added
pom.xml
and assembly files for Maven support and changed the directory structure of the source code to match Maven's standard directory layout
- Renamed a few more
Settings
properties to reflect better their meanings
- Renamed some
Settings
properties here and there to correct typos and reflect better their meanings
- Should now have an easier time automatically finding OpenCV libraries inside standard directories such as
/usr/local/lib/
,/opt/local/lib/
, andC:\opencv\
, even when they are not part of the system configuration or PATH - New
PS3EyeFrameGrabber
from Jiri Masa can now grab images using the SDK from Code Laboratories
- Fixed
DC1394FrameGrabber
andFlyCaptureFrameGrabber
to behave as expected with all Bayer/Raw/Mono/RGB/YUV cameras modes (within the limits of libdc1394 and PGR FlyCapture)
- Upgraded support to OpenCV 2.3.1
OpenCVFrameGrabber
now detects when CV_CAP_PROP_POS_MSEC is broken and gives up callingcvGetCaptureProperty()
- Upgraded support to OpenCV 2.3.0
- Fixed
OpenKinectFrameGrabber
andFFmpegFrameGrabber
- New
OpenKinectFrameGrabber
to capture from Microsoft's Kinect stereo camera using OpenKinect - The Unix scripts now check for a 64-bit JVM in priority
- Changed
Marker.getCenter()
back to the centroid, because it has better noise averaging properties and gives in practice more accurate results than the actual center - Added hack to
OpenCVFrameGrabber.start()
to wait forcvRetrieveFrame()
to return something else thannull
under Mac OS X - Added to the scripts
-Dapple.awt.fullscreencapturealldisplays=false
Java option required for full-screen support under Mac OS X - Removed from the scripts the default
-Dsun.java2d.opengl=True
Java option, because since NVIDIA Release 260 family of drivers, most video drivers under Linux do not have good OpenGL support anymore FFmpegFrameGrabber
now works properly on Windows with newer binaries- New
VideoInputFrameGrabber
to capture using DirectShow, useful under Windows 7 where OpenCV and FFmpeg can fail to capture using Video for Windows GeometricCalibrator
now reports the maximum errors in addition to the average (RMS) errors
- Added a
format
property to camera settings, mostly useful forFFmpegFrameGrabber
, where interesting values include "dv1394", "mjpeg", "video4linux2", "vfwcap", and "x11grab" - Added hack to make sure the temporarily extracted library files get properly deleted under Windows
- Upgraded to the latest version of JavaCV based on JavaCPP instead of JNA, featuring better performance
- Tried to fix image format conversion inside
FlyCaptureFrameGrabber
, but this is going to require more careful debugging
- Renamed the package namespace to
com.googlecode.javacv.procamcalib
, which makes more sense now that JavaCV has been well anchored at Google Code for more than a year, piggybacking on the unique and easy-to-remember domain name, but this means you will need to manually edit any old XMLsettings.pcc
files and rename the namespace of the classes inside CanvasFrame
now redraws itsCanvas
after the user resizes theFrame
- Added check to
DC1394FrameGrabber
so that a "Failed to initialize libdc1394" does not crash the JVM FrameGrabber
now selects the default grabber a bit better- Included Mac OS X 10.6.4 binaries for ARToolKitPlus compiled by Christian Parsons
- Fixed crash that would occur in
CanvasFrame
for some video drivers
- Fixed loading problem with the
frameGrabber
setting - Fixed speed setting problem with the
FlyCaptureFrameGrabber
- Modified a few things to get better default behavior of gamma correction
- Camera setting
triggerFlushSize
now defaults to 5 (only affectsOpenCVFrameGrabber
andFFmpegFrameGrabber
) - Fixed missing updates when changing some settings
- Added support for OpenCV 2.1
- Some bugs fixed for FFmpeg
- Added to camera settings a
deviceFile
field that can bring up a file dialog - Added
triggerFlushSize
to indicate the number of buffers to flush for cheap camera that keep old images in memory indefinitely - The size and spacing of markers inside MarkerPatterns can now be adjusted separately in X and Y
- Fixed distortion problem with color calibration when running with OpenCV 1.1pre1
- Added
FFmpegFrameGrabber
to capture images using FFmpeg 0.5 - Fixed corruption of distortion coefficients that could occur
- Sync with new JavaCV, no functional changes to ProCamCalib itself
- Fixed some crashy crashy behavior
- Added R2 correlation coefficient for color calibration as indicator of good accuracy
useMarkerCenters
now uses the actual physical center of each marker instead of the centroid
- Added color calibration
- Upgraded JavaCV to work with OpenCV 2.0 in addition to 1.1pre1
- Added a missing exception "catch", which allowed a failed calibration to go unnoticed
- Fixed a bug in JavaCV that prevented loading distortion coefficients
- Added a stack dump on OpenCV error for easier debugging
- Added
gamma
settings for Cameras and Projectors
- Sync with new source of javacv and procamcalib
- There is no functional changes to ProCamCalib itself
Initial release
This project was conceived at the Okutomi & Tanaka Laboratory, Tokyo Institute of Technology, where I was supported for my doctoral research program by a generous scholarship from the Ministry of Education, Culture, Sports, Science and Technology (MEXT) of the Japanese Government. I extend my gratitude further to all who have reported bugs, donated code, or made suggestions for improvements (details above)!