gocv: gocv.io/x/gocv Index | Files | Directories

package gocv

import "gocv.io/x/gocv"

Package gocv is a wrapper around the OpenCV 3.x computer vision library. It provides a Go language interface to the latest version of OpenCV.

OpenCV (Open Source Computer Vision Library: http://opencv.org) is an open-source BSD-licensed library that includes several hundreds of computer vision algorithms.

For further details, please see: http://docs.opencv.org/3.4.0/d1/dfb/intro.html

Index

Package Files

core.go dnn.go features2d.go gocv.go highgui.go imgcodecs.go imgproc.go imgproc_colorcodes.go objdetect.go version.go video.go videoio.go

Constants

const (
    // MatChannels1 is a single channel Mat.
    MatChannels1 = 0

    // MatChannels2 is 2 channel Mat.
    MatChannels2 = 8

    // MatChannels3 is 3 channel Mat.
    MatChannels3 = 16

    // MatChannels4 is 4 channel Mat.
    MatChannels4 = 24
)
const GoCVVersion = "0.9.0"

GoCVVersion of this package, for display purposes.

func AbsDiff Uses

func AbsDiff(src1 Mat, src2 Mat, dst Mat)

AbsDiff calculates the per-element absolute difference between two arrays or between an array and a scalar.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga6fef31bc8c4071cbc114a758a2b79c14

func Add Uses

func Add(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.4.0/d2/de8/group__core__array.html#ga10ac1bfb180e2cfda1701d06c24fdbd6

func AddWeighted Uses

func AddWeighted(src1 Mat, alpha float64, src2 Mat, beta float64, gamma float64, dst Mat)

AddWeighted calculates the weighted sum of two arrays.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#gafafb2513349db3bcff51f54ee5592a19

func ApplyColorMap Uses

func ApplyColorMap(src, dst Mat, colormapType ColormapTypes)

ApplyColorMap applies a GNU Octave/MATLAB equivalent colormap on a given image.

For further details, please see: https://docs.opencv.org/3.4.0/d3/d50/group__imgproc__colormap.html#gadf478a5e5ff49d8aa24e726ea6f65d15

func ApplyCustomColorMap Uses

func ApplyCustomColorMap(src, dst, customColormap Mat)

ApplyCustomColorMap applies a custom defined colormap on a given image.

For further details, please see: https://docs.opencv.org/3.4.0/d3/d50/group__imgproc__colormap.html#gacb22288ddccc55f9bd9e6d492b409cae

func ApproxPolyDP Uses

func ApproxPolyDP(curve []image.Point, epsilon float64, closed bool) (approxCurve []image.Point)

ApproxPolyDP approximates a polygonal curve(s) with the specified precision.

For further details, please see:

https://docs.opencv.org/3.4.0/d3/dc0/group__imgproc__shape.html#ga0012a5fdaea70b8a9970165d98722b4c

func ArcLength Uses

func ArcLength(curve []image.Point, isClosed bool) float64

ArcLength calculates a contour perimeter or a curve length.

For further details, please see:

https://docs.opencv.org/3.4.0/d3/dc0/group__imgproc__shape.html#ga8d26483c636be6b35c3ec6335798a47c

func ArrowedLine Uses

func ArrowedLine(img Mat, pt1 image.Point, pt2 image.Point, c color.RGBA, thickness int)

ArrowedLine draws a arrow segment pointing from the first point to the second one.

For further details, please see: https://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#ga0a165a3ca093fd488ac709fdf10c05b2

func BilateralFilter Uses

func BilateralFilter(src Mat, dst Mat, diameter int, sigmaColor float64, sigmaSpace float64)

BilateralFilter applies a bilateral filter to an image.

Bilateral filtering is described here: http://www.dai.ed.ac.uk/CVonline/LOCAL_COPIES/MANDUCHI1/Bilateral_Filtering.html

BilateralFilter can reduce unwanted noise very well while keeping edges fairly sharp. However, it is very slow compared to most filters.

For further details, please see: https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#ga9d7064d478c95d60003cf839430737ed

func BitwiseAnd Uses

func BitwiseAnd(src1 Mat, src2 Mat, dst Mat)

BitwiseAnd computes bitwise conjunction of the two arrays (dst = src1 & src2). Calculates the per-element bit-wise conjunction of two arrays or an array and a scalar.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga60b4d04b251ba5eb1392c34425497e14

func BitwiseNot Uses

func BitwiseNot(src1 Mat, dst Mat)

BitwiseNot inverts every bit of an array.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga0002cf8b418479f4cb49a75442baee2f

func BitwiseOr Uses

func BitwiseOr(src1 Mat, src2 Mat, dst Mat)

BitwiseOr calculates the per-element bit-wise disjunction of two arrays or an array and a scalar.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#gab85523db362a4e26ff0c703793a719b4

func BitwiseXor Uses

func BitwiseXor(src1 Mat, src2 Mat, dst Mat)

BitwiseXor calculates the per-element bit-wise "exclusive or" operation on two arrays or an array and a scalar.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga84b2d8188ce506593dcc3f8cd00e8e2c

func Blur Uses

func Blur(src Mat, dst Mat, ksize image.Point)

Blur blurs an image Mat using a normalized box filter.

For further details, please see: https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#ga8c45db9afe636703801b0b2e440fce37

func BoundingRect Uses

func BoundingRect(contour []image.Point) image.Rectangle

BoundingRect calculates the up-right bounding rectangle of a point set.

For further details, please see: https://docs.opencv.org/3.3.0/d3/dc0/group__imgproc__shape.html#gacb413ddce8e48ff3ca61ed7cf626a366

func CalcOpticalFlowFarneback Uses

func CalcOpticalFlowFarneback(prevImg Mat, nextImg Mat, flow Mat, pyrScale float64, levels int, winsize int,
    iterations int, polyN int, polySigma float64, flags int)

CalcOpticalFlowFarneback computes a dense optical flow using Gunnar Farneback's algorithm.

For further details, please see: https://docs.opencv.org/3.4.0/dc/d6b/group__video__track.html#ga5d10ebbd59fe09c5f650289ec0ece5af

func CalcOpticalFlowPyrLK Uses

func CalcOpticalFlowPyrLK(prevImg Mat, nextImg Mat, prevPts Mat, nextPts Mat, status Mat, err Mat)

CalcOpticalFlowPyrLK calculates an optical flow for a sparse feature set using the iterative Lucas-Kanade method with pyramids.

For further details, please see: https://docs.opencv.org/3.4.0/dc/d6b/group__video__track.html#ga473e4b886d0bcc6b65831eb88ed93323

func Canny Uses

func Canny(src Mat, edges Mat, t1 float32, t2 float32)

Canny finds edges in an image using the Canny algorithm. The function finds edges in the input image image and marks them in the output map edges using the Canny algorithm. The smallest value between threshold1 and threshold2 is used for edge linking. The largest value is used to find initial segments of strong edges. See http://en.wikipedia.org/wiki/Canny_edge_detector

For further details, please see: http://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga04723e007ed888ddf11d9ba04e2232de

func Circle Uses

func Circle(img Mat, center image.Point, radius int, c color.RGBA, thickness int)

Circle draws a circle.

For further details, please see: https://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#gaf10604b069374903dbd0f0488cb43670

func ContourArea Uses

func ContourArea(contour []image.Point) float64

ContourArea calculates a contour area.

For further details, please see: https://docs.opencv.org/3.3.0/d3/dc0/group__imgproc__shape.html#ga2c759ed9f497d4a618048a2f56dc97f1

func CornerSubPix Uses

func CornerSubPix(img Mat, corners Mat, winSize image.Point, zeroZone image.Point, criteria TermCriteria)

CornerSubPix Refines the corner locations. The function iterates to find the sub-pixel accurate location of corners or radial saddle points.

For further details, please see: https://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga354e0d7c86d0d9da75de9b9701a9a87e

func CvtColor Uses

func CvtColor(src Mat, dst Mat, code ColorConversionCode)

CvtColor converts an image from one color space to another. It converts the src Mat image to the dst Mat using the code param containing the desired ColorConversionCode color space.

For further details, please see: http://docs.opencv.org/3.4.0/d7/d1b/group__imgproc__misc.html#ga4e0972be5de079fed4e3a10e24ef5ef0

func DFT Uses

func DFT(src Mat, dst Mat)

DFT performs a forward or inverse Discrete Fourier Transform (DFT) of a 1D or 2D floating-point array.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#gadd6cf9baf2b8b704a11b5f04aaf4f39d

func Dilate Uses

func Dilate(src Mat, dst Mat, kernel Mat)

Dilate dilates an image by using a specific structuring element.

For further details, please see: https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#ga4ff0f3318642c4f469d0e11f242f3b6c

func Erode Uses

func Erode(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.4.0/d4/d86/group__imgproc__filter.html#gaeb1e0c1033e3f6b891a25d0511362aeb

func FindContours Uses

func FindContours(src Mat, mode RetrievalMode, method ContourApproximationMode) [][]image.Point

FindContours finds contours in a binary image.

For further details, please see: https://docs.opencv.org/3.3.0/d3/dc0/group__imgproc__shape.html#ga17ed9f5d79ae97bd4c7cf18403e1689a

func GaussianBlur Uses

func GaussianBlur(src Mat, dst Mat, ksize image.Point, sigmaX float64,
    sigmaY float64, borderType BorderType)

GaussianBlur blurs an image Mat using a Gaussian filter. The function convolves the src Mat image into the dst Mat using the specified Gaussian kernel params.

For further details, please see: http://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#gaabe8c836e97159a9193fb0b11ac52cf1

func GetOptimalDFTSize Uses

func GetOptimalDFTSize(vecsize int) int

GetOptimalDFTSize returns the optimal Discrete Fourier Transform (DFT) size for a given vector size.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga6577a2e59968936ae02eb2edde5de299

func GetTextSize Uses

func GetTextSize(text string, fontFace HersheyFont, fontScale float64, thickness int) image.Point

GetTextSize calculates the width and height of a text string. It returns an image.Point with the size required to draw text using a specific font face, scale, and thickness.

For further details, please see: http://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#ga3d2abfcb995fd2db908c8288199dba82

func GoodFeaturesToTrack Uses

func GoodFeaturesToTrack(img Mat, corners Mat, maxCorners int, quality float64, minDist float64)

GoodFeaturesToTrack determines strong corners on an image. The function finds the most prominent corners in the image or in the specified image region.

For further details, please see: https://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga1d6bb77486c8f92d79c8793ad995d541

func GroupRectangles Uses

func GroupRectangles(rects []image.Rectangle, groupThreshold int, eps float64) []image.Rectangle

GroupRectangles groups the object candidate rectangles.

For further details, please see: https://docs.opencv.org/3.4.0/d5/d54/group__objdetect.html#ga3dba897ade8aa8227edda66508e16ab9

func HoughCircles Uses

func HoughCircles(src Mat, circles Mat, method int, dp float64, minDist float64)

HoughCircles finds circles in a grayscale image using the Hough transform. The only "method" currently supported is HOUGH_GRADIENT = 3.

For further details, please see: https://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga47849c3be0d0406ad3ca45db65a25d2d

func HoughLines Uses

func HoughLines(src Mat, lines Mat, rho float32, theta float32, threshold int)

HoughLines implements the standard or standard multi-scale Hough transform algorithm for line detection. For a good explanation of Hough transform, see: http://homepages.inf.ed.ac.uk/rbf/HIPR2/hough.htm

For further details, please see: http://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga46b4e588934f6c8dfd509cc6e0e4545a

func HoughLinesP Uses

func HoughLinesP(src Mat, lines Mat, rho float32, theta float32, threshold int)

HoughLinesP implements the probabilistic Hough transform algorithm for line detection. For a good explanation of Hough transform, see: http://homepages.inf.ed.ac.uk/rbf/HIPR2/hough.htm

For further details, please see: http://docs.opencv.org/3.4.0/dd/d1a/group__imgproc__feature.html#ga8618180a5948286384e3b7ca02f6feeb

func IMEncode Uses

func IMEncode(fileExt FileExt, img Mat) (buf []byte, err error)

IMEncode encodes an image Mat into a memory buffer. This function compresses the image and stores it in the returned memory buffer, using the image format passed in in the form of a file extension string.

For further details, please see: http://docs.opencv.org/3.4.0/d4/da8/group__imgcodecs.html#ga461f9ac09887e47797a54567df3b8b63

func IMWrite Uses

func IMWrite(name string, img Mat) bool

IMWrite writes a Mat to an image file.

For further details, please see: http://docs.opencv.org/3.4.0/d4/da8/group__imgcodecs.html#gabbc7ef1aa2edfaa87772f1202d67e0ce

func IMWriteWithParams Uses

func IMWriteWithParams(name string, img Mat, params []int) bool

IMWrite writes a Mat to an image file. With that func you can pass compression parameters

For further details, please see: http://docs.opencv.org/3.4.0/d4/da8/group__imgcodecs.html#gabbc7ef1aa2edfaa87772f1202d67e0ce

func InRange Uses

func InRange(src Mat, lb Mat, ub 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.4.0/d2/de8/group__core__array.html#ga48af0ab51e36436c5d04340e036ce981

func LUT Uses

func LUT(src, wbLUT, dst Mat)

LUT performs a look-up table transform of an array.

The function LUT fills the output array with values from the look-up table. Indices of the entries are taken from the input array.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#gab55b8d062b7f5587720ede032d34156f

func Laplacian Uses

func Laplacian(src Mat, dst Mat, dDepth int, size int, scale float64,
    delta float64, borderType BorderType)

Laplacian calculates the Laplacian of an image.

For further details, please see: https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#gad78703e4c8fe703d479c1860d76429e6

func Line Uses

func Line(img Mat, pt1 image.Point, pt2 image.Point, c color.RGBA, thickness int)

Line draws a line segment connecting two points.

For further details, please see: https://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#ga7078a9fae8c7e7d13d24dac2520ae4a2

func MatchTemplate Uses

func MatchTemplate(image Mat, templ Mat, result Mat, method TemplateMatchMode, mask Mat)

MatchTemplate compares a template against overlapped image regions.

For further details, please see: https://docs.opencv.org/3.4.0/df/dfb/group__imgproc__object.html#ga586ebfb0a7fb604b35a23d85391329be

func MedianBlur Uses

func MedianBlur(src Mat, dst Mat, ksize int)

MedianBlur blurs an image using the median filter.

For further details, please see: https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#ga564869aa33e58769b4469101aac458f9

func Merge Uses

func Merge(mv []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.4.0/d2/de8/group__core__array.html#ga7d7b4d6c6ee504b30a20b1680029c7b4

func MinMaxLoc Uses

func MinMaxLoc(input Mat) (minVal, maxVal float32, minLoc, maxLoc image.Point)

MinMaxLoc finds the global minimum and maximum in an array.

For further details, please see: https://docs.opencv.org/trunk/d2/de8/group__core__array.html#gab473bf2eb6d14ff97e89b355dac20707

func Moments Uses

func Moments(src Mat, binaryImage bool) map[string]float64

Moments calculates all of the moments up to the third order of a polygon or rasterized shape.

For further details, please see: https://docs.opencv.org/3.4.0/d3/dc0/group__imgproc__shape.html#ga556a180f43cab22649c23ada36a8a139

func MorphologyEx Uses

func MorphologyEx(src Mat, dst Mat, op MorphType, kernel Mat)

MorphologyEx performs advanced morphological transformations.

For further details, please see: https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#ga67493776e3ad1a3df63883829375201f

func Norm Uses

func Norm(src1 Mat, normType NormType) float64

Norm calculates the absolute norm of an array.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga7c331fb8dd951707e184ef4e3f21dd33

func Normalize Uses

func Normalize(src Mat, dst Mat, alpha float64, beta float64, typ NormType)

Normalize normalizes the norm or value range of an array.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga87eef7ee3970f86906d69a92cbf064bd

func OpenCVVersion Uses

func OpenCVVersion() string

OpenCVVersion returns the current OpenCV lib version

func PutText Uses

func PutText(img Mat, text string, org image.Point, fontFace HersheyFont, fontScale float64, c color.RGBA, thickness int)

PutText draws a text string. It renders the specified text string into the img Mat at the location passed in the "org" param, using the desired font face, font scale, color, and line thinkness.

For further details, please see: http://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#ga5126f47f883d730f633d74f07456c576

func Rectangle Uses

func Rectangle(img Mat, r image.Rectangle, c color.RGBA, thickness int)

Rectangle draws a simple, thick, or filled up-right rectangle. It renders a rectangle with the desired characteristics to the target Mat image.

For further details, please see: http://docs.opencv.org/3.4.0/d6/d6e/group__imgproc__draw.html#ga346ac30b5c74e9b5137576c9ee9e0e8c

func Resize Uses

func Resize(src, dst Mat, sz image.Point, fx, fy float64, interp InterpolationFlags)

Resize resizes an image. It resizes the image src down to or up to the specified size, storing the result in dst. Note that src and dst may be the same image. If you wish to scale by factor, an empty sz may be passed and non-zero fx and fy. Likewise, if you wish to scale to an explicit size, a non-empty sz may be passed with zero for both fx and fy.

For further details, please see: https://docs.opencv.org/3.4.0/da/d54/group__imgproc__transform.html#ga47a974309e9102f5f08231edc7e7529d

func Scharr Uses

func Scharr(src Mat, dst Mat, dDepth int, dx int, dy int, scale float64,
    delta float64, borderType BorderType)

Scharr calculates the first x- or y- image derivative using Scharr operator.

For further details, please see: https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#gaa13106761eedf14798f37aa2d60404c9

func SelectROI Uses

func SelectROI(name string, img Mat) image.Rectangle

SelectROI selects a Region Of Interest (ROI) on the given image. It creates a window and allows user to select a ROI using mouse.

Controls: use space or enter to finish selection, use key c to cancel selection (function will return a zero Rect).

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga8daf4730d3adf7035b6de9be4c469af5

func SelectROIs Uses

func SelectROIs(name string, img Mat) []image.Rectangle

SelectROIs selects multiple Regions Of Interest (ROI) on the given image. It creates a window and allows user to select ROIs using mouse.

Controls: use space or enter to finish current selection and start a new one use esc to terminate multiple ROI selection process

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga0f11fad74a6432b8055fb21621a0f893

func Threshold Uses

func Threshold(src Mat, dst Mat, thresh float32, maxvalue float32, typ ThresholdType)

Threshold applies a fixed-level threshold to each array element.

For further details, please see: https://docs.opencv.org/3.3.0/d7/d1b/group__imgproc__misc.html#gae8a4a146d1ca78c626a53577199e9c57

func Version Uses

func Version() string

Version returns the current golang package version

func WaitKey Uses

func WaitKey(delay int) int

WaitKey that is not attached to a specific Window. Only use when no Window exists in your application, e.g. command line app.

func WarpAffine Uses

func WarpAffine(src, dst, m Mat, sz image.Point)

WarpAffine applies an affine transformation to an image. For more parameters please check WarpAffineWithParams

For further details, please see: https://docs.opencv.org/3.4.0/da/d54/group__imgproc__transform.html#ga0203d9ee5fcd28d40dbc4a1ea4451983

func WarpAffineWithParams Uses

func WarpAffineWithParams(src, dst, m Mat, sz image.Point, flags InterpolationFlags, borderType BorderType, borderValue color.RGBA)

WarpAffineWithParams applies an affine transformation to an image.

For further details, please see: https://docs.opencv.org/3.4.0/da/d54/group__imgproc__transform.html#ga0203d9ee5fcd28d40dbc4a1ea4451983

type AKAZE Uses

type AKAZE struct {
    // contains filtered or unexported fields
}

AKAZE is a wrapper around the cv::AKAZE algorithm.

func NewAKAZE Uses

func NewAKAZE() AKAZE

NewAKAZE returns a new AKAZE algorithm

For further details, please see: https://docs.opencv.org/3.4.0/d8/d30/classcv_1_1AKAZE.html

func (*AKAZE) Close Uses

func (a *AKAZE) Close() error

Close AKAZE.

func (*AKAZE) Detect Uses

func (a *AKAZE) Detect(src Mat) []KeyPoint

Detect keypoints in an image using AKAZE.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887

func (*AKAZE) DetectAndCompute Uses

func (a *AKAZE) DetectAndCompute(src Mat, mask Mat) ([]KeyPoint, Mat)

DetectAndCompute keypoints and compute in an image using AKAZE.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677

type AgastFeatureDetector Uses

type AgastFeatureDetector struct {
    // contains filtered or unexported fields
}

AgastFeatureDetector is a wrapper around the cv::AgastFeatureDetector.

func NewAgastFeatureDetector Uses

func NewAgastFeatureDetector() AgastFeatureDetector

NewAgastFeatureDetector returns a new AgastFeatureDetector algorithm

For further details, please see: https://docs.opencv.org/3.4.0/d7/d19/classcv_1_1AgastFeatureDetector.html

func (*AgastFeatureDetector) Close Uses

func (a *AgastFeatureDetector) Close() error

Close AgastFeatureDetector.

func (*AgastFeatureDetector) Detect Uses

func (a *AgastFeatureDetector) Detect(src Mat) []KeyPoint

Detect keypoints in an image using AgastFeatureDetector.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887

type BRISK Uses

type BRISK struct {
    // contains filtered or unexported fields
}

BRISK is a wrapper around the cv::BRISK algorithm.

func NewBRISK Uses

func NewBRISK() BRISK

NewBRISK returns a new BRISK algorithm

For further details, please see: https://docs.opencv.org/3.4.0/d8/d30/classcv_1_1AKAZE.html

func (*BRISK) Close Uses

func (b *BRISK) Close() error

Close BRISK.

func (*BRISK) Detect Uses

func (b *BRISK) Detect(src Mat) []KeyPoint

Detect keypoints in an image using BRISK.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887

func (*BRISK) DetectAndCompute Uses

func (b *BRISK) DetectAndCompute(src Mat, mask Mat) ([]KeyPoint, Mat)

DetectAndCompute keypoints and compute in an image using BRISK.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677

type BackgroundSubtractorKNN Uses

type BackgroundSubtractorKNN struct {
    // contains filtered or unexported fields
}

BackgroundSubtractorKNN is a wrapper around the cv::BackgroundSubtractorKNN.

func NewBackgroundSubtractorKNN Uses

func NewBackgroundSubtractorKNN() BackgroundSubtractorKNN

NewBackgroundSubtractorKNN returns a new BackgroundSubtractor algorithm of type KNN. K-Nearest Neighbors (KNN) uses a Background/Foreground Segmentation Algorithm

For further details, please see: https://docs.opencv.org/3.4.0/db/d88/classcv_1_1BackgroundSubtractorKNN.html

func (*BackgroundSubtractorKNN) Apply Uses

func (k *BackgroundSubtractorKNN) Apply(src Mat, dst Mat)

Apply computes a foreground mask using the current BackgroundSubtractorKNN.

For further details, please see: https://docs.opencv.org/3.4.0/d7/df6/classcv_1_1BackgroundSubtractor.html#aa735e76f7069b3fa9c3f32395f9ccd21

func (*BackgroundSubtractorKNN) Close Uses

func (k *BackgroundSubtractorKNN) Close() error

Close BackgroundSubtractorKNN.

type BackgroundSubtractorMOG2 Uses

type BackgroundSubtractorMOG2 struct {
    // contains filtered or unexported fields
}

BackgroundSubtractorMOG2 is a wrapper around the cv::BackgroundSubtractorMOG2.

func NewBackgroundSubtractorMOG2 Uses

func NewBackgroundSubtractorMOG2() BackgroundSubtractorMOG2

NewBackgroundSubtractorMOG2 returns a new BackgroundSubtractor algorithm of type MOG2. MOG2 is a Gaussian Mixture-based Background/Foreground Segmentation Algorithm.

For further details, please see: https://docs.opencv.org/3.4.0/d7/d7b/classcv_1_1BackgroundSubtractorMOG2.html

func (*BackgroundSubtractorMOG2) Apply Uses

func (b *BackgroundSubtractorMOG2) Apply(src Mat, dst Mat)

Apply computes a foreground mask using the current BackgroundSubtractorMOG2.

For further details, please see: https://docs.opencv.org/3.4.0/d7/df6/classcv_1_1BackgroundSubtractor.html#aa735e76f7069b3fa9c3f32395f9ccd21

func (*BackgroundSubtractorMOG2) Close Uses

func (b *BackgroundSubtractorMOG2) Close() error

Close BackgroundSubtractorMOG2.

type BorderType Uses

type BorderType int

BorderType type of border.

const (
    // BorderConstant border type
    BorderConstant BorderType = 0

    // BorderReplicate border type
    BorderReplicate = 1

    // BorderReflect border type
    BorderReflect = 2

    // BorderWrap border type
    BorderWrap = 3

    // BorderReflect101 border type
    BorderReflect101 = 4

    // BorderTransparent border type
    BorderTransparent = 5

    // BorderDefault border type
    BorderDefault = BorderReflect101
)

type CascadeClassifier Uses

type CascadeClassifier struct {
    // contains filtered or unexported fields
}

CascadeClassifier is a cascade classifier class for object detection.

For further details, please see: http://docs.opencv.org/3.4.0/d1/de5/classcv_1_1CascadeClassifier.html

func NewCascadeClassifier Uses

func NewCascadeClassifier() CascadeClassifier

NewCascadeClassifier returns a new CascadeClassifier.

func (*CascadeClassifier) Close Uses

func (c *CascadeClassifier) Close() error

Close deletes the CascadeClassifier's pointer.

func (*CascadeClassifier) DetectMultiScale Uses

func (c *CascadeClassifier) DetectMultiScale(img Mat) []image.Rectangle

DetectMultiScale detects objects of different sizes in the input Mat image. The detected objects are returned as a slice of image.Rectangle structs.

For further details, please see: http://docs.opencv.org/3.4.0/d1/de5/classcv_1_1CascadeClassifier.html#aaf8181cb63968136476ec4204ffca498

func (*CascadeClassifier) DetectMultiScaleWithParams Uses

func (c *CascadeClassifier) DetectMultiScaleWithParams(img Mat, scale float64,
    minNeighbors, flags int, minSize, maxSize image.Point) []image.Rectangle

DetectMultiScaleWithParams calls DetectMultiScale but allows setting parameters to values other than just the defaults.

For further details, please see: http://docs.opencv.org/3.4.0/d1/de5/classcv_1_1CascadeClassifier.html#aaf8181cb63968136476ec4204ffca498

func (*CascadeClassifier) Load Uses

func (c *CascadeClassifier) Load(name string) bool

Load cascade classifier from a file.

For further details, please see: http://docs.opencv.org/3.4.0/d1/de5/classcv_1_1CascadeClassifier.html#a1a5884c8cc749422f9eb77c2471958bc

type ColorConversionCode Uses

type ColorConversionCode int

ColorConversionCode is a color conversion code used on Mat.

For further details, please see: http://docs.opencv.org/3.4.0/d7/d1b/group__imgproc__misc.html#ga4e0972be5de079fed4e3a10e24ef5ef0

const (
    // ColorBGRToBGRA adds alpha channel to BGR image.
    ColorBGRToBGRA ColorConversionCode = 0

    // ColorBGRAToBGR removes alpha channel from BGR image.
    ColorBGRAToBGR = 1

    // ColorBGRToRGBA converts from BGR to RGB with alpha channel.
    ColorBGRToRGBA = 2

    // ColorRGBAToBGR converts from RGB with alpha to BGR color space.
    ColorRGBAToBGR = 3

    // ColorBGRToRGB converts from BGR to RGB without alpha channel.
    ColorBGRToRGB = 4

    // ColorBGRAToRGBA converts from BGR with alpha channel
    // to RGB with alpha channel.
    ColorBGRAToRGBA = 5

    // ColorBGRToGray converts from BGR to grayscale.
    ColorBGRToGray = 6

    // ColorRGBToGray converts from RGB to grayscale.
    ColorRGBToGray = 7

    // ColorGrayToBGR converts from grayscale to BGR.
    ColorGrayToBGR = 8

    // ColorGrayToBGRA converts from grayscale to BGR with alpha channel.
    ColorGrayToBGRA = 9

    // ColorBGRAToGray converts from BGR with alpha channel to grayscale.
    ColorBGRAToGray = 10

    // ColorRGBAToGray converts from RGB with alpha channel to grayscale.
    ColorRGBAToGray = 11

    // ColorBGRToBGR565 converts from BGR to BGR565 (16-bit images).
    ColorBGRToBGR565 = 12

    // ColorRGBToBGR565 converts from RGB to BGR565 (16-bit images).
    ColorRGBToBGR565 = 13

    // ColorBGR565ToBGR converts from BGR565 (16-bit images) to BGR.
    ColorBGR565ToBGR = 14

    // ColorBGR565ToRGB converts from BGR565 (16-bit images) to RGB.
    ColorBGR565ToRGB = 15

    // ColorBGRAToBGR565 converts from BGRA (with alpha channel)
    // to BGR565 (16-bit images).
    ColorBGRAToBGR565 = 16

    // ColorRGBAToBGR565 converts from RGBA (with alpha channel)
    // to BGR565 (16-bit images).
    ColorRGBAToBGR565 = 17

    // ColorBGR565ToBGRA converts from BGR565 (16-bit images)
    // to BGRA (with alpha channel).
    ColorBGR565ToBGRA = 18

    // ColorBGR565ToRGBA converts from BGR565 (16-bit images)
    // to RGBA (with alpha channel).
    ColorBGR565ToRGBA = 19

    // ColorGrayToBGR565 converts from grayscale
    // to BGR565 (16-bit images).
    ColorGrayToBGR565 = 20

    // ColorBGR565ToGray converts from BGR565 (16-bit images)
    // to grayscale.
    ColorBGR565ToGray = 21

    // ColorBGRToBGR555 converts from BGR to BGR555 (16-bit images).
    ColorBGRToBGR555 = 22

    // ColorRGBToBGR555 converts from RGB to BGR555 (16-bit images).
    ColorRGBToBGR555 = 23

    // ColorBGR555ToBGR converts from BGR555 (16-bit images) to BGR.
    ColorBGR555ToBGR = 24

    // ColorBGR555ToRGB converts from BGR555 (16-bit images) to RGB.
    ColorBGR555ToRGB = 25

    // ColorBGRAToBGR555 converts from BGRA (with alpha channel)
    // to BGR555 (16-bit images).
    ColorBGRAToBGR555 = 26

    // ColorRGBAToBGR555 converts from RGBA (with alpha channel)
    // to BGR555 (16-bit images).
    ColorRGBAToBGR555 = 27

    // ColorBGR555ToBGRA converts from BGR555 (16-bit images)
    // to BGRA (with alpha channel).
    ColorBGR555ToBGRA = 28

    // ColorBGR555ToRGBA converts from BGR555 (16-bit images)
    // to RGBA (with alpha channel).
    ColorBGR555ToRGBA = 29

    // ColorGrayToBGR555 converts from grayscale to BGR555 (16-bit images).
    ColorGrayToBGR555 = 30

    // ColorBGR555ToGRAY converts from BGR555 (16-bit images) to grayscale.
    ColorBGR555ToGRAY = 31

    // ColorBGRToXYZ converts from BGR to CIE XYZ.
    ColorBGRToXYZ = 32

    // ColorRGBToXYZ converts from RGB to CIE XYZ.
    ColorRGBToXYZ = 33

    // ColorXYZToBGR converts from CIE XYZ to BGR.
    ColorXYZToBGR = 34

    // ColorXYZToRGB converts from CIE XYZ to RGB.
    ColorXYZToRGB = 35

    // ColorBGRToYCrCb converts from BGR to luma-chroma (aka YCC).
    ColorBGRToYCrCb = 36

    // ColorRGBToYCrCb converts from RGB to luma-chroma (aka YCC).
    ColorRGBToYCrCb = 37

    // ColorYCrCbToBGR converts from luma-chroma (aka YCC) to BGR.
    ColorYCrCbToBGR = 38

    // ColorYCrCbToRGB converts from luma-chroma (aka YCC) to RGB.
    ColorYCrCbToRGB = 39

    // ColorBGRToHSV converts from BGR to HSV (hue saturation value).
    ColorBGRToHSV = 40

    // ColorRGBToHSV converts from RGB to HSV (hue saturation value).
    ColorRGBToHSV = 41

    // ColorBGRToLab converts from BGR to CIE Lab.
    ColorBGRToLab = 44

    // ColorRGBToLab converts from RGB to CIE Lab.
    ColorRGBToLab = 45

    // ColorBGRToLuv converts from BGR to CIE Luv.
    ColorBGRToLuv = 50

    // ColorRGBToLuv converts from RGB to CIE Luv.
    ColorRGBToLuv = 51

    // ColorBGRToHLS converts from BGR to HLS (hue lightness saturation).
    ColorBGRToHLS = 52

    // ColorRGBToHLS converts from RGB to HLS (hue lightness saturation).
    ColorRGBToHLS = 53

    // ColorHSVToBGR converts from HSV (hue saturation value) to BGR.
    ColorHSVToBGR = 54

    // ColorHSVToRGB converts from HSV (hue saturation value) to RGB.
    ColorHSVToRGB = 55

    // ColorLabToBGR converts from CIE Lab to BGR.
    ColorLabToBGR = 56

    // ColorLabToRGB converts from CIE Lab to RGB.
    ColorLabToRGB = 57

    // ColorLuvToBGR converts from CIE Luv to BGR.
    ColorLuvToBGR = 58

    // ColorLuvToRGB converts from CIE Luv to RGB.
    ColorLuvToRGB = 59

    // ColorHLSToBGR converts from HLS (hue lightness saturation) to BGR.
    ColorHLSToBGR = 60

    // ColorHLSToRGB converts from HLS (hue lightness saturation) to RGB.
    ColorHLSToRGB = 61

    // ColorBGRToHSVFull converts from BGR to HSV (hue saturation value) full.
    ColorBGRToHSVFull = 66

    // ColorRGBToHSVFull converts from RGB to HSV (hue saturation value) full.
    ColorRGBToHSVFull = 67

    // ColorBGRToHLSFull converts from BGR to HLS (hue lightness saturation) full.
    ColorBGRToHLSFull = 68

    // ColorRGBToHLSFull converts from RGB to HLS (hue lightness saturation) full.
    ColorRGBToHLSFull = 69

    // ColorHSVToBGRFull converts from HSV (hue saturation value) to BGR full.
    ColorHSVToBGRFull = 70

    // ColorHSVToRGBFull converts from HSV (hue saturation value) to RGB full.
    ColorHSVToRGBFull = 71

    // ColorHLSToBGRFull converts from HLS (hue lightness saturation) to BGR full.
    ColorHLSToBGRFull = 72

    // ColorHLSToRGBFull converts from HLS (hue lightness saturation) to RGB full.
    ColorHLSToRGBFull = 73

    // ColorLBGRToLab converts from LBGR to CIE Lab.
    ColorLBGRToLab = 74

    // ColorLRGBToLab converts from LRGB to CIE Lab.
    ColorLRGBToLab = 75

    // ColorLBGRToLuv converts from LBGR to CIE Luv.
    ColorLBGRToLuv = 76

    // ColorLRGBToLuv converts from LRGB to CIE Luv.
    ColorLRGBToLuv = 77

    // ColorLabToLBGR converts from CIE Lab to LBGR.
    ColorLabToLBGR = 78

    // ColorLabToLRGB converts from CIE Lab to LRGB.
    ColorLabToLRGB = 79

    // ColorLuvToLBGR converts from CIE Luv to LBGR.
    ColorLuvToLBGR = 80

    // ColorLuvToLRGB converts from CIE Luv to LRGB.
    ColorLuvToLRGB = 81

    // ColorBGRToYUV converts from BGR to YUV.
    ColorBGRToYUV = 82

    // ColorRGBToYUV converts from RGB to YUV.
    ColorRGBToYUV = 83

    // ColorYUVToBGR converts from YUV to BGR.
    ColorYUVToBGR = 84

    // ColorYUVToRGB converts from YUV to RGB.
    ColorYUVToRGB = 85

    // ColorYUVToRGBNV12 converts from YUV 4:2:0 to RGB NV12.
    ColorYUVToRGBNV12 = 90

    // ColorYUVToBGRNV12 converts from YUV 4:2:0 to BGR NV12.
    ColorYUVToBGRNV12 = 91

    // ColorYUVToRGBNV21 converts from YUV 4:2:0 to RGB NV21.
    ColorYUVToRGBNV21 = 92

    // ColorYUVToBGRNV21 converts from YUV 4:2:0 to BGR NV21.
    ColorYUVToBGRNV21 = 93

    // ColorYUVToRGBANV12 converts from YUV 4:2:0 to RGBA NV12.
    ColorYUVToRGBANV12 = 94

    // ColorYUVToBGRANV12 converts from YUV 4:2:0 to BGRA NV12.
    ColorYUVToBGRANV12 = 95

    // ColorYUVToRGBANV21 converts from YUV 4:2:0 to RGBA NV21.
    ColorYUVToRGBANV21 = 96

    // ColorYUVToBGRANV21 converts from YUV 4:2:0 to BGRA NV21.
    ColorYUVToBGRANV21 = 97

    ColorYUVToRGBYV12 = 98
    ColorYUVToBGRYV12 = 99
    ColorYUVToRGBIYUV = 100
    ColorYUVToBGRIYUV = 101

    ColorYUVToRGBAYV12 = 102
    ColorYUVToBGRAYV12 = 103
    ColorYUVToRGBAIYUV = 104
    ColorYUVToBGRAIYUV = 105

    ColorYUVToGRAY420 = 106

    // YUV 4:2:2 family to RGB
    ColorYUVToRGBUYVY = 107
    ColorYUVToBGRUYVY = 108

    ColorYUVToRGBAUYVY = 111
    ColorYUVToBGRAUYVY = 112

    ColorYUVToRGBYUY2 = 115
    ColorYUVToBGRYUY2 = 116
    ColorYUVToRGBYVYU = 117
    ColorYUVToBGRYVYU = 118

    ColorYUVToRGBAYUY2 = 119
    ColorYUVToBGRAYUY2 = 120
    ColorYUVToRGBAYVYU = 121
    ColorYUVToBGRAYVYU = 122

    ColorYUVToGRAYUYVY = 123
    ColorYUVToGRAYYUY2 = 124

    // alpha premultiplication
    ColorRGBATomRGBA = 125
    ColormRGBAToRGBA = 126

    // RGB to YUV 4:2:0 family
    ColorRGBToYUVI420 = 127
    ColorBGRToYUVI420 = 128

    ColorRGBAToYUVI420 = 129
    ColorBGRAToYUVI420 = 130
    ColorRGBToYUVYV12  = 131
    ColorBGRToYUVYV12  = 132
    ColorRGBAToYUVYV12 = 133
    ColorBGRAToYUVYV12 = 134

    // Demosaicing
    ColorBayerBGToBGR = 46
    ColorBayerGBToBGR = 47
    ColorBayerRGToBGR = 48
    ColorBayerGRToBGR = 49

    ColorBayerBGToGRAY = 86
    ColorBayerGBToGRAY = 87
    ColorBayerRGToGRAY = 88
    ColorBayerGRToGRAY = 89

    // Demosaicing using Variable Number of Gradients
    ColorBayerBGToBGRVNG = 62
    ColorBayerGBToBGRVNG = 63
    ColorBayerRGToBGRVNG = 64
    ColorBayerGRToBGRVNG = 65

    // Edge-Aware Demosaicing
    ColorBayerBGToBGREA = 135
    ColorBayerGBToBGREA = 136
    ColorBayerRGToBGREA = 137
    ColorBayerGRToBGREA = 138

    // Demosaicing with alpha channel
    ColorBayerBGToBGRA = 139
    ColorBayerGBToBGRA = 140
    ColorBayerRGToBGRA = 141
    ColorBayerGRToBGRA = 142

    ColorCOLORCVTMAX = 143
)

type ColormapTypes Uses

type ColormapTypes int

ColormapTypes are the 12 GNU Octave/MATLAB equivalent colormaps.

For further details, please see: https://docs.opencv.org/3.4.0/d3/d50/group__imgproc__colormap.html

const (
    ColormapAutumn  ColormapTypes = 0
    ColormapBone                  = 1
    ColormapJet                   = 2
    ColormapWinter                = 3
    ColormapRainbow               = 4
    ColormapOcean                 = 5
    ColormapSummer                = 6
    ColormapSpring                = 7
    ColormapCool                  = 8
    ColormapHsv                   = 9
    ColormapPink                  = 10
    ColormapHot                   = 11
    ColormapParula                = 12
)

List of the available color maps

For further details, please see: https://docs.opencv.org/3.4.0/d3/d50/group__imgproc__colormap.html#ga9a805d8262bcbe273f16be9ea2055a65

type ContourApproximationMode Uses

type ContourApproximationMode int

ContourApproximationMode is the mode of the contour approximation algorithm.

const (
    // ChainApproxNone stores absolutely all the contour points. That is,
    // any 2 subsequent points (x1,y1) and (x2,y2) of the contour will be
    // either horizontal, vertical or diagonal neighbors, that is,
    // max(abs(x1-x2),abs(y2-y1))==1.
    ChainApproxNone ContourApproximationMode = 1

    // ChainApproxSimple compresses horizontal, vertical, and diagonal segments
    // and leaves only their end points.
    // For example, an up-right rectangular contour is encoded with 4 points.
    ChainApproxSimple = 2

    // ChainApproxTC89L1 applies one of the flavors of the Teh-Chin chain
    // approximation algorithms.
    ChainApproxTC89L1 = 3

    // ChainApproxTC89KCOS applies one of the flavors of the Teh-Chin chain
    // approximation algorithms.
    ChainApproxTC89KCOS = 4
)

type FastFeatureDetector Uses

type FastFeatureDetector struct {
    // contains filtered or unexported fields
}

FastFeatureDetector is a wrapper around the cv::FastFeatureDetector.

func NewFastFeatureDetector Uses

func NewFastFeatureDetector() FastFeatureDetector

NewFastFeatureDetector returns a new FastFeatureDetector algorithm

For further details, please see: https://docs.opencv.org/3.4.0/df/d74/classcv_1_1FastFeatureDetector.html

func (*FastFeatureDetector) Close Uses

func (f *FastFeatureDetector) Close() error

Close FastFeatureDetector.

func (*FastFeatureDetector) Detect Uses

func (f *FastFeatureDetector) Detect(src Mat) []KeyPoint

Detect keypoints in an image using FastFeatureDetector.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887

type FileExt Uses

type FileExt string
const (
    PNGFileExt  FileExt = ".png"
    JPEGFileExt FileExt = ".jpg"
    GIFFileExt  FileExt = ".gif"
)

type GFTTDetector Uses

type GFTTDetector struct {
    // contains filtered or unexported fields
}

GFTTDetector is a wrapper around the cv::GFTTDetector algorithm.

func NewGFTTDetector Uses

func NewGFTTDetector() GFTTDetector

NewGFTTDetector returns a new GFTTDetector algorithm

For further details, please see: https://docs.opencv.org/3.4.0/df/d21/classcv_1_1GFTTDetector.html

func (*GFTTDetector) Close Uses

func (a *GFTTDetector) Close() error

Close GFTTDetector.

func (*GFTTDetector) Detect Uses

func (a *GFTTDetector) Detect(src Mat) []KeyPoint

Detect keypoints in an image using GFTTDetector.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887

type HOGDescriptor Uses

type HOGDescriptor struct {
    // contains filtered or unexported fields
}

HOGDescriptor is a Histogram Of Gradiants (HOG) for object detection.

For further details, please see: https://docs.opencv.org/3.4.0/d5/d33/structcv_1_1HOGDescriptor.html#a723b95b709cfd3f95cf9e616de988fc8

func NewHOGDescriptor Uses

func NewHOGDescriptor() HOGDescriptor

NewHOGDescriptor returns a new HOGDescriptor.

func (*HOGDescriptor) Close Uses

func (h *HOGDescriptor) Close() error

Close deletes the HOGDescriptor's pointer.

func (*HOGDescriptor) DetectMultiScale Uses

func (h *HOGDescriptor) DetectMultiScale(img Mat) []image.Rectangle

DetectMultiScale detects objects in the input Mat image. The detected objects are returned as a slice of image.Rectangle structs.

For further details, please see: https://docs.opencv.org/3.4.0/d5/d33/structcv_1_1HOGDescriptor.html#a660e5cd036fd5ddf0f5767b352acd948

func (*HOGDescriptor) DetectMultiScaleWithParams Uses

func (h *HOGDescriptor) DetectMultiScaleWithParams(img Mat, hitThresh float64,
    winStride, padding image.Point, scale, finalThreshold float64, useMeanshiftGrouping bool) []image.Rectangle

DetectMultiScaleWithParams calls DetectMultiScale but allows setting parameters to values other than just the defaults.

For further details, please see: https://docs.opencv.org/3.4.0/d5/d33/structcv_1_1HOGDescriptor.html#a660e5cd036fd5ddf0f5767b352acd948

func (*HOGDescriptor) SetSVMDetector Uses

func (h *HOGDescriptor) SetSVMDetector(det Mat) error

SetSVMDetector sets the data for the HOGDescriptor.

For further details, please see: https://docs.opencv.org/3.4.0/d5/d33/structcv_1_1HOGDescriptor.html#a09e354ad701f56f9c550dc0385dc36f1

type HersheyFont Uses

type HersheyFont int

HersheyFont are the font libraries included in OpenCV. Only a subset of the available Hershey fonts are supported by OpenCV.

For more information, see: http://sources.isc.org/utils/misc/hershey-font.txt

const (
    // FontHersheySimplex is normal size sans-serif font.
    FontHersheySimplex HersheyFont = 0
    // FontHersheyPlain issmall size sans-serif font.
    FontHersheyPlain = 1
    // FontHersheyDuplex normal size sans-serif font
    // (more complex than FontHersheySIMPLEX).
    FontHersheyDuplex = 2
    // FontHersheyComplex i a normal size serif font.
    FontHersheyComplex = 3
    // FontHersheyTriplex is a normal size serif font
    // (more complex than FontHersheyCOMPLEX).
    FontHersheyTriplex = 4
    // FontHersheyComplexSmall is a smaller version of FontHersheyCOMPLEX.
    FontHersheyComplexSmall = 5
    // FontHersheyScriptSimplex is a hand-writing style font.
    FontHersheyScriptSimplex = 6
    // FontHersheyScriptComplex is a more complex variant of FontHersheyScriptSimplex.
    FontHersheyScriptComplex = 7
    // FontItalic is the flag for italic font.
    FontItalic = 16
)

type IMReadFlag Uses

type IMReadFlag int

IMReadFlag is one of the valid flags to use for the IMRead function.

const (
    // IMReadUnchanged return the loaded image as is (with alpha channel,
    // otherwise it gets cropped).
    IMReadUnchanged IMReadFlag = -1

    // IMReadGrayScale always convert image to the single channel
    // grayscale image.
    IMReadGrayScale = 0

    // IMReadColor always converts image to the 3 channel BGR color image.
    IMReadColor = 1

    // IMReadAnyDepth returns 16-bit/32-bit image when the input has the corresponding
    // depth, otherwise convert it to 8-bit.
    IMReadAnyDepth = 2

    // IMReadAnyColor the image is read in any possible color format.
    IMReadAnyColor = 4

    // IMReadLoadGDAL uses the gdal driver for loading the image.
    IMReadLoadGDAL = 8

    // IMReadReducedGrayscale2 always converts image to the single channel grayscale image
    // and the image size reduced 1/2.
    IMReadReducedGrayscale2 = 16

    // IMReadReducedColor2 always converts image to the 3 channel BGR color image and the
    // image size reduced 1/2.
    IMReadReducedColor2 = 17

    // IMReadReducedGrayscale4 always converts image to the single channel grayscale image and
    // the image size reduced 1/4.
    IMReadReducedGrayscale4 = 32

    // IMReadReducedColor4 always converts image to the 3 channel BGR color image and
    // the image size reduced 1/4.
    IMReadReducedColor4 = 33

    // IMReadReducedGrayscale8 always convert image to the single channel grayscale image and
    // the image size reduced 1/8.
    IMReadReducedGrayscale8 = 64

    // IMReadReducedColor8 always convert image to the 3 channel BGR color image and the
    // image size reduced 1/8.
    IMReadReducedColor8 = 65

    // IMReadIgnoreOrientation do not rotate the image according to EXIF's orientation flag.
    IMReadIgnoreOrientation = 128

    // For JPEG, it can be a quality from 0 to 100 (the higher is the better). Default value is 95.
    ImwriteJpegQuality = 1

    // Enable JPEG features, 0 or 1, default is False.
    ImwriteJpegProgressive = 2

    // Enable JPEG features, 0 or 1, default is False.
    ImwriteJpegOptimize = 3

    // JPEG restart interval, 0 - 65535, default is 0 - no restart.
    ImwriteJpegRstInterval = 4

    // Separate luma quality level, 0 - 100, default is 0 - don't use.
    ImwriteJpegLumaQuality = 5

    // Separate chroma quality level, 0 - 100, default is 0 - don't use.
    ImwriteJpegChromaQuality = 6

    // For PNG, it can be the compression level from 0 to 9. A higher value means a smaller size and longer compression time.
    // If specified, strategy is changed to IMWRITE_PNG_STRATEGY_DEFAULT (Z_DEFAULT_STRATEGY).
    // Default value is 1 (best speed setting).
    ImwritePngCompression = 16

    // One of cv::ImwritePNGFlags, default is IMWRITE_PNG_STRATEGY_RLE.
    ImwritePngStrategy = 17

    // Binary level PNG, 0 or 1, default is 0.
    ImwritePngBilevel = 18

    // For PPM, PGM, or PBM, it can be a binary format flag, 0 or 1. Default value is 1.
    ImwritePxmBinary = 32

    // For WEBP, it can be a quality from 1 to 100 (the higher is the better).
    // By default (without any parameter) and for quality above 100 the lossless compression is used.
    ImwriteWebpQuality = 64

    // For PAM, sets the TUPLETYPE field to the corresponding string value that is defined for the format.
    ImwritePamTupletype = 128

    // Use this value for normal data.
    ImwritePngStrategyDefault = 0

    // Use this value for data produced by a filter (or predictor).
    // Filtered data consists mostly of small values with a somewhat random distribution.
    // In this case, the compression algorithm is tuned to compress them better.
    ImwritePngStrategyFiltered = 1

    // Use this value to force Huffman encoding only (no string match).
    ImwritePngStrategyHuffmanOnly = 2

    // Use this value to limit match distances to one (run-length encoding).
    ImwritePngStrategyRle = 3

    // Using this value prevents the use of dynamic Huffman codes, allowing for a simpler decoder for special applications.
    ImwritePngStrategyFixed = 4
)

type InterpolationFlags Uses

type InterpolationFlags int

InterpolationFlags are bit flags that control the interpolation algorithm that is used.

const (
    // InterpolationNearestNeighbor is nearest neighbor. (fast but low quality)
    InterpolationNearestNeighbor InterpolationFlags = 0

    // InterpolationLinear is bilinear interpolation.
    InterpolationLinear = 1

    // InterpolationCubic is bicube interpolation.
    InterpolationCubic = 2

    // InterpolationArea uses pixel area relation. It is preferred for image
    // decimation as it gives moire-free results.
    InterpolationArea = 3

    // InterpolationLanczos4 is Lanczos interpolation over 8x8 neighborhood.
    InterpolationLanczos4 = 4

    // InterpolationDefault is an alias for InterpolationLinear.
    InterpolationDefault = InterpolationLinear

    // InterpolationMax indicates use maximum interpolation.
    InterpolationMax = 7
)

type KAZE Uses

type KAZE struct {
    // contains filtered or unexported fields
}

KAZE is a wrapper around the cv::KAZE algorithm.

func NewKAZE Uses

func NewKAZE() KAZE

NewKAZE returns a new KAZE algorithm

For further details, please see: https://docs.opencv.org/3.4.0/d3/d61/classcv_1_1KAZE.html

func (*KAZE) Close Uses

func (a *KAZE) Close() error

Close KAZE.

func (*KAZE) Detect Uses

func (a *KAZE) Detect(src Mat) []KeyPoint

Detect keypoints in an image using KAZE.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887

func (*KAZE) DetectAndCompute Uses

func (a *KAZE) DetectAndCompute(src Mat, mask Mat) ([]KeyPoint, Mat)

DetectAndCompute keypoints and compute in an image using KAZE.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677

type KeyPoint Uses

type KeyPoint struct {
    X, Y                  float64
    Size, Angle, Response float64
    Octave, ClassID       int
}

KeyPoint is data structure for salient point detectors.

For further details, please see: https://docs.opencv.org/3.4.0/d2/d29/classcv_1_1KeyPoint.html

type MSER Uses

type MSER struct {
    // contains filtered or unexported fields
}

MSER is a wrapper around the cv::MSER algorithm.

func NewMSER Uses

func NewMSER() MSER

NewMSER returns a new MSER algorithm

For further details, please see: https://docs.opencv.org/3.4.0/d3/d28/classcv_1_1MSER.html

func (*MSER) Close Uses

func (a *MSER) Close() error

Close MSER.

func (*MSER) Detect Uses

func (a *MSER) Detect(src Mat) []KeyPoint

Detect keypoints in an image using MSER.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887

type Mat Uses

type Mat struct {
    // contains filtered or unexported fields
}

Mat represents an n-dimensional dense numerical single-channel or multi-channel array. It can be used to store real or complex-valued vectors and matrices, grayscale or color images, voxel volumes, vector fields, point clouds, tensors, and histograms.

For further details, please see: http://docs.opencv.org/3.4.0/d3/d63/classcv_1_1Mat.html

func BlobFromImage Uses

func BlobFromImage(img Mat, scaleFactor float64, size image.Point, mean Scalar,
    swapRB bool, crop bool) Mat

BlobFromImage creates 4-dimensional blob from image. Optionally resizes and crops image from center, subtract mean values, scales values by scalefactor, swap Blue and Red channels.

For further details, please see: https://docs.opencv.org/trunk/d6/d0f/group__dnn.html#ga152367f253c81b53fe6862b299f5c5cd

func GetRotationMatrix2D Uses

func GetRotationMatrix2D(center image.Point, angle, scale float64) Mat

GetRotationMatrix2D calculates an affine matrix of 2D rotation.

For further details, please see: https://docs.opencv.org/3.4.0/da/d54/group__imgproc__transform.html#gafbbc470ce83812914a70abfb604f4326

func GetStructuringElement Uses

func GetStructuringElement(shape MorphShape, ksize image.Point) Mat

GetStructuringElement returns a structuring element of the specified size and shape for morphological operations.

For further details, please see: https://docs.opencv.org/3.4.0/d4/d86/group__imgproc__filter.html#gac342a1bb6eabf6f55c803b09268e36dc

func HOGDefaultPeopleDetector Uses

func HOGDefaultPeopleDetector() Mat

HOGDefaultPeopleDetector returns a new Mat with the HOG DefaultPeopleDetector.

For further details, please see: https://docs.opencv.org/3.4.0/d5/d33/structcv_1_1HOGDescriptor.html#a660e5cd036fd5ddf0f5767b352acd948

func IMDecode Uses

func IMDecode(buf []byte, flags IMReadFlag) Mat

IMDecode reads an image from a buffer in memory. The function IMDecode reads an image from the specified buffer in memory. If the buffer is too short or contains invalid data, the function returns an empty matrix.

For further details, please see: https://docs.opencv.org/3.4.0/d4/da8/group__imgcodecs.html#ga26a67788faa58ade337f8d28ba0eb19e

func IMRead Uses

func IMRead(name string, flags IMReadFlag) Mat

IMRead reads an image from a file into a Mat. The flags param is one of the IMReadFlag flags. If the image cannot be read (because of missing file, improper permissions, unsupported or invalid format), the function returns an empty Mat.

For further details, please see: http://docs.opencv.org/3.4.0/d4/da8/group__imgcodecs.html#ga288b8b3da0892bd651fce07b3bbd3a56

func NewMat Uses

func NewMat() Mat

NewMat returns a new empty Mat.

func NewMatFromBytes Uses

func NewMatFromBytes(rows int, cols int, mt MatType, data []byte) Mat

NewMatFromBytes returns a new Mat with a specific size and type, initialized from a []byte.

func NewMatFromScalar Uses

func NewMatFromScalar(s Scalar, mt MatType) Mat

NewMatFromScalar returns a new Mat for a specific Scalar value

func NewMatWithSize Uses

func NewMatWithSize(rows int, cols int, mt MatType) Mat

NewMatWithSize returns a new Mat with a specific size and type.

func (*Mat) Channels Uses

func (m *Mat) Channels() int

Channels returns the number of channels for this Mat.

func (*Mat) Clone Uses

func (m *Mat) Clone() Mat

Clone returns a cloned full copy of the Mat.

func (*Mat) Close Uses

func (m *Mat) Close() error

Close the Mat object.

func (*Mat) Cols Uses

func (m *Mat) Cols() int

Cols returns the number of columns for this Mat.

func (*Mat) ConvertFp16 Uses

func (m *Mat) ConvertFp16() Mat

ConvertFp16 converts a Mat to half-precision floating point.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#ga9c25d9ef44a2a48ecc3774b30cb80082

func (*Mat) ConvertTo Uses

func (m *Mat) ConvertTo(dst Mat, mt MatType)

ConvertTo converts Mat into destination Mat.

For further details, please see: https://docs.opencv.org/3.4.0/d3/d63/classcv_1_1Mat.html#adf88c60c5b4980e05bb556080916978b

func (*Mat) CopyTo Uses

func (m *Mat) CopyTo(dst Mat)

CopyTo copies Mat into destination Mat.

For further details, please see: https://docs.opencv.org/3.4.0/d3/d63/classcv_1_1Mat.html#a33fd5d125b4c302b0c9aa86980791a77

func (*Mat) Empty Uses

func (m *Mat) Empty() bool

Empty determines if the Mat is empty or not.

func (*Mat) GetDoubleAt Uses

func (m *Mat) GetDoubleAt(row int, col int) float64

GetDoubleAt returns a value from a specific row/col in this Mat expecting it to be of type double aka CV_64F.

func (*Mat) GetFloatAt Uses

func (m *Mat) GetFloatAt(row int, col int) float32

GetFloatAt returns a value from a specific row/col in this Mat expecting it to be of type float aka CV_32F.

func (*Mat) GetIntAt Uses

func (m *Mat) GetIntAt(row int, col int) int32

GetIntAt returns a value from a specific row/col in this Mat expecting it to be of type int aka CV_32S.

func (*Mat) GetSCharAt Uses

func (m *Mat) GetSCharAt(row int, col int) int8

GetSCharAt returns a value from a specific row/col in this Mat expecting it to be of type schar aka CV_8S.

func (*Mat) GetShortAt Uses

func (m *Mat) GetShortAt(row int, col int) int16

GetShortAt returns a value from a specific row/col in this Mat expecting it to be of type short aka CV_16S.

func (*Mat) GetUCharAt Uses

func (m *Mat) GetUCharAt(row int, col int) int8

GetUCharAt returns a value from a specific row/col in this Mat expecting it to be of type uchar aka CV_8U.

func (*Mat) Mean Uses

func (m *Mat) Mean() Scalar

Mean calculates the mean value M of array elements, independently for each channel, and return it as Scalar TODO pass second paramter with mask

func (*Mat) Ptr Uses

func (m *Mat) Ptr() C.Mat

Ptr returns the Mat's underlying object pointer.

func (*Mat) Region Uses

func (m *Mat) Region(rio image.Rectangle) Mat

Region returns a new Mat that points to a region of this Mat. Changes made to the region Mat will affect the original Mat, since they are pointers to the underlying OpenCV Mat object.

func (*Mat) Reshape Uses

func (m *Mat) Reshape(cn int, rows int) Mat

Reshape changes the shape and/or the number of channels of a 2D matrix without copying the data.

For further details, please see: https://docs.opencv.org/3.4.0/d3/d63/classcv_1_1Mat.html#a4eb96e3251417fa88b78e2abd6cfd7d8

func (*Mat) Rows Uses

func (m *Mat) Rows() int

Rows returns the number of rows for this Mat.

func (*Mat) SetDoubleAt Uses

func (m *Mat) SetDoubleAt(row int, col int, val float64)

SetDoubleAt set a value from a specific row/col in this Mat expecting it to be of type double aka CV_64F.

func (*Mat) SetFloatAt Uses

func (m *Mat) SetFloatAt(row int, col int, val float32)

SetFloatAt set a value from a specific row/col in this Mat expecting it to be of type float aka CV_32F.

func (*Mat) SetIntAt Uses

func (m *Mat) SetIntAt(row int, col int, val int32)

SetIntAt set a value from a specific row/col in this Mat expecting it to be of type int aka CV_32S.

func (*Mat) SetSCharAt Uses

func (m *Mat) SetSCharAt(row int, col int, val int8)

SetSCharAt set a value from a specific row/col in this Mat expecting it to be of type schar aka CV_8S.

func (*Mat) SetShortAt Uses

func (m *Mat) SetShortAt(row int, col int, val int16)

SetShortAt set a value from a specific row/col in this Mat expecting it to be of type short aka CV_16S.

func (*Mat) SetUCharAt Uses

func (m *Mat) SetUCharAt(row int, col int, val int8)

SetUCharAt set a value from a specific row/col in this Mat expecting it to be of type uchar aka CV_8U.

func (*Mat) ToBytes Uses

func (m *Mat) ToBytes() []byte

ToBytes copies the underlying Mat data to a byte array.

For further details, please see: https://docs.opencv.org/3.3.1/d3/d63/classcv_1_1Mat.html#a4d33bed1c850265370d2af0ff02e1564

func (*Mat) Type Uses

func (m *Mat) Type() int

Type returns the type for this Mat.

type MatType Uses

type MatType int

MatType is the type for the various different kinds of Mat you can create.

const (
    // MatTypeCV8U is a Mat of 8-bit unsigned int
    MatTypeCV8U MatType = 0

    // MatTypeCV8S is a Mat of 8-bit signed int
    MatTypeCV8S = 1

    // MatTypeCV16U is a Mat of 16-bit unsigned int
    MatTypeCV16U = 2

    // MatTypeCV16S is a Mat of 16-bit signed int
    MatTypeCV16S = 3

    // MatTypeCV32S is a Mat of 32-bit signed int
    MatTypeCV32S = 4

    // MatTypeCV32F is a Mat of 32-bit float
    MatTypeCV32F = 5

    // MatTypeCV64F is a Mat of 64-bit float
    MatTypeCV64F = 6

    // MatTypeCV8UC1 is a Mat of 8-bit unsigned int with a single channel
    MatTypeCV8UC1 = MatTypeCV8U + MatChannels1

    // MatTypeCV8UC2 is a Mat of 8-bit unsigned int with 2 channels
    MatTypeCV8UC2 = MatTypeCV8U + MatChannels2

    // MatTypeCV8UC3 is a Mat of 8-bit unsigned int with 3 channels
    MatTypeCV8UC3 = MatTypeCV8U + MatChannels3

    // MatTypeCV8UC4 is a Mat of 8-bit unsigned int with 4 channels
    MatTypeCV8UC4 = MatTypeCV8U + MatChannels4
)

type MorphShape Uses

type MorphShape int

MorphShape is the shape of the structuring element used for Morphing operations.

const (
    // MorphRect is the rectangular morph shape.
    MorphRect MorphShape = 0

    // MorphCross is the cross morph shape.
    MorphCross = 1

    // MorphEllipse is the ellipse morph shape.
    MorphEllipse = 2
)

type MorphType Uses

type MorphType int

MorphType type of morphological operation.

const (
    // MorphErode operation
    MorphErode MorphType = 0

    // MorphDilate operation
    MorphDilate = 1

    // MorphOpen operation
    MorphOpen = 2

    // MorphClose operation
    MorphClose = 3

    // MorphGradient operation
    MorphGradient = 4

    // MorphTophat operation
    MorphTophat = 5

    // MorphBlackhat operation
    MorphBlackhat = 6

    // MorphHitmiss operation
    MorphHitmiss = 7
)

type Net Uses

type Net struct {
    // contains filtered or unexported fields
}

Net allows you to create and manipulate comprehensive artificial neural networks.

For further details, please see: https://docs.opencv.org/3.4.0/db/d30/classcv_1_1dnn_1_1Net.html

func ReadNetFromCaffe Uses

func ReadNetFromCaffe(prototxt string, caffeModel string) Net

ReadNetFromCaffe reads a network model stored in Caffe framework's format.

For further details, please see: https://docs.opencv.org/3.4.0/d6/d0f/group__dnn.html#ga946b342af1355185a7107640f868b64a

func ReadNetFromTensorflow Uses

func ReadNetFromTensorflow(model string) Net

ReadNetFromTensorflow reads a network model stored in Tensorflow framework's format.

For further details, please see: https://docs.opencv.org/3.4.0/d6/d0f/group__dnn.html#gad820b280978d06773234ba6841e77e8d

func (*Net) Close Uses

func (net *Net) Close() error

Close Net

func (*Net) Empty Uses

func (net *Net) Empty() bool

Empty returns true if there are no layers in the network.

For further details, please see: https://docs.opencv.org/3.4.0/db/d30/classcv_1_1dnn_1_1Net.html#a6a5778787d5b8770deab5eda6968e66c

func (*Net) Forward Uses

func (net *Net) Forward(outputName string) Mat

Forward runs forward pass to compute output of layer with name outputName.

For further details, please see: https://docs.opencv.org/trunk/db/d30/classcv_1_1dnn_1_1Net.html#a98ed94cb6ef7063d3697259566da310b

func (*Net) SetInput Uses

func (net *Net) SetInput(blob Mat, name string)

SetInput sets the new value for the layer output blob.

For further details, please see: https://docs.opencv.org/trunk/db/d30/classcv_1_1dnn_1_1Net.html#a672a08ae76444d75d05d7bfea3e4a328

type NormType Uses

type NormType int

NormType for normalization operations.

For further details, please see: https://docs.opencv.org/3.4.0/d2/de8/group__core__array.html#gad12cefbcb5291cf958a85b4b67b6149f

const (
    // NormInf indicates use infinite normalization.
    NormInf NormType = 1

    // NormL1 indicates use L1 normalization.
    NormL1 = 2

    // NormL2 indicates use L2 normalization.
    NormL2 = 4

    // NormL2Sqr indicates use L2 squared normalization.
    NormL2Sqr = 5

    // NormHamming indicates use Hamming normalization.
    NormHamming = 6

    // NormHamming2 indicates use Hamming 2-bit normalization.
    NormHamming2 = 7

    // NormTypeMask indicates use type mask for normalization.
    NormTypeMask = 7

    // NormRelative indicates use relative normalization.
    NormRelative = 8

    // NormMixMax indicates use min/max normalization.
    NormMixMax = 32
)

type ORB Uses

type ORB struct {
    // contains filtered or unexported fields
}

ORB is a wrapper around the cv::ORB.

func NewORB Uses

func NewORB() ORB

NewORB returns a new ORB algorithm

For further details, please see: https://docs.opencv.org/3.4.0/d7/d19/classcv_1_1AgastFeatureDetector.html

func (*ORB) Close Uses

func (o *ORB) Close() error

Close ORB.

func (*ORB) Detect Uses

func (o *ORB) Detect(src Mat) []KeyPoint

Detect keypoints in an image using ORB.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887

func (*ORB) DetectAndCompute Uses

func (o *ORB) DetectAndCompute(src Mat, mask Mat) ([]KeyPoint, Mat)

DetectAndCompute detects keypoints and computes from an image using ORB.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#a8be0d1c20b08eb867184b8d74c15a677

type RetrievalMode Uses

type RetrievalMode int

RetrievalMode is the mode of the contour retrieval algorithm.

const (
    // RetrievalExternal retrieves only the extreme outer contours.
    // It sets `hierarchy[i][2]=hierarchy[i][3]=-1` for all the contours.
    RetrievalExternal RetrievalMode = 0

    // RetrievalList retrieves all of the contours without establishing
    // any hierarchical relationships.
    RetrievalList = 1

    // RetrievalCComp retrieves all of the contours and organizes them into
    // a two-level hierarchy. At the top level, there are external boundaries
    // of the components. At the second level, there are boundaries of the holes.
    // If there is another contour inside a hole of a connected component, it
    // is still put at the top level.
    RetrievalCComp = 2

    // RetrievalTree retrieves all of the contours and reconstructs a full
    // hierarchy of nested contours.
    RetrievalTree = 3

    // RetrievalFloodfill lacks a description in the original header.
    RetrievalFloodfill = 4
)

type Scalar Uses

type Scalar struct {
    Val1 float64
    Val2 float64
    Val3 float64
    Val4 float64
}

Scalar is a 4-element vector widely used in OpenCV to pass pixel values.

For further details, please see: http://docs.opencv.org/3.4.0/d1/da0/classcv_1_1Scalar__.html

func NewScalar Uses

func NewScalar(v1 float64, v2 float64, v3 float64, v4 float64) Scalar

NewScalar returns a new Scalar. These are usually colors typically being in BGR order.

type SimpleBlobDetector Uses

type SimpleBlobDetector struct {
    // contains filtered or unexported fields
}

SimpleBlobDetector is a wrapper around the cv::SimpleBlobDetector.

func NewSimpleBlobDetector Uses

func NewSimpleBlobDetector() SimpleBlobDetector

NewSimpleBlobDetector returns a new SimpleBlobDetector algorithm

For further details, please see: https://docs.opencv.org/3.4.0/d0/d7a/classcv_1_1SimpleBlobDetector.html

func (*SimpleBlobDetector) Close Uses

func (b *SimpleBlobDetector) Close() error

Close SimpleBlobDetector.

func (*SimpleBlobDetector) Detect Uses

func (b *SimpleBlobDetector) Detect(src Mat) []KeyPoint

Detect keypoints in an image using SimpleBlobDetector.

For further details, please see: https://docs.opencv.org/3.4.0/d0/d13/classcv_1_1Feature2D.html#aa4e9a7082ec61ebc108806704fbd7887

type TemplateMatchMode Uses

type TemplateMatchMode int

TemplateMatchMode is the type of the template matching operation.

const (
    // TmSqdiff maps to TM_SQDIFF
    TmSqdiff TemplateMatchMode = 0
    // TmSqdiffNormed maps to TM_SQDIFF_NORMED
    TmSqdiffNormed = 1
    // TmCcorr maps to TM_CCORR
    TmCcorr = 2
    // TmCcorrNormed maps to TM_CCORR_NORMED
    TmCcorrNormed = 3
    // TmCcoeff maps to TM_CCOEFF
    TmCcoeff = 4
    // TmCcoeffNormed maps to TM_CCOEFF_NORMED
    TmCcoeffNormed = 5
)

type TermCriteria Uses

type TermCriteria struct {
    // contains filtered or unexported fields
}

TermCriteria is the criteria for iterative algorithms.

For further details, please see: https://docs.opencv.org/3.4.0/d9/d5d/classcv_1_1TermCriteria.html

func NewTermCriteria Uses

func NewTermCriteria(typ TermCriteriaType, maxCount int, epsilon float64) TermCriteria

NewTermCriteria returns a new TermCriteria.

type TermCriteriaType Uses

type TermCriteriaType int

TermCriteriaType for TermCriteria.

For further details, please see: https://docs.opencv.org/3.4.0/d9/d5d/classcv_1_1TermCriteria.html#a56fecdc291ccaba8aad27d67ccf72c57

const (
    // Count is the maximum number of iterations or elements to compute.
    Count TermCriteriaType = 1

    // MaxIter is the maximum number of iterations or elements to compute.
    MaxIter = 1

    // EPS is the desired accuracy or change in parameters at which the
    // iterative algorithm stops.
    EPS = 2
)

type ThresholdType Uses

type ThresholdType int

ThresholdType type of threshold operation.

const (
    // ThresholdBinary threshold type
    ThresholdBinary ThresholdType = 0

    // ThresholdBinaryInv threshold type
    ThresholdBinaryInv = 1

    // ThresholdTrunc threshold type
    ThresholdTrunc = 2

    // ThresholdToZero threshold type
    ThresholdToZero = 3

    // ThresholdToZeroInv threshold type
    ThresholdToZeroInv = 4

    // ThresholdMask threshold type
    ThresholdMask = 7

    // ThresholdOtsu threshold type
    ThresholdOtsu = 8

    // ThresholdTriangle threshold type
    ThresholdTriangle = 16
)

type Trackbar Uses

type Trackbar struct {
    // contains filtered or unexported fields
}

Trackbar is a wrapper around OpenCV's "HighGUI" window Trackbars.

func (*Trackbar) GetPos Uses

func (t *Trackbar) GetPos() int

GetPos returns the trackbar position.

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga122632e9e91b9ec06943472c55d9cda8

func (*Trackbar) SetMax Uses

func (t *Trackbar) SetMax(pos int)

SetMax sets the trackbar maximum position.

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga7e5437ccba37f1154b65210902fc4480

func (*Trackbar) SetMin Uses

func (t *Trackbar) SetMin(pos int)

SetMin sets the trackbar minimum position.

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#gabe26ffe8d2b60cc678895595a581b7aa

func (*Trackbar) SetPos Uses

func (t *Trackbar) SetPos(pos int)

SetPos sets the trackbar position.

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga67d73c4c9430f13481fd58410d01bd8d

type VideoCapture Uses

type VideoCapture struct {
    // contains filtered or unexported fields
}

VideoCapture is a wrapper around the OpenCV VideoCapture class.

For further details, please see: http://docs.opencv.org/3.4.0/d8/dfe/classcv_1_1VideoCapture.html

func VideoCaptureDevice Uses

func VideoCaptureDevice(device int) (vc *VideoCapture, err error)

VideoCaptureDevice opens a VideoCapture from a device and prepares to start capturing.

func VideoCaptureFile Uses

func VideoCaptureFile(uri string) (vc *VideoCapture, err error)

VideoCaptureFile opens a VideoCapture from a file and prepares to start capturing.

func (*VideoCapture) Close Uses

func (v *VideoCapture) Close() error

Close VideoCapture object.

func (VideoCapture) Get Uses

func (v VideoCapture) Get(prop VideoCaptureProperties) float64

Get parameter with property (=key).

func (*VideoCapture) Grab Uses

func (v *VideoCapture) Grab(skip int)

Grab skips a specific number of frames.

func (*VideoCapture) IsOpened Uses

func (v *VideoCapture) IsOpened() bool

IsOpened returns if the VideoCapture has been opened to read from a file or capture device.

func (*VideoCapture) Read Uses

func (v *VideoCapture) Read(m Mat) bool

Read read the next frame from the VideoCapture to the Mat passed in as the parem. It returns false if the VideoCapture cannot read frame.

func (*VideoCapture) Set Uses

func (v *VideoCapture) Set(prop VideoCaptureProperties, param float64)

Set parameter with property (=key).

type VideoCaptureProperties Uses

type VideoCaptureProperties int

VideoCaptureProperties are the properties used for VideoCapture operations.

const (
    // VideoCapturePosMsec contains current position of the
    // video file in milliseconds.
    VideoCapturePosMsec VideoCaptureProperties = 0

    // VideoCapturePosFrames 0-based index of the frame to be
    // decoded/captured next.
    VideoCapturePosFrames = 1

    // VideoCapturePosAVIRatio relative position of the video file:
    // 0=start of the film, 1=end of the film.
    VideoCapturePosAVIRatio = 2

    // VideoCaptureFrameWidth is width of the frames in the video stream.
    VideoCaptureFrameWidth = 3

    // VideoCaptureFrameHeight controls height of frames in the video stream.
    VideoCaptureFrameHeight = 4

    // VideoCaptureFPS controls capture frame rate.
    VideoCaptureFPS = 5

    // VideoCaptureFOURCC contains the 4-character code of codec.
    // see VideoWriter::fourcc for details.
    VideoCaptureFOURCC = 6

    // VideoCaptureFrameCount contains number of frames in the video file.
    VideoCaptureFrameCount = 7

    // VideoCaptureFormat format of the Mat objects returned by
    // VideoCapture::retrieve().
    VideoCaptureFormat = 8

    // VideoCaptureMode contains backend-specific value indicating
    // the current capture mode.
    VideoCaptureMode = 9

    // VideoCaptureBrightness is brightness of the image
    // (only for those cameras that support).
    VideoCaptureBrightness = 10

    // VideoCaptureContrast is contrast of the image
    // (only for cameras that support it).
    VideoCaptureContrast = 11

    // VideoCaptureSaturation saturation of the image
    // (only for cameras that support).
    VideoCaptureSaturation = 12

    // VideoCaptureHue hue of the image (only for cameras that support).
    VideoCaptureHue = 13

    // VideoCaptureGain is the gain of the capture image.
    // (only for those cameras that support).
    VideoCaptureGain = 14

    // VideoCaptureExposure is the exposure of the capture image.
    // (only for those cameras that support).
    VideoCaptureExposure = 15

    // VideoCaptureConvertRGB is a boolean flags indicating whether
    // images should be converted to RGB.
    VideoCaptureConvertRGB = 16

    // VideoCaptureWhiteBalanceBlueU is currently unsupported.
    VideoCaptureWhiteBalanceBlueU = 17

    // VideoCaptureRectification is the rectification flag for stereo cameras.
    // Note: only supported by DC1394 v 2.x backend currently.
    VideoCaptureRectification = 18

    // VideoCaptureMonochrome indicates whether images should be
    // converted to monochrome.
    VideoCaptureMonochrome = 19

    // VideoCaptureSharpness controls image capture sharpness.
    VideoCaptureSharpness = 20

    // VideoCaptureAutoExposure controls the DC1394 exposure control
    // done by camera, user can adjust reference level using this feature.
    VideoCaptureAutoExposure = 21

    // VideoCaptureGamma controls video capture gamma.
    VideoCaptureGamma = 22

    // VideoCaptureTemperature controls video capture temperature.
    VideoCaptureTemperature = 23

    // VideoCaptureTrigger controls video capture trigger.
    VideoCaptureTrigger = 24

    // VideoCaptureTriggerDelay controls video capture trigger delay.
    VideoCaptureTriggerDelay = 25

    // VideoCaptureWhiteBalanceRedV controls video capture setting for
    // white balance.
    VideoCaptureWhiteBalanceRedV = 26

    // VideoCaptureZoom controls video capture zoom.
    VideoCaptureZoom = 27

    // VideoCaptureFocus controls video capture focus.
    VideoCaptureFocus = 28

    // VideoCaptureGUID controls video capture GUID.
    VideoCaptureGUID = 29

    // VideoCaptureISOSpeed controls video capture ISO speed.
    VideoCaptureISOSpeed = 30

    // VideoCaptureBacklight controls video capture backlight.
    VideoCaptureBacklight = 32

    // VideoCapturePan controls video capture pan.
    VideoCapturePan = 33

    // VideoCaptureTilt controls video capture tilt.
    VideoCaptureTilt = 34

    // VideoCaptureRoll controls video capture roll.
    VideoCaptureRoll = 35

    // VideoCaptureIris controls video capture iris.
    VideoCaptureIris = 36

    // VideoCaptureSettings is the pop up video/camera filter dialog. Note:
    // only supported by DSHOW backend currently. The property value is ignored.
    VideoCaptureSettings = 37

    // VideoCaptureBufferSize controls video capture buffer size.
    VideoCaptureBufferSize = 38

    // VideoCaptureAutoFocus controls video capture auto focus..
    VideoCaptureAutoFocus = 39
)

type VideoWriter Uses

type VideoWriter struct {
    // contains filtered or unexported fields
}

VideoWriter is a wrapper around the OpenCV VideoWriter`class.

For further details, please see: http://docs.opencv.org/3.4.0/dd/d9e/classcv_1_1VideoWriter.html

func VideoWriterFile Uses

func VideoWriterFile(name string, codec string, fps float64, width int, height int) (vw *VideoWriter, err error)

VideoWriterFile opens a VideoWriter with a specific output file. The "codec" param should be the four-letter code for the desired output codec, for example "MJPG".

For further details, please see: http://docs.opencv.org/3.4.0/dd/d9e/classcv_1_1VideoWriter.html#a0901c353cd5ea05bba455317dab81130

func (*VideoWriter) Close Uses

func (vw *VideoWriter) Close() error

Close VideoWriter object.

func (*VideoWriter) IsOpened Uses

func (vw *VideoWriter) IsOpened() bool

IsOpened checks if the VideoWriter is open and ready to be written to.

For further details, please see: http://docs.opencv.org/3.4.0/dd/d9e/classcv_1_1VideoWriter.html#a9a40803e5f671968ac9efa877c984d75

func (*VideoWriter) Write Uses

func (vw *VideoWriter) Write(img Mat) error

Write the next video frame from the Mat image to the open VideoWriter.

For further details, please see: http://docs.opencv.org/3.4.0/dd/d9e/classcv_1_1VideoWriter.html#a3115b679d612a6a0b5864a0c88ed4b39

type Window Uses

type Window struct {
    // contains filtered or unexported fields
}

Window is a wrapper around OpenCV's "HighGUI" named windows. While OpenCV was designed for use in full-scale applications and can be used within functionally rich UI frameworks (such as Qt*, WinForms*, or Cocoa*) or without any UI at all, sometimes there it is required to try functionality 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.4.0/d7/dfc/group__highgui.html

func NewWindow Uses

func NewWindow(name string) *Window

NewWindow creates a new named OpenCV window

For further details, please see: http://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga5afdf8410934fd099df85c75b2e0888b

func (*Window) Close Uses

func (w *Window) Close() error

Close closes and deletes a named OpenCV Window.

For further details, please see: http://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga851ccdd6961022d1d5b4c4f255dbab34

func (*Window) CreateTrackbar Uses

func (w *Window) CreateTrackbar(name string, max int) *Trackbar

CreateTrackbar creates a trackbar and attaches it to the specified window.

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#gaf78d2155d30b728fc413803745b67a9b

func (*Window) GetWindowProperty Uses

func (w *Window) GetWindowProperty(flag WindowPropertyFlag) float64

GetWindowProperty returns properties of a window.

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#gaaf9504b8f9cf19024d9d44a14e461656

func (*Window) IMShow Uses

func (w *Window) IMShow(img Mat)

IMShow displays an image Mat in the specified window. This function should be followed by the WaitKey function which displays the image for specified milliseconds. Otherwise, it won't display the image.

For further details, please see: http://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga453d42fe4cb60e5723281a89973ee563

func (*Window) IsOpen Uses

func (w *Window) IsOpen() bool

IsOpen checks to see if the Window seems to be open.

func (*Window) MoveWindow Uses

func (w *Window) MoveWindow(x, y int)

MoveWindow moves window to the specified position.

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga8d86b207f7211250dbe6e28f76307ffb

func (*Window) ResizeWindow Uses

func (w *Window) ResizeWindow(width, height int)

ResizeWindow resizes window to the specified size.

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga9e80e080f7ef33f897e415358aee7f7e

func (*Window) SetWindowProperty Uses

func (w *Window) SetWindowProperty(flag WindowPropertyFlag, value WindowFlag)

SetWindowProperty changes parameters of a window dynamically.

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga66e4a6db4d4e06148bcdfe0d70a5df27

func (*Window) SetWindowTitle Uses

func (w *Window) SetWindowTitle(title string)

SetWindowTitle updates window title.

For further details, please see: https://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga56f8849295fd10d0c319724ddb773d96

func (*Window) WaitKey Uses

func (w *Window) WaitKey(delay int) int

WaitKey waits for a pressed key. This function is the only method in OpenCV's HighGUI that can fetch and handle events, so it needs to be called periodically for normal event processing

For further details, please see: http://docs.opencv.org/3.4.0/d7/dfc/group__highgui.html#ga5628525ad33f52eab17feebcfba38bd7

type WindowFlag Uses

type WindowFlag float32

WindowFlag value for SetWindowProperty / GetWindowProperty.

const (
    // WindowNormal indicates a normal window.
    WindowNormal WindowFlag = 0

    // WindowFullscreen indicates a full-screen window.
    WindowFullscreen = 1

    // WindowAutosize indicates a window sized based on the contents.
    WindowAutosize = 1

    // WindowFreeRatio indicates allow the user to resize without maintaining aspect ratio.
    WindowFreeRatio = 0x00000100

    // WindowKeepRatio indicates always maintain an aspect ratio that matches the contents.
    WindowKeepRatio = 0
)

type WindowPropertyFlag Uses

type WindowPropertyFlag int

WindowPropertyFlag flags for SetWindowProperty / GetWindowProperty.

const (
    // WindowPropertyFullscreen fullscreen property
    // (can be WINDOW_NORMAL or WINDOW_FULLSCREEN).
    WindowPropertyFullscreen WindowPropertyFlag = 0

    // WindowPropertyAutosize is autosize property
    // (can be WINDOW_NORMAL or WINDOW_AUTOSIZE).
    WindowPropertyAutosize = 1

    // WindowPropertyAspectRatio window's aspect ration
    // (can be set to WINDOW_FREERATIO or WINDOW_KEEPRATIO).
    WindowPropertyAspectRatio = 2

    // WindowPropertyOpenGL opengl support.
    WindowPropertyOpenGL = 3

    // WindowPropertyVisible or not.
    WindowPropertyVisible = 4
)

Directories

PathSynopsis
contribPackage contrib is the GoCV wrapper around OpenCV Contrib.
pvlPackage pvl is the GoCV wrapper around the Intel Computer Vision (CV) SDK's Photography Vision Library (PVL).

Package gocv imports 7 packages (graph) and is imported by 4 packages. Updated 2018-02-14. Refresh now. Tools for package owners.