diff --git a/README.md b/README.md index 204f8c9a..736ff5cc 100644 --- a/README.md +++ b/README.md @@ -178,7 +178,7 @@ Now you should be able to build or run any of the examples: The version program should output the following: gocv version: 0.2.0 - opencv lib version: 3.3.1 + opencv lib version: 3.4.0 You might want to copy the `env.sh` script into your own projects, to make it easier to setup these vars when building your own code. @@ -236,7 +236,7 @@ Now you should be able to build or run any of the command examples: The version program should output the following: gocv version: 0.2.0 - opencv lib version: 3.3.1 + opencv lib version: 3.4.0 You might want to copy the `env.sh` script into your own projects, to make it easier to setup these vars when building your own code. @@ -260,13 +260,13 @@ Download and install CMake [https://cmake.org/download/](https://cmake.org/downl #### Download OpenCV 3.3 and OpenCV Contrib Modules -Download the source code for the latest OpenCV release from [https://github.com/opencv/opencv/archive/3.3.1.zip](https://github.com/opencv/opencv/archive/3.3.1.zip) and extract it to the directory `C:\opencv\opencv-3.3.1` +Download the source code for the latest OpenCV release from [https://github.com/opencv/opencv/archive/3.4.0.zip](https://github.com/opencv/opencv/archive/3.4.0.zip) and extract it to the directory `C:\opencv\opencv-3.4.0` -Download the source code for the latest OpenCV Contrib release from [https://github.com/opencv/opencv_contrib/archive/3.3.1.zip](https://github.com/opencv/opencv_contrib/archive/3.3.1.zip) and extract it to the directory `C:\opencv\opencv_contrib-3.3.1` +Download the source code for the latest OpenCV Contrib release from [https://github.com/opencv/opencv_contrib/archive/3.4.0.zip](https://github.com/opencv/opencv_contrib/archive/3.4.0.zip) and extract it to the directory `C:\opencv\opencv_contrib-3.4.0` Create the directory `C:\opencv\build` as the build directory. -Now launch the `cmake-gui` program, and set the "Where is the source code" to `C:\opencv\opencv-3.3.1`, and the "Where to build the binaries" to `C:\opencv\build`. +Now launch the `cmake-gui` program, and set the "Where is the source code" to `C:\opencv\opencv-3.4.0`, and the "Where to build the binaries" to `C:\opencv\build`. Click on "Configure" and select "MinGW MakeFile" from the window, then click on the "Next" button. @@ -278,7 +278,7 @@ Now, scroll down the list and change the following settings as follows: - `BUILD_PERF_TESTS` should be unchecked (aka disabled). - `ENABLE_PRECOMPILED_HEADERS` should be unchecked. - `ENABLE_CXX11` should be checked. -- `OPENCV_EXTRA_MODULES_PATH` should be set to `C:\opencv\opencv_contrib-3.3.1\modules` +- `OPENCV_EXTRA_MODULES_PATH` should be set to `C:\opencv\opencv_contrib-3.4.0\modules` Click on the "Configure" button again, and wait for the configuration step. @@ -307,7 +307,7 @@ You should now have OpenCV 3.3 installed on your Windows 10 machine. Run these commands to configure Go to know about the include and lib directories: set CGO_CPPFLAGS=-IC:\opencv\build\install\include - set CGO_LDFLAGS=-LC:\opencv\build\install\x64\mingw\lib -lopencv_core331 -lopencv_videoio331 -lopencv_imgproc331 -lopencv_highgui331 -lopencv_imgcodecs331 -lopencv_objdetect331 -lopencv_calib3d331 -lopencv_video331 -lopencv_xfeatures2d331 -lopencv_face331 + set CGO_LDFLAGS=-LC:\opencv\build\install\x64\mingw\lib -lopencv_core340 -lopencv_videoio340 -lopencv_imgproc340 -lopencv_highgui340 -lopencv_imgcodecs340 -lopencv_objdetect340 -lopencv_calib3d340 -lopencv_video340 -lopencv_xfeatures2d340 -lopencv_face340 Now you should be able to build or run any of the command examples: @@ -316,7 +316,7 @@ Now you should be able to build or run any of the command examples: The version program should output the following: gocv version: 0.2.0 - opencv lib version: 3.3.1 + opencv lib version: 3.4.0 ## How to contribute diff --git a/contrib/face.go b/contrib/face.go index 823f55ae..4c187c2a 100644 --- a/contrib/face.go +++ b/contrib/face.go @@ -6,8 +6,9 @@ package contrib */ import "C" import ( - "gocv.io/x/gocv" "unsafe" + + "gocv.io/x/gocv" ) type PredictResponse struct { @@ -21,7 +22,7 @@ type LBPHFaceRecognizer struct { // Create new LBPH Recognizer model // -// see https://docs.opencv.org/3.3.1/df/d25/classcv_1_1face_1_1LBPHFaceRecognizer.html +// see https://docs.opencv.org/3.4.0/df/d25/classcv_1_1face_1_1LBPHFaceRecognizer.html // func NewLBPHFaceRecognizer() *LBPHFaceRecognizer { return &LBPHFaceRecognizer{p: C.CreateLBPHFaceRecognizer()} @@ -29,7 +30,7 @@ func NewLBPHFaceRecognizer() *LBPHFaceRecognizer { // Train loaded model with images and their labels // -// see https://docs.opencv.org/3.3.1/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#ac8680c2aa9649ad3f55e27761165c0d6 +// see https://docs.opencv.org/3.4.0/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#ac8680c2aa9649ad3f55e27761165c0d6 // func (fr *LBPHFaceRecognizer) Train(images []gocv.Mat, labels []int) { cparams := []C.int{} @@ -54,7 +55,7 @@ func (fr *LBPHFaceRecognizer) Train(images []gocv.Mat, labels []int) { // update existing trained model with new images and labels // -// see https://docs.opencv.org/3.3.1/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#a8a4e73ea878dcd0c235d0487189d25f3 +// see https://docs.opencv.org/3.4.0/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#a8a4e73ea878dcd0c235d0487189d25f3 // func (fr *LBPHFaceRecognizer) Update(newImages []gocv.Mat, newLabels []int) { cparams := []C.int{} @@ -79,7 +80,7 @@ func (fr *LBPHFaceRecognizer) Update(newImages []gocv.Mat, newLabels []int) { // predict image for trained model, retun label for correctly predicted image, return -1 if not found // -// see https://docs.opencv.org/3.3.1/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#aa2d2f02faffab1bf01317ae6502fb631 +// see https://docs.opencv.org/3.4.0/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#aa2d2f02faffab1bf01317ae6502fb631 // func (fr *LBPHFaceRecognizer) Predict(sample gocv.Mat) int { label := C.LBPHFaceRecognizer_Predict(fr.p, (C.Mat)(sample.Ptr())) @@ -89,7 +90,7 @@ func (fr *LBPHFaceRecognizer) Predict(sample gocv.Mat) int { // the same as above but returns some more info // -// see https://docs.opencv.org/3.3.1/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#ab0d593e53ebd9a0f350c989fcac7f251 +// see https://docs.opencv.org/3.4.0/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#ab0d593e53ebd9a0f350c989fcac7f251 // func (fr *LBPHFaceRecognizer) PredictExtendedResponse(sample gocv.Mat) PredictResponse { respp := C.LBPHFaceRecognizer_PredictExtended(fr.p, (C.Mat)(sample.Ptr())) @@ -103,7 +104,7 @@ func (fr *LBPHFaceRecognizer) PredictExtendedResponse(sample gocv.Mat) PredictRe // set Threshold value // -// see https://docs.opencv.org/3.3.1/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#a3182081e5f8023e658ad8ab96656dd63 +// see https://docs.opencv.org/3.4.0/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#a3182081e5f8023e658ad8ab96656dd63 // func (fr *LBPHFaceRecognizer) SetThreshold(threshold float32) { C.LBPHFaceRecognizer_SetThreshold(fr.p, (C.double)(threshold)) @@ -111,7 +112,7 @@ func (fr *LBPHFaceRecognizer) SetThreshold(threshold float32) { // set Neighbors // -// see https://docs.opencv.org/3.3.1/df/d25/classcv_1_1face_1_1LBPHFaceRecognizer.html#ab225f7bf353ce8697a506eda10124a92 +// see https://docs.opencv.org/3.4.0/df/d25/classcv_1_1face_1_1LBPHFaceRecognizer.html#ab225f7bf353ce8697a506eda10124a92 // wrong neighbors can raise opencv exception! // func (fr *LBPHFaceRecognizer) SetNeighbors(neighbors int) { @@ -120,7 +121,7 @@ func (fr *LBPHFaceRecognizer) SetNeighbors(neighbors int) { // get Neighbors // -// see https://docs.opencv.org/3.3.1/df/d25/classcv_1_1face_1_1LBPHFaceRecognizer.html#a50a3e2ca6e8464166e153c9df84b0a77 +// see https://docs.opencv.org/3.4.0/df/d25/classcv_1_1face_1_1LBPHFaceRecognizer.html#a50a3e2ca6e8464166e153c9df84b0a77 // func (fr *LBPHFaceRecognizer) GetNeighbors() int { n := C.LBPHFaceRecognizer_GetNeighbors(fr.p) @@ -130,7 +131,7 @@ func (fr *LBPHFaceRecognizer) GetNeighbors() int { // set Radius // -// see https://docs.opencv.org/3.3.1/df/d25/classcv_1_1face_1_1LBPHFaceRecognizer.html#a62d94c75cade902fd3b487b1ef9883fc +// see https://docs.opencv.org/3.4.0/df/d25/classcv_1_1face_1_1LBPHFaceRecognizer.html#a62d94c75cade902fd3b487b1ef9883fc // func (fr *LBPHFaceRecognizer) SetRadius(radius int) { C.LBPHFaceRecognizer_SetRadius(fr.p, (C.int)(radius)) @@ -138,7 +139,7 @@ func (fr *LBPHFaceRecognizer) SetRadius(radius int) { // save trained model data to file // -// see https://docs.opencv.org/3.3.1/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#a2adf2d555550194244b05c91fefcb4d6 +// see https://docs.opencv.org/3.4.0/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#a2adf2d555550194244b05c91fefcb4d6 // func (fr *LBPHFaceRecognizer) SaveFile(fname string) { cName := C.CString(fname) @@ -148,7 +149,7 @@ func (fr *LBPHFaceRecognizer) SaveFile(fname string) { // load traned model data from file // -// see https://docs.opencv.org/3.3.1/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#acc42e5b04595dba71f0777c7179af8c3 +// see https://docs.opencv.org/3.4.0/dd/d65/classcv_1_1face_1_1FaceRecognizer.html#acc42e5b04595dba71f0777c7179af8c3 // func (fr *LBPHFaceRecognizer) LoadFile(fname string) { cName := C.CString(fname) diff --git a/contrib/xfeatures2d.go b/contrib/xfeatures2d.go index fe98373e..091faed4 100644 --- a/contrib/xfeatures2d.go +++ b/contrib/xfeatures2d.go @@ -22,7 +22,7 @@ type SIFT struct { // NewSIFT returns a new SIFT algorithm. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d5/d3c/classcv_1_1xfeatures2d_1_1SIFT.html +// https://docs.opencv.org/3.4.0/d5/d3c/classcv_1_1xfeatures2d_1_1SIFT.html // func NewSIFT() SIFT { return SIFT{p: unsafe.Pointer(C.SIFT_Create())} @@ -38,7 +38,7 @@ func (d *SIFT) Close() error { // Detect keypoints in an image using SIFT. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 // func (d *SIFT) Detect(src gocv.Mat) []gocv.KeyPoint { ret := C.SIFT_Detect((C.SIFT)(d.p), C.Mat(src.Ptr())) @@ -50,7 +50,7 @@ func (d *SIFT) Detect(src gocv.Mat) []gocv.KeyPoint { // DetectAndCompute detects and computes keypoints in an image using SIFT. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677 // func (d *SIFT) DetectAndCompute(src gocv.Mat, mask gocv.Mat) ([]gocv.KeyPoint, gocv.Mat) { desc := gocv.NewMat() @@ -70,7 +70,7 @@ type SURF struct { // NewSURF returns a new SURF algorithm. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d5/df7/classcv_1_1xfeatures2d_1_1SURF.html +// https://docs.opencv.org/3.4.0/d5/df7/classcv_1_1xfeatures2d_1_1SURF.html // func NewSURF() SURF { return SURF{p: unsafe.Pointer(C.SURF_Create())} @@ -86,7 +86,7 @@ func (d *SURF) Close() error { // Detect keypoints in an image using SURF. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 // func (d *SURF) Detect(src gocv.Mat) []gocv.KeyPoint { ret := C.SURF_Detect((C.SURF)(d.p), C.Mat(src.Ptr())) @@ -98,7 +98,7 @@ func (d *SURF) Detect(src gocv.Mat) []gocv.KeyPoint { // DetectAndCompute detects and computes keypoints in an image using SURF. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677 // func (d *SURF) DetectAndCompute(src gocv.Mat, mask gocv.Mat) ([]gocv.KeyPoint, gocv.Mat) { desc := gocv.NewMat() diff --git a/core.go b/core.go index 1bf92683..66b96354 100644 --- a/core.go +++ b/core.go @@ -68,7 +68,7 @@ const ( // vector fields, point clouds, tensors, and histograms. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d3/d63/classcv_1_1Mat.html +// http://docs.opencv.org/3.4.0/d3/d63/classcv_1_1Mat.html // type Mat struct { p C.Mat @@ -152,7 +152,7 @@ func (m *Mat) Mean() Scalar { // Indices of the entries are taken from the input array. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#gab55b8d062b7f5587720ede032d34156f +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#gab55b8d062b7f5587720ede032d34156f func LUT(src, wbLUT, dst Mat) { C.LUT(src.p, wbLUT.p, dst.p) } @@ -243,7 +243,7 @@ func (m *Mat) SetDoubleAt(row int, col int, val float64) { // or between an array and a scalar. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#ga6fef31bc8c4071cbc114a758a2b79c14 +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga6fef31bc8c4071cbc114a758a2b79c14 // func AbsDiff(src1 Mat, src2 Mat, dst Mat) { C.Mat_AbsDiff(src1.p, src2.p, dst.p) @@ -252,7 +252,7 @@ func AbsDiff(src1 Mat, src2 Mat, dst Mat) { // Add calculates the per-element sum of two arrays or an array and a scalar. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#ga10ac1bfb180e2cfda1701d06c24fdbd6 +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga10ac1bfb180e2cfda1701d06c24fdbd6 // func Add(src1 Mat, src2 Mat, dst Mat) { C.Mat_Add(src1.p, src2.p, dst.p) @@ -261,7 +261,7 @@ func Add(src1 Mat, src2 Mat, dst Mat) { // AddWeighted calculates the weighted sum of two arrays. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#gafafb2513349db3bcff51f54ee5592a19 +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#gafafb2513349db3bcff51f54ee5592a19 // func AddWeighted(src1 Mat, alpha float64, src2 Mat, beta float64, gamma float64, dst Mat) { C.Mat_AddWeighted(src1.p, C.double(alpha), @@ -273,7 +273,7 @@ func AddWeighted(src1 Mat, alpha float64, src2 Mat, beta float64, gamma float64, // or an array and a scalar. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#ga60b4d04b251ba5eb1392c34425497e14 +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga60b4d04b251ba5eb1392c34425497e14 // func BitwiseAnd(src1 Mat, src2 Mat, dst Mat) { C.Mat_BitwiseAnd(src1.p, src2.p, dst.p) @@ -282,7 +282,7 @@ func BitwiseAnd(src1 Mat, src2 Mat, dst Mat) { // BitwiseNot inverts every bit of an array. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#ga0002cf8b418479f4cb49a75442baee2f +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga0002cf8b418479f4cb49a75442baee2f // func BitwiseNot(src1 Mat, dst Mat) { C.Mat_BitwiseNot(src1.p, dst.p) @@ -292,7 +292,7 @@ func BitwiseNot(src1 Mat, dst Mat) { // or an array and a scalar. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#gab85523db362a4e26ff0c703793a719b4 +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#gab85523db362a4e26ff0c703793a719b4 // func BitwiseOr(src1 Mat, src2 Mat, dst Mat) { C.Mat_BitwiseOr(src1.p, src2.p, dst.p) @@ -302,7 +302,7 @@ func BitwiseOr(src1 Mat, src2 Mat, dst Mat) { // on two arrays or an array and a scalar. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#ga84b2d8188ce506593dcc3f8cd00e8e2c +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga84b2d8188ce506593dcc3f8cd00e8e2c // func BitwiseXor(src1 Mat, src2 Mat, dst Mat) { C.Mat_BitwiseXor(src1.p, src2.p, dst.p) @@ -311,7 +311,7 @@ func BitwiseXor(src1 Mat, src2 Mat, dst Mat) { // InRange checks if array elements lie between the elements of two Mat arrays. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#ga48af0ab51e36436c5d04340e036ce981 +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga48af0ab51e36436c5d04340e036ce981 // func InRange(src Mat, lb Mat, ub Mat, dst Mat) { C.Mat_InRange(src.p, lb.p, ub.p, dst.p) @@ -321,7 +321,7 @@ func InRange(src Mat, lb Mat, ub Mat, dst Mat) { // for a given vector size. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#ga6577a2e59968936ae02eb2edde5de299 +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga6577a2e59968936ae02eb2edde5de299 // func GetOptimalDFTSize(vecsize int) int { return int(C.Mat_GetOptimalDFTSize(C.int(vecsize))) @@ -331,7 +331,7 @@ func GetOptimalDFTSize(vecsize int) int { // of a 1D or 2D floating-point array. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#gadd6cf9baf2b8b704a11b5f04aaf4f39d +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#gadd6cf9baf2b8b704a11b5f04aaf4f39d // func DFT(src Mat, dst Mat) { C.Mat_DFT(src.p, dst.p) @@ -340,7 +340,7 @@ func DFT(src Mat, dst Mat) { // Merge creates one multi-channel array out of several single-channel ones. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#ga7d7b4d6c6ee504b30a20b1680029c7b4 +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga7d7b4d6c6ee504b30a20b1680029c7b4 // func Merge(mv []Mat, dst Mat) { cMatArray := make([]C.Mat, len(mv)) @@ -358,7 +358,7 @@ func Merge(mv []Mat, dst Mat) { // NormType for normalization operations. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#gad12cefbcb5291cf958a85b4b67b6149f +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#gad12cefbcb5291cf958a85b4b67b6149f // type NormType int @@ -377,7 +377,7 @@ const ( // Normalize normalizes the norm or value range of an array. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#ga87eef7ee3970f86906d69a92cbf064bd +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga87eef7ee3970f86906d69a92cbf064bd // func Normalize(src Mat, dst Mat, alpha float64, beta float64, typ NormType) { C.Mat_Normalize(src.p, dst.p, C.double(alpha), C.double(beta), C.int(typ)) @@ -386,7 +386,7 @@ func Normalize(src Mat, dst Mat, alpha float64, beta float64, typ NormType) { // Norm calculates the absolute norm of an array. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/de8/group__core__array.html#ga7c331fb8dd951707e184ef4e3f21dd33 +// https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga7c331fb8dd951707e184ef4e3f21dd33 // func Norm(src1 Mat, normType NormType) float64 { return float64(C.Norm(src1.p, C.int(normType))) @@ -395,7 +395,7 @@ func Norm(src1 Mat, normType NormType) float64 { // TermCriteriaType for TermCriteria. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d9/d5d/classcv_1_1TermCriteria.html#a56fecdc291ccaba8aad27d67ccf72c57 +// https://docs.opencv.org/3.4.0/d9/d5d/classcv_1_1TermCriteria.html#a56fecdc291ccaba8aad27d67ccf72c57 // type TermCriteriaType int @@ -414,7 +414,7 @@ const ( // TermCriteria is the criteria for iterative algorithms. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d9/d5d/classcv_1_1TermCriteria.html +// https://docs.opencv.org/3.4.0/d9/d5d/classcv_1_1TermCriteria.html // type TermCriteria struct { p C.TermCriteria @@ -428,7 +428,7 @@ func NewTermCriteria(typ TermCriteriaType, maxCount int, epsilon float64) TermCr // Scalar is a 4-element vector widely used in OpenCV to pass pixel values. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d1/da0/classcv_1_1Scalar__.html +// http://docs.opencv.org/3.4.0/d1/da0/classcv_1_1Scalar__.html // type Scalar struct { Val1 float64 @@ -446,7 +446,7 @@ func NewScalar(v1 float64, v2 float64, v3 float64, v4 float64) Scalar { // KeyPoint is data structure for salient point detectors. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d2/d29/classcv_1_1KeyPoint.html +// https://docs.opencv.org/3.4.0/d2/d29/classcv_1_1KeyPoint.html // type KeyPoint struct { X, Y float64 diff --git a/features2d.go b/features2d.go index 1f3565ae..4220cc8d 100644 --- a/features2d.go +++ b/features2d.go @@ -19,7 +19,7 @@ type AKAZE struct { // NewAKAZE returns a new AKAZE algorithm // // For further details, please see: -// https://docs.opencv.org/3.3.1/d8/d30/classcv_1_1AKAZE.html +// https://docs.opencv.org/3.4.0/d8/d30/classcv_1_1AKAZE.html // func NewAKAZE() AKAZE { return AKAZE{p: unsafe.Pointer(C.AKAZE_Create())} @@ -35,7 +35,7 @@ func (a *AKAZE) Close() error { // Detect keypoints in an image using AKAZE. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 // func (a *AKAZE) Detect(src Mat) []KeyPoint { ret := C.AKAZE_Detect((C.AKAZE)(a.p), src.p) @@ -47,7 +47,7 @@ func (a *AKAZE) Detect(src Mat) []KeyPoint { // Detect keypoints and compute in an image using AKAZE. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677 // func (a *AKAZE) DetectAndCompute(src Mat, mask Mat) ([]KeyPoint, Mat) { desc := NewMat() @@ -66,7 +66,7 @@ type AgastFeatureDetector struct { // NewAgastFeatureDetector returns a new AgastFeatureDetector algorithm // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/d19/classcv_1_1AgastFeatureDetector.html +// https://docs.opencv.org/3.4.0/d7/d19/classcv_1_1AgastFeatureDetector.html // func NewAgastFeatureDetector() AgastFeatureDetector { return AgastFeatureDetector{p: unsafe.Pointer(C.AgastFeatureDetector_Create())} @@ -82,7 +82,7 @@ func (a *AgastFeatureDetector) Close() error { // Detect keypoints in an image using AgastFeatureDetector. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 // func (a *AgastFeatureDetector) Detect(src Mat) []KeyPoint { ret := C.AgastFeatureDetector_Detect((C.AgastFeatureDetector)(a.p), src.p) @@ -100,7 +100,7 @@ type BRISK struct { // NewBRISK returns a new BRISK algorithm // // For further details, please see: -// https://docs.opencv.org/3.3.1/d8/d30/classcv_1_1AKAZE.html +// https://docs.opencv.org/3.4.0/d8/d30/classcv_1_1AKAZE.html // func NewBRISK() BRISK { return BRISK{p: unsafe.Pointer(C.BRISK_Create())} @@ -116,7 +116,7 @@ func (b *BRISK) Close() error { // Detect keypoints in an image using BRISK. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 // func (b *BRISK) Detect(src Mat) []KeyPoint { ret := C.BRISK_Detect((C.BRISK)(b.p), src.p) @@ -128,7 +128,7 @@ func (b *BRISK) Detect(src Mat) []KeyPoint { // Detect keypoints and compute in an image using BRISK. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677 // func (b *BRISK) DetectAndCompute(src Mat, mask Mat) ([]KeyPoint, Mat) { desc := NewMat() @@ -147,7 +147,7 @@ type FastFeatureDetector struct { // NewFastFeatureDetector returns a new FastFeatureDetector algorithm // // For further details, please see: -// https://docs.opencv.org/3.3.1/df/d74/classcv_1_1FastFeatureDetector.html +// https://docs.opencv.org/3.4.0/df/d74/classcv_1_1FastFeatureDetector.html // func NewFastFeatureDetector() FastFeatureDetector { return FastFeatureDetector{p: unsafe.Pointer(C.FastFeatureDetector_Create())} @@ -163,7 +163,7 @@ func (f *FastFeatureDetector) Close() error { // Detect keypoints in an image using FastFeatureDetector. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 // func (f *FastFeatureDetector) Detect(src Mat) []KeyPoint { ret := C.FastFeatureDetector_Detect((C.FastFeatureDetector)(f.p), src.p) @@ -181,7 +181,7 @@ type ORB struct { // NewORB returns a new ORB algorithm // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/d19/classcv_1_1AgastFeatureDetector.html +// https://docs.opencv.org/3.4.0/d7/d19/classcv_1_1AgastFeatureDetector.html // func NewORB() ORB { return ORB{p: unsafe.Pointer(C.ORB_Create())} @@ -197,7 +197,7 @@ func (o *ORB) Close() error { // Detect keypoints in an image using ORB. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 // func (o *ORB) Detect(src Mat) []KeyPoint { ret := C.ORB_Detect((C.ORB)(o.p), src.p) @@ -209,7 +209,7 @@ func (o *ORB) Detect(src Mat) []KeyPoint { // Detect keypoints and compute in an image using ORB. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677 // func (o *ORB) DetectAndCompute(src Mat, mask Mat) ([]KeyPoint, Mat) { desc := NewMat() @@ -228,7 +228,7 @@ type SimpleBlobDetector struct { // NewSimpleBlobDetector returns a new SimpleBlobDetector algorithm // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d7a/classcv_1_1SimpleBlobDetector.html +// https://docs.opencv.org/3.4.0/d0/d7a/classcv_1_1SimpleBlobDetector.html // func NewSimpleBlobDetector() SimpleBlobDetector { return SimpleBlobDetector{p: unsafe.Pointer(C.SimpleBlobDetector_Create())} @@ -244,7 +244,7 @@ func (b *SimpleBlobDetector) Close() error { // Detect keypoints in an image using SimpleBlobDetector. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 +// https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887 // func (b *SimpleBlobDetector) Detect(src Mat) []KeyPoint { ret := C.SimpleBlobDetector_Detect((C.SimpleBlobDetector)(b.p), src.p) diff --git a/gocv.go b/gocv.go index f39fd136..caee52a9 100644 --- a/gocv.go +++ b/gocv.go @@ -6,6 +6,6 @@ // computer vision algorithms. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d1/dfb/intro.html +// http://docs.opencv.org/3.4.0/d1/dfb/intro.html // package gocv // import "gocv.io/x/gocv" diff --git a/highgui.go b/highgui.go index 3804f4fc..d1c50aa1 100644 --- a/highgui.go +++ b/highgui.go @@ -19,7 +19,7 @@ import ( // quickly and visualize the results. This is what the HighGUI module has been designed for. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html +// http://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html // type Window struct { name string @@ -29,7 +29,7 @@ type Window struct { // NewWindow creates a new named OpenCV window // // For further details, please see: -// http://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga5afdf8410934fd099df85c75b2e0888b +// http://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga5afdf8410934fd099df85c75b2e0888b // func NewWindow(name string) *Window { runtime.LockOSThread() @@ -45,7 +45,7 @@ func NewWindow(name string) *Window { // Close closes and deletes a named OpenCV Window. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga851ccdd6961022d1d5b4c4f255dbab34 +// http://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga851ccdd6961022d1d5b4c4f255dbab34 // func (w *Window) Close() error { cName := C.CString(w.name) @@ -100,7 +100,7 @@ const ( // GetWindowProperty returns properties of a window. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#gaaf9504b8f9cf19024d9d44a14e461656 +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#gaaf9504b8f9cf19024d9d44a14e461656 // func (w *Window) GetWindowProperty(flag WindowPropertyFlag) float64 { cName := C.CString(w.name) @@ -112,7 +112,7 @@ func (w *Window) GetWindowProperty(flag WindowPropertyFlag) float64 { // SetWindowProperty changes parameters of a window dynamically. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga66e4a6db4d4e06148bcdfe0d70a5df27 +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga66e4a6db4d4e06148bcdfe0d70a5df27 // func (w *Window) SetWindowProperty(flag WindowPropertyFlag, value WindowFlag) { cName := C.CString(w.name) @@ -124,7 +124,7 @@ func (w *Window) SetWindowProperty(flag WindowPropertyFlag, value WindowFlag) { // SetWindowTitle updates window title. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga56f8849295fd10d0c319724ddb773d96 +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga56f8849295fd10d0c319724ddb773d96 // func (w *Window) SetWindowTitle(title string) { cName := C.CString(w.name) @@ -141,7 +141,7 @@ func (w *Window) SetWindowTitle(title string) { // the image for specified milliseconds. Otherwise, it won't display the image. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga453d42fe4cb60e5723281a89973ee563 +// http://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga453d42fe4cb60e5723281a89973ee563 // func (w *Window) IMShow(img Mat) { cName := C.CString(w.name) @@ -156,7 +156,7 @@ func (w *Window) IMShow(img Mat) { // for normal event processing // // For further details, please see: -// http://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga5628525ad33f52eab17feebcfba38bd7 +// http://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga5628525ad33f52eab17feebcfba38bd7 // func (w *Window) WaitKey(delay int) int { return int(C.Window_WaitKey(C.int(delay))) @@ -165,7 +165,7 @@ func (w *Window) WaitKey(delay int) int { // MoveWindow moves window to the specified position. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga8d86b207f7211250dbe6e28f76307ffb +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga8d86b207f7211250dbe6e28f76307ffb // func (w *Window) MoveWindow(x, y int) { cName := C.CString(w.name) @@ -177,7 +177,7 @@ func (w *Window) MoveWindow(x, y int) { // ResizeWindow resizes window to the specified size. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga9e80e080f7ef33f897e415358aee7f7e +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga9e80e080f7ef33f897e415358aee7f7e // func (w *Window) ResizeWindow(width, height int) { cName := C.CString(w.name) @@ -194,7 +194,7 @@ func (w *Window) ResizeWindow(width, height int) { // use key c to cancel selection (function will return a zero Rect). // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga8daf4730d3adf7035b6de9be4c469af5 +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga8daf4730d3adf7035b6de9be4c469af5 // func SelectROI(name string, img Mat) image.Rectangle { cName := C.CString(name) @@ -213,7 +213,7 @@ func SelectROI(name string, img Mat) image.Rectangle { // use esc to terminate multiple ROI selection process // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga0f11fad74a6432b8055fb21621a0f893 +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga0f11fad74a6432b8055fb21621a0f893 // func SelectROIs(name string, img Mat) []image.Rectangle { cName := C.CString(name) @@ -254,7 +254,7 @@ type Trackbar struct { // CreateTrackbar creates a trackbar and attaches it to the specified window. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#gaf78d2155d30b728fc413803745b67a9b +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#gaf78d2155d30b728fc413803745b67a9b // func (w *Window) CreateTrackbar(name string, max int) *Trackbar { cName := C.CString(w.name) @@ -270,7 +270,7 @@ func (w *Window) CreateTrackbar(name string, max int) *Trackbar { // GetPos returns the trackbar position. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga122632e9e91b9ec06943472c55d9cda8 +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga122632e9e91b9ec06943472c55d9cda8 // func (t *Trackbar) GetPos() int { cName := C.CString(t.parent.name) @@ -285,7 +285,7 @@ func (t *Trackbar) GetPos() int { // SetPos sets the trackbar position. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga67d73c4c9430f13481fd58410d01bd8d +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga67d73c4c9430f13481fd58410d01bd8d // func (t *Trackbar) SetPos(pos int) { cName := C.CString(t.parent.name) @@ -300,7 +300,7 @@ func (t *Trackbar) SetPos(pos int) { // SetMin sets the trackbar minimum position. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#gabe26ffe8d2b60cc678895595a581b7aa +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#gabe26ffe8d2b60cc678895595a581b7aa // func (t *Trackbar) SetMin(pos int) { cName := C.CString(t.parent.name) @@ -315,7 +315,7 @@ func (t *Trackbar) SetMin(pos int) { // SetMax sets the trackbar maximum position. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/dfc/group__highgui.html#ga7e5437ccba37f1154b65210902fc4480 +// https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga7e5437ccba37f1154b65210902fc4480 // func (t *Trackbar) SetMax(pos int) { cName := C.CString(t.parent.name) diff --git a/imgcodecs.go b/imgcodecs.go index e89251ea..a4832939 100644 --- a/imgcodecs.go +++ b/imgcodecs.go @@ -124,7 +124,7 @@ const ( // unsupported or invalid format), the function returns an empty Mat. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d4/da8/group__imgcodecs.html#ga288b8b3da0892bd651fce07b3bbd3a56 +// http://docs.opencv.org/3.4.0/d4/da8/group__imgcodecs.html#ga288b8b3da0892bd651fce07b3bbd3a56 // func IMRead(name string, flags IMReadFlag) Mat { cName := C.CString(name) @@ -136,7 +136,7 @@ func IMRead(name string, flags IMReadFlag) Mat { // IMWrite writes a Mat to an image file. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d4/da8/group__imgcodecs.html#gabbc7ef1aa2edfaa87772f1202d67e0ce +// http://docs.opencv.org/3.4.0/d4/da8/group__imgcodecs.html#gabbc7ef1aa2edfaa87772f1202d67e0ce // func IMWrite(name string, img Mat) bool { cName := C.CString(name) @@ -149,7 +149,7 @@ func IMWrite(name string, img Mat) bool { // With that func you can pass compression parameters // // For further details, please see: -// http://docs.opencv.org/3.3.1/d4/da8/group__imgcodecs.html#gabbc7ef1aa2edfaa87772f1202d67e0ce +// http://docs.opencv.org/3.4.0/d4/da8/group__imgcodecs.html#gabbc7ef1aa2edfaa87772f1202d67e0ce // func IMWriteWithParams(name string, img Mat, params []int) bool { cName := C.CString(name) @@ -173,7 +173,7 @@ func IMWriteWithParams(name string, img Mat, params []int) bool { // using the image format passed in in the form of a file extension string. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d4/da8/group__imgcodecs.html#ga461f9ac09887e47797a54567df3b8b63 +// http://docs.opencv.org/3.4.0/d4/da8/group__imgcodecs.html#ga461f9ac09887e47797a54567df3b8b63 // func IMEncode(fileExt string, img Mat) (buf []byte, err error) { cfileExt := C.CString(fileExt) @@ -190,7 +190,7 @@ func IMEncode(fileExt string, img Mat) (buf []byte, err error) { // returns an empty matrix. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d4/da8/group__imgcodecs.html#ga26a67788faa58ade337f8d28ba0eb19e +// https://docs.opencv.org/3.4.0/d4/da8/group__imgcodecs.html#ga26a67788faa58ade337f8d28ba0eb19e // func IMDecode(buf []byte, flags IMReadFlag) Mat { data := toByteArray(buf) diff --git a/imgproc.go b/imgproc.go index 2973eab5..e7ace3c9 100644 --- a/imgproc.go +++ b/imgproc.go @@ -17,7 +17,7 @@ import ( // code param containing the desired ColorConversionCode color space. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d7/d1b/group__imgproc__misc.html#ga4e0972be5de079fed4e3a10e24ef5ef0 +// http://docs.opencv.org/3.4.0/d7/d1b/group__imgproc__misc.html#ga4e0972be5de079fed4e3a10e24ef5ef0 // func CvtColor(src Mat, dst Mat, code ColorConversionCode) { C.CvtColor(src.p, dst.p, C.int(code)) @@ -30,7 +30,7 @@ func CvtColor(src Mat, dst Mat, code ColorConversionCode) { // fairly sharp. However, it is very slow compared to most filters. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d4/d86/group__imgproc__filter.html#ga9d7064d478c95d60003cf839430737ed +// https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#ga9d7064d478c95d60003cf839430737ed // func BilateralFilter(src Mat, dst Mat, d int, sigmaColor float64, sigmaSpace float64) { C.BilateralFilter(src.p, dst.p, C.int(d), C.double(sigmaColor), C.double(sigmaSpace)) @@ -41,7 +41,7 @@ func BilateralFilter(src Mat, dst Mat, d int, sigmaColor float64, sigmaSpace flo // the specified Gaussian kernel params. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d4/d86/group__imgproc__filter.html#gaabe8c836e97159a9193fb0b11ac52cf1 +// http://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#gaabe8c836e97159a9193fb0b11ac52cf1 // func Blur(src Mat, dst Mat, ksize image.Point) { pSize := C.struct_Size{ @@ -55,7 +55,7 @@ func Blur(src Mat, dst Mat, ksize image.Point) { // Dilate dilates an image by using a specific structuring element. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d4/d86/group__imgproc__filter.html#ga4ff0f3318642c4f469d0e11f242f3b6c +// https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#ga4ff0f3318642c4f469d0e11f242f3b6c // func Dilate(src Mat, dst Mat, kernel Mat) { C.Dilate(src.p, dst.p, kernel.p) @@ -64,7 +64,7 @@ func Dilate(src Mat, dst Mat, kernel Mat) { // Erode erodes an image by using a specific structuring element. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d4/d86/group__imgproc__filter.html#gaeb1e0c1033e3f6b891a25d0511362aeb +// https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#gaeb1e0c1033e3f6b891a25d0511362aeb // func Erode(src Mat, dst Mat, kernel Mat) { C.Erode(src.p, dst.p, kernel.p) @@ -213,7 +213,7 @@ func FindContours(src Mat, mode RetrievalMode, method ContourApproximationMode) // or rasterized shape. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d3/dc0/group__imgproc__shape.html#ga556a180f43cab22649c23ada36a8a139 +// https://docs.opencv.org/3.4.0/d3/dc0/group__imgproc__shape.html#ga556a180f43cab22649c23ada36a8a139 // func Moments(src Mat, binaryImage bool) map[string]float64 { r := C.Moments(src.p, C.bool(binaryImage)) @@ -250,7 +250,7 @@ func Moments(src Mat, binaryImage bool) map[string]float64 { // MorphologyEx performs advanced morphological transformations. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d4/d86/group__imgproc__filter.html#ga67493776e3ad1a3df63883829375201f +// https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#ga67493776e3ad1a3df63883829375201f // func MorphologyEx(src Mat, dst Mat, op MorphType, kernel Mat) { C.MorphologyEx(src.p, dst.p, C.int(op), kernel.p) @@ -274,7 +274,7 @@ const ( // and shape for morphological operations. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d4/d86/group__imgproc__filter.html#gac342a1bb6eabf6f55c803b09268e36dc +// https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#gac342a1bb6eabf6f55c803b09268e36dc // func GetStructuringElement(shape MorphShape, ksize image.Point) Mat { sz := C.struct_Size{ @@ -345,7 +345,7 @@ const ( // the specified Gaussian kernel params. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d4/d86/group__imgproc__filter.html#gaabe8c836e97159a9193fb0b11ac52cf1 +// http://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#gaabe8c836e97159a9193fb0b11ac52cf1 // func GaussianBlur(src Mat, dst Mat, ksize image.Point, sigmaX float64, sigmaY float64, borderType BorderType) { @@ -360,7 +360,7 @@ func GaussianBlur(src Mat, dst Mat, ksize image.Point, sigmaX float64, // Laplacian calculates the Laplacian of an image. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d4/d86/group__imgproc__filter.html#gad78703e4c8fe703d479c1860d76429e6 +// https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#gad78703e4c8fe703d479c1860d76429e6 // func Laplacian(src Mat, dst Mat, dDepth int, kSize int, scale float64, delta float64, borderType BorderType) { @@ -370,7 +370,7 @@ func Laplacian(src Mat, dst Mat, dDepth int, kSize int, scale float64, // Scharr calculates the first x- or y- image derivative using Scharr operator. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d4/d86/group__imgproc__filter.html#gaa13106761eedf14798f37aa2d60404c9 +// https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#gaa13106761eedf14798f37aa2d60404c9 // func Scharr(src Mat, dst Mat, dDepth int, dx int, dy int, scale float64, delta float64, borderType BorderType) { @@ -380,7 +380,7 @@ func Scharr(src Mat, dst Mat, dDepth int, dx int, dy int, scale float64, // MedianBlur blurs an image using the median filter. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d4/d86/group__imgproc__filter.html#ga564869aa33e58769b4469101aac458f9 +// https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#ga564869aa33e58769b4469101aac458f9 // func MedianBlur(src Mat, dst Mat, ksize int) { C.MedianBlur(src.p, dst.p, C.int(ksize)) @@ -395,7 +395,7 @@ func MedianBlur(src Mat, dst Mat, ksize int) { // See http://en.wikipedia.org/wiki/Canny_edge_detector // // For further details, please see: -// http://docs.opencv.org/3.3.1/dd/d1a/group__imgproc__feature.html#ga04723e007ed888ddf11d9ba04e2232de +// http://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga04723e007ed888ddf11d9ba04e2232de // func Canny(src Mat, edges Mat, t1 float32, t2 float32) { C.Canny(src.p, edges.p, C.double(t1), C.double(t2)) @@ -405,7 +405,7 @@ func Canny(src Mat, edges Mat, t1 float32, t2 float32) { // the sub-pixel accurate location of corners or radial saddle points. // // For further details, please see: -// https://docs.opencv.org/3.3.1/dd/d1a/group__imgproc__feature.html#ga354e0d7c86d0d9da75de9b9701a9a87e +// https://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga354e0d7c86d0d9da75de9b9701a9a87e // func CornerSubPix(img Mat, corners Mat, winSize image.Point, zeroZone image.Point, criteria TermCriteria) { winSz := C.struct_Size{ @@ -426,7 +426,7 @@ func CornerSubPix(img Mat, corners Mat, winSize image.Point, zeroZone image.Poin // finds the most prominent corners in the image or in the specified image region. // // For further details, please see: -// https://docs.opencv.org/3.3.1/dd/d1a/group__imgproc__feature.html#ga1d6bb77486c8f92d79c8793ad995d541 +// https://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga1d6bb77486c8f92d79c8793ad995d541 // func GoodFeaturesToTrack(img Mat, corners Mat, maxCorners int, quality float64, minDist float64) { C.GoodFeaturesToTrack(img.p, corners.p, C.int(maxCorners), C.double(quality), C.double(minDist)) @@ -436,7 +436,7 @@ func GoodFeaturesToTrack(img Mat, corners Mat, maxCorners int, quality float64, // The only "method" currently supported is HOUGH_GRADIENT = 3. // // For further details, please see: -// https://docs.opencv.org/3.3.1/dd/d1a/group__imgproc__feature.html#ga47849c3be0d0406ad3ca45db65a25d2d +// https://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga47849c3be0d0406ad3ca45db65a25d2d // func HoughCircles(src Mat, circles Mat, method int, dp float64, minDist float64) { C.HoughCircles(src.p, circles.p, C.int(method), C.double(dp), C.double(minDist)) @@ -447,7 +447,7 @@ func HoughCircles(src Mat, circles Mat, method int, dp float64, minDist float64) // http://homepages.inf.ed.ac.uk/rbf/HIPR2/hough.htm // // For further details, please see: -// http://docs.opencv.org/3.3.1/dd/d1a/group__imgproc__feature.html#ga46b4e588934f6c8dfd509cc6e0e4545a +// http://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga46b4e588934f6c8dfd509cc6e0e4545a // func HoughLines(src Mat, lines Mat, rho float32, theta float32, threshold int) { C.HoughLines(src.p, lines.p, C.double(rho), C.double(theta), C.int(threshold)) @@ -458,7 +458,7 @@ func HoughLines(src Mat, lines Mat, rho float32, theta float32, threshold int) { // http://homepages.inf.ed.ac.uk/rbf/HIPR2/hough.htm // // For further details, please see: -// http://docs.opencv.org/3.3.1/dd/d1a/group__imgproc__feature.html#ga8618180a5948286384e3b7ca02f6feeb +// http://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga8618180a5948286384e3b7ca02f6feeb // func HoughLinesP(src Mat, lines Mat, rho float32, theta float32, threshold int) { C.HoughLinesP(src.p, lines.p, C.double(rho), C.double(theta), C.int(threshold)) @@ -506,7 +506,7 @@ func Threshold(src Mat, dst Mat, thresh float32, maxvalue float32, typ Threshold // to the second one. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d6/d6e/group__imgproc__draw.html#ga0a165a3ca093fd488ac709fdf10c05b2 +// https://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#ga0a165a3ca093fd488ac709fdf10c05b2 // func ArrowedLine(img Mat, pt1 image.Point, pt2 image.Point, c color.RGBA, thickness int) { sp1 := C.struct_Point{ @@ -532,7 +532,7 @@ func ArrowedLine(img Mat, pt1 image.Point, pt2 image.Point, c color.RGBA, thickn // Circle draws a circle. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d6/d6e/group__imgproc__draw.html#gaf10604b069374903dbd0f0488cb43670 +// https://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#gaf10604b069374903dbd0f0488cb43670 // func Circle(img Mat, center image.Point, radius int, c color.RGBA, thickness int) { pc := C.struct_Point{ @@ -553,7 +553,7 @@ func Circle(img Mat, center image.Point, radius int, c color.RGBA, thickness int // Line draws a line segment connecting two points. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d6/d6e/group__imgproc__draw.html#ga7078a9fae8c7e7d13d24dac2520ae4a2 +// https://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#ga7078a9fae8c7e7d13d24dac2520ae4a2 // func Line(img Mat, pt1 image.Point, pt2 image.Point, c color.RGBA, thickness int) { sp1 := C.struct_Point{ @@ -580,7 +580,7 @@ func Line(img Mat, pt1 image.Point, pt2 image.Point, c color.RGBA, thickness int // It renders a rectangle with the desired characteristics to the target Mat image. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d6/d6e/group__imgproc__draw.html#ga346ac30b5c74e9b5137576c9ee9e0e8c +// http://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#ga346ac30b5c74e9b5137576c9ee9e0e8c // func Rectangle(img Mat, r image.Rectangle, c color.RGBA, thickness int) { cRect := C.struct_Rect{ @@ -636,7 +636,7 @@ const ( // a specific font face, scale, and thickness. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d6/d6e/group__imgproc__draw.html#ga3d2abfcb995fd2db908c8288199dba82 +// http://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#ga3d2abfcb995fd2db908c8288199dba82 // func GetTextSize(text string, fontFace HersheyFont, fontScale float64, thickness int) image.Point { cText := C.CString(text) @@ -652,7 +652,7 @@ func GetTextSize(text string, fontFace HersheyFont, fontScale float64, thickness // color, and line thinkness. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d6/d6e/group__imgproc__draw.html#ga5126f47f883d730f633d74f07456c576 +// http://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#ga5126f47f883d730f633d74f07456c576 // func PutText(img Mat, text string, org image.Point, fontFace HersheyFont, fontScale float64, c color.RGBA, thickness int) { cText := C.CString(text) @@ -710,7 +710,7 @@ const ( // zero for both fx and fy. // // For further details, please see: -// https://docs.opencv.org/3.3.1/da/d54/group__imgproc__transform.html#ga47a974309e9102f5f08231edc7e7529d +// https://docs.opencv.org/3.4.0/da/d54/group__imgproc__transform.html#ga47a974309e9102f5f08231edc7e7529d func Resize(src, dst Mat, sz image.Point, fx, fy float64, interp InterpolationFlags) { pSize := C.struct_Size{ width: C.int(sz.X), @@ -724,7 +724,7 @@ func Resize(src, dst Mat, sz image.Point, fx, fy float64, interp InterpolationFl // GetRotationMatrix2D calculates an affine matrix of 2D rotation. // // For further details, please see: -// https://docs.opencv.org/3.3.1/da/d54/group__imgproc__transform.html#gafbbc470ce83812914a70abfb604f4326 +// https://docs.opencv.org/3.4.0/da/d54/group__imgproc__transform.html#gafbbc470ce83812914a70abfb604f4326 func GetRotationMatrix2D(center image.Point, angle, scale float64) Mat { pc := C.struct_Point{ x: C.int(center.X), @@ -736,7 +736,7 @@ func GetRotationMatrix2D(center image.Point, angle, scale float64) Mat { // WarpAffine applies an affine transformation to an image. For more parameters please check WarpAffineWithParams // // For further details, please see: -// https://docs.opencv.org/3.3.1/da/d54/group__imgproc__transform.html#ga0203d9ee5fcd28d40dbc4a1ea4451983 +// https://docs.opencv.org/3.4.0/da/d54/group__imgproc__transform.html#ga0203d9ee5fcd28d40dbc4a1ea4451983 func WarpAffine(src, dst, m Mat, sz image.Point) { pSize := C.struct_Size{ width: C.int(sz.X), @@ -749,7 +749,7 @@ func WarpAffine(src, dst, m Mat, sz image.Point) { // WarpAffineWithParams applies an affine transformation to an image. // // For further details, please see: -// https://docs.opencv.org/3.3.1/da/d54/group__imgproc__transform.html#ga0203d9ee5fcd28d40dbc4a1ea4451983 +// https://docs.opencv.org/3.4.0/da/d54/group__imgproc__transform.html#ga0203d9ee5fcd28d40dbc4a1ea4451983 func WarpAffineWithParams(src, dst, m Mat, sz image.Point, flags InterpolationFlags, borderType BorderType, borderValue color.RGBA) { pSize := C.struct_Size{ width: C.int(sz.X), @@ -767,13 +767,13 @@ func WarpAffineWithParams(src, dst, m Mat, sz image.Point, flags InterpolationFl // ColormapTypes are the 12 GNU Octave/MATLAB equivalent colormaps. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d3/d50/group__imgproc__colormap.html +// https://docs.opencv.org/3.4.0/d3/d50/group__imgproc__colormap.html type ColormapTypes int // List of the available color maps // // For further details, please see: -// https://docs.opencv.org/3.3.1/d3/d50/group__imgproc__colormap.html#ga9a805d8262bcbe273f16be9ea2055a65 +// https://docs.opencv.org/3.4.0/d3/d50/group__imgproc__colormap.html#ga9a805d8262bcbe273f16be9ea2055a65 const ( ColormapAutumn ColormapTypes = 0 ColormapBone = 1 @@ -793,7 +793,7 @@ const ( // ApplyColorMap applies a GNU Octave/MATLAB equivalent colormap on a given image. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d3/d50/group__imgproc__colormap.html#gadf478a5e5ff49d8aa24e726ea6f65d15 +// https://docs.opencv.org/3.4.0/d3/d50/group__imgproc__colormap.html#gadf478a5e5ff49d8aa24e726ea6f65d15 func ApplyColorMap(src, dst Mat, colormapType ColormapTypes) { C.ApplyColorMap(src.p, dst.p, C.int(colormapType)) } @@ -801,7 +801,7 @@ func ApplyColorMap(src, dst Mat, colormapType ColormapTypes) { // ApplyCustomColorMap applies a custom defined colormap on a given image. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d3/d50/group__imgproc__colormap.html#gacb22288ddccc55f9bd9e6d492b409cae +// https://docs.opencv.org/3.4.0/d3/d50/group__imgproc__colormap.html#gacb22288ddccc55f9bd9e6d492b409cae func ApplyCustomColorMap(src, dst, customColormap Mat) { C.ApplyCustomColorMap(src.p, dst.p, customColormap.p) } diff --git a/imgproc_colorcodes.go b/imgproc_colorcodes.go index f1458450..3ad2352a 100644 --- a/imgproc_colorcodes.go +++ b/imgproc_colorcodes.go @@ -3,7 +3,7 @@ package gocv // ColorConversionCode is a color conversion code used on Mat. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d7/d1b/group__imgproc__misc.html#ga4e0972be5de079fed4e3a10e24ef5ef0 +// http://docs.opencv.org/3.4.0/d7/d1b/group__imgproc__misc.html#ga4e0972be5de079fed4e3a10e24ef5ef0 // type ColorConversionCode int diff --git a/objdetect.go b/objdetect.go index c90c978d..f03cb4d1 100644 --- a/objdetect.go +++ b/objdetect.go @@ -14,7 +14,7 @@ import ( // CascadeClassifier is a cascade classifier class for object detection. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d1/de5/classcv_1_1CascadeClassifier.html +// http://docs.opencv.org/3.4.0/d1/de5/classcv_1_1CascadeClassifier.html // type CascadeClassifier struct { p C.CascadeClassifier @@ -35,7 +35,7 @@ func (c *CascadeClassifier) Close() error { // Load cascade classifier from a file. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d1/de5/classcv_1_1CascadeClassifier.html#a1a5884c8cc749422f9eb77c2471958bc +// http://docs.opencv.org/3.4.0/d1/de5/classcv_1_1CascadeClassifier.html#a1a5884c8cc749422f9eb77c2471958bc // func (c *CascadeClassifier) Load(name string) bool { cName := C.CString(name) @@ -47,7 +47,7 @@ func (c *CascadeClassifier) Load(name string) bool { // The detected objects are returned as a slice of image.Rectangle structs. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d1/de5/classcv_1_1CascadeClassifier.html#aaf8181cb63968136476ec4204ffca498 +// http://docs.opencv.org/3.4.0/d1/de5/classcv_1_1CascadeClassifier.html#aaf8181cb63968136476ec4204ffca498 // func (c *CascadeClassifier) DetectMultiScale(img Mat) []image.Rectangle { ret := C.CascadeClassifier_DetectMultiScale(c.p, img.p) @@ -73,7 +73,7 @@ func (c *CascadeClassifier) DetectMultiScale(img Mat) []image.Rectangle { // to values other than just the defaults. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d1/de5/classcv_1_1CascadeClassifier.html#aaf8181cb63968136476ec4204ffca498 +// http://docs.opencv.org/3.4.0/d1/de5/classcv_1_1CascadeClassifier.html#aaf8181cb63968136476ec4204ffca498 // func (c *CascadeClassifier) DetectMultiScaleWithParams(img Mat, scale float64, minNeighbors, flags int, minSize, maxSize image.Point) []image.Rectangle { @@ -111,7 +111,7 @@ func (c *CascadeClassifier) DetectMultiScaleWithParams(img Mat, scale float64, // HOGDescriptor is a Histogram Of Gradiants (HOG) for object detection. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d5/d33/structcv_1_1HOGDescriptor.html#a723b95b709cfd3f95cf9e616de988fc8 +// https://docs.opencv.org/3.4.0/d5/d33/structcv_1_1HOGDescriptor.html#a723b95b709cfd3f95cf9e616de988fc8 // type HOGDescriptor struct { p C.HOGDescriptor @@ -133,7 +133,7 @@ func (h *HOGDescriptor) Close() error { // The detected objects are returned as a slice of image.Rectangle structs. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d5/d33/structcv_1_1HOGDescriptor.html#a660e5cd036fd5ddf0f5767b352acd948 +// https://docs.opencv.org/3.4.0/d5/d33/structcv_1_1HOGDescriptor.html#a660e5cd036fd5ddf0f5767b352acd948 // func (h *HOGDescriptor) DetectMultiScale(img Mat) []image.Rectangle { ret := C.HOGDescriptor_DetectMultiScale(h.p, img.p) @@ -159,7 +159,7 @@ func (h *HOGDescriptor) DetectMultiScale(img Mat) []image.Rectangle { // to values other than just the defaults. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d5/d33/structcv_1_1HOGDescriptor.html#a660e5cd036fd5ddf0f5767b352acd948 +// https://docs.opencv.org/3.4.0/d5/d33/structcv_1_1HOGDescriptor.html#a660e5cd036fd5ddf0f5767b352acd948 // func (h *HOGDescriptor) DetectMultiScaleWithParams(img Mat, hitThresh float64, winStride, padding image.Point, scale, finalThreshold float64, useMeanshiftGrouping bool) []image.Rectangle { @@ -196,7 +196,7 @@ func (h *HOGDescriptor) DetectMultiScaleWithParams(img Mat, hitThresh float64, // HOGDefaultPeopleDetector returns a new Mat with the HOG DefaultPeopleDetector. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d5/d33/structcv_1_1HOGDescriptor.html#a660e5cd036fd5ddf0f5767b352acd948 +// https://docs.opencv.org/3.4.0/d5/d33/structcv_1_1HOGDescriptor.html#a660e5cd036fd5ddf0f5767b352acd948 // func HOGDefaultPeopleDetector() Mat { return Mat{p: C.HOG_GetDefaultPeopleDetector()} @@ -205,7 +205,7 @@ func HOGDefaultPeopleDetector() Mat { // SetSVMDetector sets the data for the HOGDescriptor. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d5/d33/structcv_1_1HOGDescriptor.html#a09e354ad701f56f9c550dc0385dc36f1 +// https://docs.opencv.org/3.4.0/d5/d33/structcv_1_1HOGDescriptor.html#a09e354ad701f56f9c550dc0385dc36f1 // func (h *HOGDescriptor) SetSVMDetector(det Mat) error { C.HOGDescriptor_SetSVMDetector(h.p, det.p) @@ -215,7 +215,7 @@ func (h *HOGDescriptor) SetSVMDetector(det Mat) error { // GroupRectangles groups the object candidate rectangles. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d5/d54/group__objdetect.html#ga3dba897ade8aa8227edda66508e16ab9 +// https://docs.opencv.org/3.4.0/d5/d54/group__objdetect.html#ga3dba897ade8aa8227edda66508e16ab9 // func GroupRectangles(rects []image.Rectangle, groupThreshold int, eps float64) []image.Rectangle { cRectArray := make([]C.struct_Rect, len(rects)) diff --git a/video.go b/video.go index f4c7a947..3e15cb74 100644 --- a/video.go +++ b/video.go @@ -18,7 +18,7 @@ type BackgroundSubtractorMOG2 struct { // Segmentation Algorithm. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/d7b/classcv_1_1BackgroundSubtractorMOG2.html +// https://docs.opencv.org/3.4.0/d7/d7b/classcv_1_1BackgroundSubtractorMOG2.html // func NewBackgroundSubtractorMOG2() BackgroundSubtractorMOG2 { return BackgroundSubtractorMOG2{p: unsafe.Pointer(C.BackgroundSubtractorMOG2_Create())} @@ -34,7 +34,7 @@ func (b *BackgroundSubtractorMOG2) Close() error { // Apply computes a foreground mask using the current BackgroundSubtractorMOG2. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/df6/classcv_1_1BackgroundSubtractor.html#aa735e76f7069b3fa9c3f32395f9ccd21 +// https://docs.opencv.org/3.4.0/d7/df6/classcv_1_1BackgroundSubtractor.html#aa735e76f7069b3fa9c3f32395f9ccd21 // func (b *BackgroundSubtractorMOG2) Apply(src Mat, dst Mat) { C.BackgroundSubtractorMOG2_Apply((C.BackgroundSubtractorMOG2)(b.p), src.p, dst.p) @@ -52,7 +52,7 @@ type BackgroundSubtractorKNN struct { // Segmentation Algorithm // // For further details, please see: -// https://docs.opencv.org/3.3.1/db/d88/classcv_1_1BackgroundSubtractorKNN.html +// https://docs.opencv.org/3.4.0/db/d88/classcv_1_1BackgroundSubtractorKNN.html // func NewBackgroundSubtractorKNN() BackgroundSubtractorKNN { return BackgroundSubtractorKNN{p: unsafe.Pointer(C.BackgroundSubtractorKNN_Create())} @@ -68,7 +68,7 @@ func (k *BackgroundSubtractorKNN) Close() error { // Apply computes a foreground mask using the current BackgroundSubtractorKNN. // // For further details, please see: -// https://docs.opencv.org/3.3.1/d7/df6/classcv_1_1BackgroundSubtractor.html#aa735e76f7069b3fa9c3f32395f9ccd21 +// https://docs.opencv.org/3.4.0/d7/df6/classcv_1_1BackgroundSubtractor.html#aa735e76f7069b3fa9c3f32395f9ccd21 // func (k *BackgroundSubtractorKNN) Apply(src Mat, dst Mat) { C.BackgroundSubtractorKNN_Apply((C.BackgroundSubtractorKNN)(k.p), src.p, dst.p) @@ -79,7 +79,7 @@ func (k *BackgroundSubtractorKNN) Apply(src Mat, dst Mat) { // Gunnar Farneback's algorithm. // // For further details, please see: -// https://docs.opencv.org/3.3.1/dc/d6b/group__video__track.html#ga5d10ebbd59fe09c5f650289ec0ece5af +// https://docs.opencv.org/3.4.0/dc/d6b/group__video__track.html#ga5d10ebbd59fe09c5f650289ec0ece5af // func CalcOpticalFlowFarneback(prevImg Mat, nextImg Mat, flow Mat, pyrScale float64, levels int, winsize int, iterations int, polyN int, polySigma float64, flags int) { @@ -92,7 +92,7 @@ func CalcOpticalFlowFarneback(prevImg Mat, nextImg Mat, flow Mat, pyrScale float // the iterative Lucas-Kanade method with pyramids. // // For further details, please see: -// https://docs.opencv.org/3.3.1/dc/d6b/group__video__track.html#ga473e4b886d0bcc6b65831eb88ed93323 +// https://docs.opencv.org/3.4.0/dc/d6b/group__video__track.html#ga473e4b886d0bcc6b65831eb88ed93323 // func CalcOpticalFlowPyrLK(prevImg Mat, nextImg Mat, prevPts Mat, nextPts Mat, status Mat, err Mat) { C.CalcOpticalFlowPyrLK(prevImg.p, nextImg.p, prevPts.p, nextPts.p, status.p, err.p) diff --git a/videoio.go b/videoio.go index fdb06386..de9b4978 100644 --- a/videoio.go +++ b/videoio.go @@ -152,7 +152,7 @@ const ( // VideoCapture is a wrapper around the OpenCV VideoCapture class. // // For further details, please see: -// http://docs.opencv.org/3.3.1/d8/dfe/classcv_1_1VideoCapture.html +// http://docs.opencv.org/3.4.0/d8/dfe/classcv_1_1VideoCapture.html // type VideoCapture struct { p C.VideoCapture @@ -216,7 +216,7 @@ func (v *VideoCapture) Grab(skip int) { // VideoWriter is a wrapper around the OpenCV VideoWriter`class. // // For further details, please see: -// http://docs.opencv.org/3.3.1/dd/d9e/classcv_1_1VideoWriter.html +// http://docs.opencv.org/3.4.0/dd/d9e/classcv_1_1VideoWriter.html // type VideoWriter struct { mu *sync.RWMutex @@ -228,7 +228,7 @@ type VideoWriter struct { // codec, for example "MJPG". // // For further details, please see: -// http://docs.opencv.org/3.3.1/dd/d9e/classcv_1_1VideoWriter.html#a0901c353cd5ea05bba455317dab81130 +// http://docs.opencv.org/3.4.0/dd/d9e/classcv_1_1VideoWriter.html#a0901c353cd5ea05bba455317dab81130 // func VideoWriterFile(name string, codec string, fps float64, width int, height int) (vw *VideoWriter, err error) { vw = &VideoWriter{ @@ -256,7 +256,7 @@ func (vw *VideoWriter) Close() error { // IsOpened checks if the VideoWriter is open and ready to be written to. // // For further details, please see: -// http://docs.opencv.org/3.3.1/dd/d9e/classcv_1_1VideoWriter.html#a9a40803e5f671968ac9efa877c984d75 +// http://docs.opencv.org/3.4.0/dd/d9e/classcv_1_1VideoWriter.html#a9a40803e5f671968ac9efa877c984d75 // func (vw *VideoWriter) IsOpened() bool { isOpend := C.VideoWriter_IsOpened(vw.p) @@ -266,7 +266,7 @@ func (vw *VideoWriter) IsOpened() bool { // Write the next video frame from the Mat image to the open VideoWriter. // // For further details, please see: -// http://docs.opencv.org/3.3.1/dd/d9e/classcv_1_1VideoWriter.html#a3115b679d612a6a0b5864a0c88ed4b39 +// http://docs.opencv.org/3.4.0/dd/d9e/classcv_1_1VideoWriter.html#a3115b679d612a6a0b5864a0c88ed4b39 // func (vw *VideoWriter) Write(img Mat) error { vw.mu.Lock()