go-opencv/gocv
James Graves eb896f771a Fixed usage of TCopy() and Row() Col().
API for gonum/matrix has changed.
TCopy() has been removed, use Clone() after T().
Row() and Col() are no longer methods of dense matrix, but
regular module functions now.
2016-01-26 09:56:45 -06:00
..
gocv.go Add opencv flag for linux. 2015-06-21 13:53:39 -07:00
gocv.swigcxx Cleanup swig files. 2015-02-17 00:33:46 +08:00
gocv_calib3d.cpp Complete initCameraMatrix2D, calibrateCamera interface. 2015-02-23 17:56:59 +08:00
gocv_calib3d.go update the api of "github.com/gonum/matrix/mat64" 2015-11-03 13:34:14 +08:00
gocv_calib3d.hpp Complete initCameraMatrix2D, calibrateCamera interface. 2015-02-23 17:56:59 +08:00
gocv_calib3d.i Cleanup swig files. 2015-02-17 00:33:46 +08:00
gocv_calib3d_test.go Fixed usage of TCopy() and Row() Col(). 2016-01-26 09:56:45 -06:00
gocv_core.cpp Rename Mat to GcvMat 2015-02-17 00:44:28 +08:00
gocv_core.go Add opencv flag for linux. 2015-06-21 13:53:39 -07:00
gocv_core.hpp Rename Mat to GcvMat 2015-02-17 00:44:28 +08:00
gocv_core.i Rename Mat to GcvMat 2015-02-17 00:44:28 +08:00
gocv_core_test.go Wrap CalibrateCamera with mat64 2015-02-17 10:57:29 +08:00
README.md Rename type names to be more go-like. 2015-02-16 17:00:57 +08:00

Go OpenCV (GOlang openCV)

Wrap the core types in OpenCV.

Supporting Types and Examples

OpenCV C++ Go OpenCV Constructor
cv::Point2i GcvPoint2i NewGcvPoint2i(x, y int)
cv::Point2f GcvPoint2f32_ NewGcvPoint2f32(x, y float64)
cv::Point2d GcvPoint2f64_ NewGcvPoint2f64(x, y float64)
cv::Point3i GcvPoint3i NewGcvPoint3i(x, y, z int)
cv::Point3f GcvPoint3f32_ NewGcvPoint3f32(x, y, z float64)
cv::Point3d GcvPoint3f64_ NewGcvPoint3f64(x, y, z float64)
cv::Size2i GcvSize2i NewGcvSize2i(x, y int)
cv::Size2f GcvSize2f32_ NewGcvSize2f64(x, y float64)
cv::Size2d GcvSize2f64_ NewGcvSize2f64(x, y float64)

Note for Renamed Types

Some of the types are renamed to *_. The reason is that we'd like to wrap a better interface for them.
For example, the original NewGcvPoint2f32 takes strictly two float32, and we are not able to pass float64 or int, which doesn't make too much sense.
After wrapping an extra level, we are now able to pass int, float32, and float64 to these methods.
Also note that renaming doesn't affect any usage, except you are manipulating the types yourself.