opencv

package
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 23, 2023 License: BSD-3-Clause Imports: 7 Imported by: 0

README

编译opencv

文档

下载gcc环境: 下载地址,选择最新版x86_64-posix-seh

下载cmake: 下载地址,可以选择zip免安装版本

然后根据脚本进行编译: 编译脚本

set enable_shared=ON 使用动态dll编译,记得cmake命令里面几个路径改为自己需要的

cp install\x64\mingw\bin C:\opencv\build\install\x64\mingw\lib,将dll复制到gocv默认路径

cp install\include C:\opencv\build\install\include,将dll复制到gocv默认路径

注意编译出来的可执行程序还依赖libwinpthread-1.dll,libstdc++-6.dll,libgcc_s_seh-1.dll这3个dll,一般安装window的git就有

不然还得将上面解压的gcc环境里的这3个dll路径添加到PATH环境变量中

Documentation

Overview

Bindings for Intel's OpenCV computer vision library.

Index

Constants

View Source
const (
	/* Select random initial centers in each attempt. */
	KMEANS_RANDOM_CENTERS = 0

	/* Use kmeans++ center initialization by Arthur and Vassilvitskii [Arthur2007]. */
	KMEANS_PP_CENTERS = 2
)
View Source
const (
	CV_BGR2GRAY  = C.CV_BGR2GRAY
	CV_RGB2GRAY  = C.CV_RGB2GRAY
	CV_GRAY2BGR  = C.CV_GRAY2BGR
	CV_GRAY2RGB  = C.CV_GRAY2RGB
	CV_BGR2BGRA  = C.CV_BGR2BGRA
	CV_RGBA2BGRA = C.CV_RGBA2BGRA

	CV_BLUR_NO_SCALE = C.CV_BLUR_NO_SCALE
	CV_BLUR          = C.CV_BLUR
	CV_GAUSSIAN      = C.CV_GAUSSIAN
	CV_MEDIAN        = C.CV_MEDIAN
	CV_BILATERAL     = C.CV_BILATERAL

	CV_8U  = C.CV_8U
	CV_8S  = C.CV_8S
	CV_16U = C.CV_16U
	CV_16S = C.CV_16S
	CV_32S = C.CV_32S
	CV_32F = C.CV_32F
	CV_64F = C.CV_64F
)
View Source
const (
	CV_INPAINT_NS    = C.CV_INPAINT_NS
	CV_INPAINT_TELEA = C.CV_INPAINT_TELEA
)
View Source
const (
	CV_THRESH_BINARY     = C.CV_THRESH_BINARY
	CV_THRESH_BINARY_INV = C.CV_THRESH_BINARY_INV
	CV_THRESH_TRUNC      = C.CV_THRESH_TRUNC
	CV_THRESH_TOZERO     = C.CV_THRESH_TOZERO
	CV_THRESH_TOZERO_INV = C.CV_THRESH_TOZERO_INV
)
View Source
const (
	CV_ADAPTIVE_THRESH_MEAN_C     = C.CV_ADAPTIVE_THRESH_MEAN_C
	CV_ADAPTIVE_THRESH_GAUSSIAN_C = C.CV_ADAPTIVE_THRESH_GAUSSIAN_C
)
View Source
const (
	CV_MORPH_RECT    = 0
	CV_MORPH_ELLIPSE = 1
	CV_MORPH_CROSS   = 2
)
View Source
const (
	CV_MORPH_OPEN     = C.CV_MOP_OPEN
	CV_MORPH_CLOSE    = C.CV_MOP_CLOSE
	CV_MORPH_GRADIENT = C.CV_MOP_GRADIENT
	CV_MORPH_TOPHAT   = C.CV_MOP_TOPHAT
	CV_MORPH_BLACKHAT = C.CV_MOP_BLACKHAT
)
View Source
const (
	// different sequence flags to use in CreateSeq()
	CV_SEQ_ELTYPE_POINT   = C.CV_SEQ_ELTYPE_POINT
	CV_32FC2              = C.CV_32FC2
	CV_SEQ_ELTYPE_POINT3D = C.CV_SEQ_ELTYPE_POINT3D
)
View Source
const (
	CV_FONT_HERSHEY_SIMPLEX        = int(C.CV_FONT_HERSHEY_SIMPLEX)
	CV_FONT_HERSHEY_PLAIN          = int(C.CV_FONT_HERSHEY_PLAIN)
	CV_FONT_HERSHEY_DUPLEX         = int(C.CV_FONT_HERSHEY_DUPLEX)
	CV_FONT_HERSHEY_COMPLEX        = int(C.CV_FONT_HERSHEY_COMPLEX)
	CV_FONT_HERSHEY_TRIPLEX        = int(C.CV_FONT_HERSHEY_TRIPLEX)
	CV_FONT_HERSHEY_COMPLEX_SMALL  = int(C.CV_FONT_HERSHEY_COMPLEX_SMALL)
	CV_FONT_HERSHEY_SCRIPT_SIMPLEX = int(C.CV_FONT_HERSHEY_SCRIPT_SIMPLEX)
	CV_FONT_HERSHEY_SCRIPT_COMPLEX = int(C.CV_FONT_HERSHEY_SCRIPT_COMPLEX)
	CV_FONT_ITALIC                 = int(C.CV_FONT_ITALIC)
)
View Source
const (
	CV_MAJOR_VERSION    = int(C.CV_MAJOR_VERSION)
	CV_MINOR_VERSION    = int(C.CV_MINOR_VERSION)
	CV_SUBMINOR_VERSION = int(C.CV_SUBMINOR_VERSION)
)
View Source
const (
	CV_StsOk                     = C.CV_StsOk
	CV_StsBackTrace              = C.CV_StsBackTrace
	CV_StsError                  = C.CV_StsError
	CV_StsInternal               = C.CV_StsInternal
	CV_StsNoMem                  = C.CV_StsNoMem
	CV_StsBadArg                 = C.CV_StsBadArg
	CV_StsBadFunc                = C.CV_StsBadFunc
	CV_StsNoConv                 = C.CV_StsNoConv
	CV_StsAutoTrace              = C.CV_StsAutoTrace
	CV_HeaderIsNull              = C.CV_HeaderIsNull
	CV_BadImageSize              = C.CV_BadImageSize
	CV_BadOffset                 = C.CV_BadOffset
	CV_BadDataPtr                = C.CV_BadDataPtr
	CV_BadStep                   = C.CV_BadStep
	CV_BadModelOrChSeq           = C.CV_BadModelOrChSeq
	CV_BadNumChannels            = C.CV_BadNumChannels
	CV_BadNumChannel1U           = C.CV_BadNumChannel1U
	CV_BadDepth                  = C.CV_BadDepth
	CV_BadAlphaChannel           = C.CV_BadAlphaChannel
	CV_BadOrder                  = C.CV_BadOrder
	CV_BadOrigin                 = C.CV_BadOrigin
	CV_BadAlign                  = C.CV_BadAlign
	CV_BadCallBack               = C.CV_BadCallBack
	CV_BadTileSize               = C.CV_BadTileSize
	CV_BadCOI                    = C.CV_BadCOI
	CV_BadROISize                = C.CV_BadROISize
	CV_MaskIsTiled               = C.CV_MaskIsTiled
	CV_StsNullPtr                = C.CV_StsNullPtr
	CV_StsVecLengthErr           = C.CV_StsVecLengthErr
	CV_StsFilterStructContentErr = C.CV_StsFilterStructContentErr
	CV_StsKernelStructContentErr = C.CV_StsKernelStructContentErr
	CV_StsFilterOffsetErr        = C.CV_StsFilterOffsetErr
	CV_StsBadSize                = C.CV_StsBadSize
	CV_StsDivByZero              = C.CV_StsDivByZero
	CV_StsInplaceNotSupported    = C.CV_StsInplaceNotSupported
	CV_StsObjectNotFound         = C.CV_StsObjectNotFound
	CV_StsUnmatchedFormats       = C.CV_StsUnmatchedFormats
	CV_StsBadFlag                = C.CV_StsBadFlag
	CV_StsBadPoint               = C.CV_StsBadPoint
	CV_StsBadMask                = C.CV_StsBadMask
	CV_StsUnmatchedSizes         = C.CV_StsUnmatchedSizes
	CV_StsUnsupportedFormat      = C.CV_StsUnsupportedFormat
	CV_StsOutOfRange             = C.CV_StsOutOfRange
	CV_StsParseError             = C.CV_StsParseError
	CV_StsNotImplemented         = C.CV_StsNotImplemented
	CV_StsBadMemBlock            = C.CV_StsBadMemBlock
	CV_StsAssert                 = C.CV_StsAssert
)
View Source
const (
	CV_PI   = 3.1415926535897932384626433832795
	CV_LOG2 = 0.69314718055994530941723212145818
)
View Source
const (
	IPL_DEPTH_SIGN = C.IPL_DEPTH_SIGN

	IPL_DEPTH_1U  = C.IPL_DEPTH_1U
	IPL_DEPTH_8U  = C.IPL_DEPTH_8U
	IPL_DEPTH_16U = C.IPL_DEPTH_16U
	IPL_DEPTH_32F = C.IPL_DEPTH_32F

	IPL_DEPTH_8S  = C.IPL_DEPTH_8S
	IPL_DEPTH_16S = C.IPL_DEPTH_16S
	IPL_DEPTH_32S = C.IPL_DEPTH_32S

	IPL_DATA_ORDER_PIXEL = C.IPL_DATA_ORDER_PIXEL
	IPL_DATA_ORDER_PLANE = C.IPL_DATA_ORDER_PLANE

	IPL_ORIGIN_TL = C.IPL_ORIGIN_TL
	IPL_ORIGIN_BL = C.IPL_ORIGIN_BL

	IPL_ALIGN_4BYTES  = C.IPL_ALIGN_4BYTES
	IPL_ALIGN_8BYTES  = C.IPL_ALIGN_8BYTES
	IPL_ALIGN_16BYTES = C.IPL_ALIGN_16BYTES
	IPL_ALIGN_32BYTES = C.IPL_ALIGN_32BYTES

	IPL_ALIGN_DWORD = C.IPL_ALIGN_DWORD
	IPL_ALIGN_QWORD = C.IPL_ALIGN_QWORD

	IPL_BORDER_CONSTANT  = C.IPL_BORDER_CONSTANT
	IPL_BORDER_REPLICATE = C.IPL_BORDER_REPLICATE
	IPL_BORDER_REFLECT   = C.IPL_BORDER_REFLECT
	IPL_BORDER_WRAP      = C.IPL_BORDER_WRAP
)

* The following definitions (until #endif) * is an extract from IPL headers. * Copyright (c) 1995 Intel Corporation.

View Source
const (
	IPL_IMAGE_HEADER = C.IPL_IMAGE_HEADER
	IPL_IMAGE_DATA   = C.IPL_IMAGE_DATA
	IPL_IMAGE_ROI    = C.IPL_IMAGE_ROI
)
View Source
const (
	CV_MATND_MAGIC_VAL = C.CV_MATND_MAGIC_VAL
	CV_TYPE_NAME_MATND = C.CV_TYPE_NAME_MATND

	CV_MAX_DIM      = C.CV_MAX_DIM
	CV_MAX_DIM_HEAP = C.CV_MAX_DIM_HEAP
)
View Source
const (
	CV_SPARSE_MAT_MAGIC_VAL = C.CV_SPARSE_MAT_MAGIC_VAL
	CV_TYPE_NAME_SPARSE_MAT = C.CV_TYPE_NAME_SPARSE_MAT
)
View Source
const (
	CV_HIST_MAGIC_VAL    = C.CV_HIST_MAGIC_VAL
	CV_HIST_UNIFORM_FLAG = C.CV_HIST_UNIFORM_FLAG

	/* indicates whether bin ranges are set already or not */
	CV_HIST_RANGES_FLAG = C.CV_HIST_RANGES_FLAG

	CV_HIST_ARRAY  = C.CV_HIST_ARRAY
	CV_HIST_SPARSE = C.CV_HIST_SPARSE
	CV_HIST_TREE   = C.CV_HIST_TREE

	/* should be used as a parameter only,
	   it turns to CV_HIST_UNIFORM_FLAG of hist->type */
	CV_HIST_UNIFORM = C.CV_HIST_UNIFORM
)
View Source
const (
	CV_TERMCRIT_ITER   = C.CV_TERMCRIT_ITER
	CV_TERMCRIT_NUMBER = C.CV_TERMCRIT_NUMBER
	CV_TERMCRIT_EPS    = C.CV_TERMCRIT_EPS
)
View Source
const (
	CV_RETR_EXTERNAL = C.CV_RETR_EXTERNAL
	CV_RETR_LIST     = C.CV_RETR_LIST
	CV_RETR_CCOMP    = C.CV_RETR_CCOMP
	CV_RETR_TREE     = C.CV_RETR_TREE

	CV_CHAIN_APPROX_NONE      = C.CV_CHAIN_APPROX_NONE
	CV_CHAIN_APPROX_SIMPLE    = C.CV_CHAIN_APPROX_SIMPLE
	CV_CHAIN_APPROX_TC89_L1   = C.CV_CHAIN_APPROX_TC89_L1
	CV_CHAIN_APPROX_TC89_KCOS = C.CV_CHAIN_APPROX_TC89_KCOS
)
View Source
const (
	CV_STORAGE_READ         = C.CV_STORAGE_READ
	CV_STORAGE_WRITE        = C.CV_STORAGE_WRITE
	CV_STORAGE_WRITE_TEXT   = C.CV_STORAGE_WRITE_TEXT
	CV_STORAGE_WRITE_BINARY = C.CV_STORAGE_WRITE_BINARY
	CV_STORAGE_APPEND       = C.CV_STORAGE_APPEND
)

Storage flags:

View Source
const (
	CV_WND_PROP_FULLSCREEN = int(C.CV_WND_PROP_FULLSCREEN)
	CV_WND_PROP_AUTOSIZE   = int(C.CV_WND_PROP_AUTOSIZE)
	CV_WINDOW_NORMAL       = int(C.CV_WINDOW_NORMAL)
	CV_WINDOW_FULLSCREEN   = int(C.CV_WINDOW_FULLSCREEN)
)

--------- YV ---------

View Source
const (
	CV_EVENT_MOUSEMOVE     = int(C.CV_EVENT_MOUSEMOVE)
	CV_EVENT_LBUTTONDOWN   = int(C.CV_EVENT_LBUTTONDOWN)
	CV_EVENT_RBUTTONDOWN   = int(C.CV_EVENT_RBUTTONDOWN)
	CV_EVENT_MBUTTONDOWN   = int(C.CV_EVENT_MBUTTONDOWN)
	CV_EVENT_LBUTTONUP     = int(C.CV_EVENT_LBUTTONUP)
	CV_EVENT_RBUTTONUP     = int(C.CV_EVENT_RBUTTONUP)
	CV_EVENT_MBUTTONUP     = int(C.CV_EVENT_MBUTTONUP)
	CV_EVENT_LBUTTONDBLCLK = int(C.CV_EVENT_LBUTTONDBLCLK)
	CV_EVENT_RBUTTONDBLCLK = int(C.CV_EVENT_RBUTTONDBLCLK)
	CV_EVENT_MBUTTONDBLCLK = int(C.CV_EVENT_MBUTTONDBLCLK)

	CV_EVENT_FLAG_LBUTTON  = int(C.CV_EVENT_FLAG_LBUTTON)
	CV_EVENT_FLAG_RBUTTON  = int(C.CV_EVENT_FLAG_RBUTTON)
	CV_EVENT_FLAG_MBUTTON  = int(C.CV_EVENT_FLAG_MBUTTON)
	CV_EVENT_FLAG_CTRLKEY  = int(C.CV_EVENT_FLAG_CTRLKEY)
	CV_EVENT_FLAG_SHIFTKEY = int(C.CV_EVENT_FLAG_SHIFTKEY)
	CV_EVENT_FLAG_ALTKEY   = int(C.CV_EVENT_FLAG_ALTKEY)
)
View Source
const (
	/* 8bit, color or not */
	CV_LOAD_IMAGE_UNCHANGED = int(C.CV_LOAD_IMAGE_UNCHANGED)
	/* 8bit, gray */
	CV_LOAD_IMAGE_GRAYSCALE = int(C.CV_LOAD_IMAGE_GRAYSCALE)
	/* ?, color */
	CV_LOAD_IMAGE_COLOR = int(C.CV_LOAD_IMAGE_COLOR)
	/* any depth, ? */
	CV_LOAD_IMAGE_ANYDEPTH = int(C.CV_LOAD_IMAGE_ANYDEPTH)
	/* ?, any color */
	CV_LOAD_IMAGE_ANYCOLOR = int(C.CV_LOAD_IMAGE_ANYCOLOR)
)
View Source
const (
	CV_IMWRITE_JPEG_QUALITY    = int(C.CV_IMWRITE_JPEG_QUALITY)
	CV_IMWRITE_PNG_COMPRESSION = int(C.CV_IMWRITE_PNG_COMPRESSION)
	CV_IMWRITE_PXM_BINARY      = int(C.CV_IMWRITE_PXM_BINARY)
)
View Source
const (
	CV_CVTIMG_FLIP    = int(C.CV_CVTIMG_FLIP)
	CV_CVTIMG_SWAP_RB = int(C.CV_CVTIMG_SWAP_RB)
)
View Source
const (
	CV_CAP_ANY = int(C.CV_CAP_ANY) // autodetect

	CV_CAP_MIL = int(C.CV_CAP_MIL) // MIL proprietary drivers

	CV_CAP_VFW  = int(C.CV_CAP_VFW) // platform native
	CV_CAP_V4L  = int(C.CV_CAP_V4L)
	CV_CAP_V4L2 = int(C.CV_CAP_V4L2)

	CV_CAP_FIREWARE = int(C.CV_CAP_FIREWARE) // IEEE 1394 drivers
	CV_CAP_FIREWIRE = int(C.CV_CAP_FIREWIRE)
	CV_CAP_IEEE1394 = int(C.CV_CAP_IEEE1394)
	CV_CAP_DC1394   = int(C.CV_CAP_DC1394)
	CV_CAP_CMU1394  = int(C.CV_CAP_CMU1394)

	CV_CAP_STEREO = int(C.CV_CAP_STEREO) // TYZX proprietary drivers
	CV_CAP_TYZX   = int(C.CV_CAP_TYZX)
	CV_TYZX_LEFT  = int(C.CV_TYZX_LEFT)
	CV_TYZX_RIGHT = int(C.CV_TYZX_RIGHT)
	CV_TYZX_COLOR = int(C.CV_TYZX_COLOR)
	CV_TYZX_Z     = int(C.CV_TYZX_Z)

	CV_CAP_QT = int(C.CV_CAP_QT) // QuickTime

	CV_CAP_UNICAP = int(C.CV_CAP_UNICAP) // Unicap drivers

	CV_CAP_DSHOW = int(C.CV_CAP_DSHOW) // DirectShow (via videoInput)

	CV_CAP_PVAPI = int(C.CV_CAP_PVAPI) // PvAPI, Prosilica GigE SDK
)
View Source
const (
	CV_CAP_PROP_POS_MSEC      = int(C.CV_CAP_PROP_POS_MSEC)
	CV_CAP_PROP_POS_FRAMES    = int(C.CV_CAP_PROP_POS_FRAMES)
	CV_CAP_PROP_POS_AVI_RATIO = int(C.CV_CAP_PROP_POS_AVI_RATIO)
	CV_CAP_PROP_FRAME_WIDTH   = int(C.CV_CAP_PROP_FRAME_WIDTH)
	CV_CAP_PROP_FRAME_HEIGHT  = int(C.CV_CAP_PROP_FRAME_HEIGHT)
	CV_CAP_PROP_FPS           = int(C.CV_CAP_PROP_FPS)
	CV_CAP_PROP_FOURCC        = int(C.CV_CAP_PROP_FOURCC)
	CV_CAP_PROP_FRAME_COUNT   = int(C.CV_CAP_PROP_FRAME_COUNT)
	CV_CAP_PROP_FORMAT        = int(C.CV_CAP_PROP_FORMAT)
	CV_CAP_PROP_MODE          = int(C.CV_CAP_PROP_MODE)
	CV_CAP_PROP_BRIGHTNESS    = int(C.CV_CAP_PROP_BRIGHTNESS)
	CV_CAP_PROP_CONTRAST      = int(C.CV_CAP_PROP_CONTRAST)
	CV_CAP_PROP_SATURATION    = int(C.CV_CAP_PROP_SATURATION)
	CV_CAP_PROP_HUE           = int(C.CV_CAP_PROP_HUE)
	CV_CAP_PROP_GAIN          = int(C.CV_CAP_PROP_GAIN)
	CV_CAP_PROP_EXPOSURE      = int(C.CV_CAP_PROP_EXPOSURE)
	CV_CAP_PROP_CONVERT_RGB   = int(C.CV_CAP_PROP_CONVERT_RGB)
	// CV_CAP_PROP_WHITE_BALANCE = int(C.CV_CAP_PROP_WHITE_BALANCE)
	CV_CAP_PROP_RECTIFICATION = int(C.CV_CAP_PROP_RECTIFICATION)
)
View Source
const (
	CV_INTER_NN       = int(C.CV_INTER_NN)
	CV_INTER_LINEAR   = int(C.CV_INTER_LINEAR)
	CV_INTER_CUBIC    = int(C.CV_INTER_CUBIC)
	CV_INTER_AREA     = int(C.CV_INTER_AREA)
	CV_INTER_LANCZOS4 = int(C.CV_INTER_LANCZOS4)
)
View Source
const (
	CV_WARP_FILL_OUTLIERS = int(C.CV_WARP_FILL_OUTLIERS)
	CV_WARP_INVERSE_MAP   = int(C.CV_WARP_INVERSE_MAP)
)

For use with WarpPerspective

View Source
const (
	CV_TM_SQDIFF        = int(C.CV_TM_SQDIFF)        // 平方差匹配法:该方法采用平方差来进行匹配;最好的匹配值为0;匹配越差,匹配值越大。
	CV_TM_SQDIFF_NORMED = int(C.CV_TM_SQDIFF_NORMED) // 归一化平方差匹配法
	CV_TM_CCORR         = int(C.CV_TM_CCORR)         // 相关匹配法:该方法采用乘法操作;数值越大表明匹配程度越好。
	CV_TM_CCORR_NORMED  = int(C.CV_TM_CCORR_NORMED)  // 归一化相关匹配法
	CV_TM_CCOEFF        = int(C.CV_TM_CCOEFF)        // 相关系数匹配法:1表示完美的匹配;-1表示最差的匹配。
	CV_TM_CCOEFF_NORMED = int(C.CV_TM_CCOEFF_NORMED) // 归一化相关系数匹配法
)
View Source
const (
	CV_AUTOSTEP = C.CV_AUTOSTEP
)

mat step

View Source
const (
	/* Open Codec Selection Dialog (Windows only) */
	CV_FOURCC_PROMPT = int(C.CV_FOURCC_PROMPT)
)
View Source
const (
	CV_POLY_APPROX_DP = C.CV_POLY_APPROX_DP
)

For use in ApproxPoly

View Source
const (
	CV_WHOLE_SEQ_END_INDEX = C.CV_WHOLE_SEQ_END_INDEX
)
View Source
const (
	CV_WINDOW_AUTOSIZE = C.CV_WINDOW_AUTOSIZE
)
View Source
const (
	IPL_DEPTH_64F = int(C.IPL_DEPTH_64F)
)

Variables

View Source
var (
	IPL_IMAGE_MAGIC_VAL = C.IPL_IMAGE_MAGIC_VAL_()
	CV_TYPE_NAME_IMAGE  = C.CV_TYPE_NAME_IMAGE_()
)

extra border mode

Functions

func AbsDiff

func AbsDiff(src1, src2, dst *IplImage)

Calculates the per-element absolute difference between two arrays.

func AbsDiffScalar

func AbsDiffScalar(src *IplImage, value Scalar, dst *IplImage)

Calculates the per-element absolute difference between an array and a scalar.

func AdaptiveThreshold

func AdaptiveThreshold(src, dst *IplImage, max_value float64, adaptive_method,
	threshold_type, block_size int, thresh_C float64)

Applies an adaptive threshold to an array.

func Add

func Add(src1, src2, dst *IplImage)

Calculates the per-element sum of two arrays.

dst = src1 + src2

func AddScalar

func AddScalar(src *IplImage, value Scalar, dst *IplImage)

Calculates the per-element sum of an array and a scalar.

dst = src + value

func AddScalarWithMask

func AddScalarWithMask(src *IplImage, value Scalar, dst, mask *IplImage)

Calculates the per-element sum of an array and a scalar with a mask.

dst = src + value

func AddWeighted

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

AddWeighted calculates the weighted sum of two images.

func AddWithMask

func AddWithMask(src1, src2, dst, mask *IplImage)

Calculates the per-element sum of two arrays with a mask.

dst = src1 + src2

func Alloc

func Alloc(size int) unsafe.Pointer

func And

func And(src1, src2, dst *IplImage)

Calculates the per-element bit-wise conjunction of two arrays.

func AndScalar

func AndScalar(src *IplImage, value Scalar, dst *IplImage)

Calculates the per-element bit-wise conjunction of an array and a scalar.

func AndScalarWithMask

func AndScalarWithMask(src *IplImage, value Scalar, dst, mask *IplImage)

Calculates the per-element bit-wise conjunction of an array and a scalar with a mask.

func AndWithMask

func AndWithMask(src1, src2, dst, mask *IplImage)

Calculates the per-element bit-wise conjunction of two arrays with a mask.

func ArcLength

func ArcLength(curve *Seq, slice Slice, is_closed bool) float64

cvArcLength(const void* curve, CvSlice slice=CV_WHOLE_SEQ, int is_closed=-1 )

func CV_ARE_TYPE_EQ

func CV_ARE_TYPE_EQ() bool

func CV_HIST_HAS_RANGES

func CV_HIST_HAS_RANGES() bool

func CV_IS_HIST

func CV_IS_HIST() bool

func CV_IS_IMAGE

func CV_IS_IMAGE(img unsafe.Pointer) bool

func CV_IS_IMAGE_HDR

func CV_IS_IMAGE_HDR(img unsafe.Pointer) bool

func CV_IS_MASK_ARR

func CV_IS_MASK_ARR() bool

func CV_IS_MAT

func CV_IS_MAT(mat interface{}) bool

func CV_IS_MAT_HDR

func CV_IS_MAT_HDR(mat interface{}) bool

func CV_IS_SPARSE_HIST

func CV_IS_SPARSE_HIST() bool

func CV_IS_UNIFORM_HIST

func CV_IS_UNIFORM_HIST() bool

func Canny

func Canny(image, edges *IplImage, threshold1, threshold2 float64, aperture_size int)

Runs canny edge detector

func Ceil

func Ceil(value float64) int

func Circle

func Circle(image *IplImage, pt1 Point, radius int, color Scalar, args ...int)

func ContourArea

func ContourArea(contour *Seq, slice Slice, oriented int) float64

double cvContourArea(const CvArr* contour, CvSlice slice=CV_WHOLE_SEQ, int oriented=0 )

func ContourPerimeter

func ContourPerimeter(curve *Seq) float64

func ConvertImage

func ConvertImage(src, dst unsafe.Pointer, flags int)

utility function: convert one image to another with optional vertical flip

func ConvertScale

func ConvertScale(a, b *IplImage, scale, shift float64)

ConvertScale converts one image to another with optional linear transformation.

func Copy

func Copy(src, dst, mask *IplImage)

Copies source array to destination array

func CvtColor

func CvtColor(src, dst *IplImage, code int)

Converts input array pixels from one color space to another

func DecRefData

func DecRefData(arr Arr)

Decrements CvMat data reference counter and deallocates the data if

it reaches 0

func DestroyAllWindows

func DestroyAllWindows()

destroy window and all the trackers associated with it

func Dilate

func Dilate(src, dst *IplImage, element *IplConvKernel, iterations int)

Dilates an image by using a specific structuring element.

func DrawContours

func DrawContours(image *IplImage, contours *Seq, externalColor, holeColor Scalar, maxLevel, thickness, lineType int, offset Point)

cvDrawContours(CvArr* img, CvSeq* contour, CvScalar externalColor, CvScalar holeColor, int maxLevel, int thickness=1, int lineType=8

func Erode

func Erode(src, dst *IplImage, element *IplConvKernel, iterations int)

Erodes an image by using a specific structuring element.

func FOURCC

func FOURCC(c1, c2, c3, c4 int8) uint32

Prototype for CV_FOURCC so that swig can generate wrapper without mixing up the define

func FloodFill

func FloodFill(image *IplImage, seedPoint CvPoint, newVal, loDiff, upDiff Scalar, comp *CvConnectedComp, flags int, mask *IplImage)

FloodFill Fills the connected component until the color difference gets large enough

func Floor

func Floor(value float64) int

func Free

func Free(p unsafe.Pointer)

func GetSizeHeight

func GetSizeHeight(img *IplImage) int

func GetSizeWidth

func GetSizeWidth(img *IplImage) int

Returns width and height of array in elements

func IncRefData

func IncRefData(arr Arr)

Increments CvMat data reference counter

func Inpaint

func Inpaint(src, inpaint_mask, dst *IplImage, inpaintRange float64, flags int)

Inpaints the selected region in the image

func IplDepth

func IplDepth(type_ int) int

func IsInf

func IsInf(value float64) int

func IsNaN

func IsNaN(value float64) int

func Laplace

func Laplace(src, dst *IplImage, aperture_size int)

Laplace The function calculates the Laplacian

func Line

func Line(image *IplImage, pt1, pt2 Point, color Scalar, args ...int)
Draws 4-connected, 8-connected or antialiased line segment connecting two points

color Scalar,

func MatchTemplate

func MatchTemplate(image, temp, result *IplImage, method int)

MatchTemplate Measures similarity between template and overlapped windows in the source image

and fills the resultant image with the measurements

func MeanStdDevWithMask

func MeanStdDevWithMask(src, mask *IplImage) (Scalar, Scalar)

MeanStdDevWithMask calculates mean and standard deviation of pixel values with mask

func Merge

func Merge(imgBlue, imgGreen, imgRed, imgAlpha, dst *IplImage)

Merge creates one multichannel array out of several single-channel ones.

func MinMaxLoc

func MinMaxLoc(image *IplImage, minVal, maxVal *float64, minLoc, MaxLox *CvPoint, mask *IplImage)

MinMaxLoc Finds global minimum, maximum and their positions

func MorphologyEx

func MorphologyEx(src, dst, temp *IplImage, element *IplConvKernel, operation int, iterations int)

Performs advanced morphological transformations.

func Not

func Not(src, dst *IplImage)

Inverts every bit of an array.

func Or

func Or(src1, src2, dst *IplImage)

Calculates the per-element bit-wise disjunction of two arrays.

func OrScalar

func OrScalar(src *IplImage, value Scalar, dst *IplImage)

Calculates the per-element bit-wise disjunction of an array and a scalar.

func OrScalarWithMask

func OrScalarWithMask(src *IplImage, value Scalar, dst, mask *IplImage)

Calculates the per-element bit-wise disjunction of an array and a scalar with a mask.

func OrWithMask

func OrWithMask(src1, src2, dst, mask *IplImage)

Calculates the per-element bit-wise disjunction of two arrays with a mask.

func RawDataToScalar

func RawDataToScalar(data unsafe.Pointer, type_ int, scalar *Scalar)

func Rectangle

func Rectangle(image *IplImage, pt1, pt2 Point, color Scalar, args ...int)

func Round

func Round(value float64) int

func SaveImage

func SaveImage(filename string, image *IplImage, params []int) int

save image to file

func ScalarToRawData

func ScalarToRawData(scalar *Scalar, data unsafe.Pointer, type_, extend_to_12 int)

low-level scalar <-> raw data conversion functions

func Smooth

func Smooth(src, dst *IplImage, smoothtype,
	param1, param2 int, param3, param4 float64)

Smoothes array (removes noise)

func Sobel

func Sobel(src, dst *IplImage, xorder, yorder, aperture_size int)
Calculates the first, second, third, or mixed image derivatives using an

* extended Sobel operator.

func Split

func Split(src, imgBlue, imgGreen, imgRed, imgAlpha *IplImage)

Split divides a multi-channel array into several single-channel arrays.

func StartWindowThread

func StartWindowThread() int

func SubScalar

func SubScalar(src *IplImage, value Scalar, dst *IplImage)

Calculates the per-element difference between an array and a scalar.

dst = src - value

func SubScalarRev

func SubScalarRev(value Scalar, src, dst *IplImage)

Calculates the per-element difference between a scalar and an array.

dst = value - src

func SubScalarWithMask

func SubScalarWithMask(src *IplImage, value Scalar, dst, mask *IplImage)

Calculates the per-element difference between an array and a scalar with a mask.

dst = src - value

func SubScalarWithMaskRev

func SubScalarWithMaskRev(value Scalar, src, dst, mask *IplImage)

Calculates the per-element difference between a scalar and an array with a mask.

dst = value - src

func Subtract

func Subtract(src1, src2, dst *IplImage)

Calculates the per-element difference between two arrays.

dst = src1 - src2

func SubtractWithMask

func SubtractWithMask(src1, src2, dst, mask *IplImage)

Calculates the per-element difference between two arrays with a mask.

dst = src1 - src2

func Threshold

func Threshold(src, dst *IplImage, threshold, max_value float64, threshold_type int)

Applies a fixed-level threshold to each array element.

func WaitKey

func WaitKey(delay int) int

wait for key event infinitely (delay<=0) or for "delay" milliseconds

func WarpPerspective

func WarpPerspective(src, dst *IplImage, mapMatrix *Mat, flags int, fillVal Scalar)

WarpPerspective applies a perspective transformation to an image.

Parameters:

src - input image
dst – output image
mapMatrix – 3x3 transformation matrix
flags – combination of interpolation methods. In the C version, it is `flags=CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS` by default
fillVal - In the C version, it is `fillval=(0, 0, 0, 0)` by default

func Xor

func Xor(src1, src2, dst *IplImage)

Calculates the per-element bit-wise “exclusive or” operation on two arrays.

func XorScalar

func XorScalar(src *IplImage, value Scalar, dst *IplImage)

Calculates the per-element bit-wise “exclusive or” operation on an array and a scalar.

func XorScalarWithMask

func XorScalarWithMask(src *IplImage, value Scalar, dst, mask *IplImage)

Calculates the per-element bit-wise “exclusive or” operation on an array and a scalar with a mask.

func XorWithMask

func XorWithMask(src1, src2, dst, mask *IplImage)

Calculates the per-element bit-wise “exclusive or” operation on two arrays with a mask.

func Zero

func Zero(img *IplImage)

Clears all the array elements (sets them to 0)

Types

type Arr

type Arr unsafe.Pointer

type AttrList

type AttrList C.CvAttrList

type Box2D

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

func FitEllipse2

func FitEllipse2(points unsafe.Pointer) Box2D

points can be either CvSeq* or CvMat*

func MinAreaRect

func MinAreaRect(points unsafe.Pointer) Box2D

Finds a rotated rectangle of the minimum area enclosing the input 2D point set points can be either CvSeq* or CvMat*

func (*Box2D) Angle

func (box *Box2D) Angle() float32

func (*Box2D) CVBox

func (box *Box2D) CVBox() C.CvBox2D

Returns a CvBox2D

func (*Box2D) Center

func (box *Box2D) Center() Point2D32f

func (*Box2D) Points

func (box *Box2D) Points() []Point2D32f

Finds box vertices

func (*Box2D) Size

func (box *Box2D) Size() Size2D32f

type Capture

type Capture C.CvCapture

"black box" capture structure

func NewCameraCapture

func NewCameraCapture(index int) *Capture

start capturing frames from camera: index = camera_index + domain_offset (CV_CAP_*)

func NewFileCapture

func NewFileCapture(filename string) *Capture

start capturing frames from video file

func (*Capture) GetDomain

func (capture *Capture) GetDomain() int

Return the type of the capturer (eg, CV_CAP_V4W, CV_CAP_UNICAP), which is unknown if created with CV_CAP_ANY

func (*Capture) GetProperty

func (capture *Capture) GetProperty(property_id int) float64

retrieve or set capture properties

func (*Capture) GrabFrame

func (capture *Capture) GrabFrame() bool
grab a frame, return 1 on success, 0 on fail.

this function is thought to be fast

func (*Capture) QueryFrame

func (capture *Capture) QueryFrame() *IplImage

Just a combination of cvGrabFrame and cvRetrieveFrame

!!!DO NOT RELEASE or MODIFY the retrieved frame!!!

func (*Capture) Release

func (capture *Capture) Release()

stop capturing/reading and free resources

func (*Capture) RetrieveFrame

func (capture *Capture) RetrieveFrame(streamIdx int) *IplImage
get the frame grabbed with cvGrabFrame(..)

This function may apply some frame processing like frame decompression, flipping etc. !!!DO NOT RELEASE or MODIFY the retrieved frame!!!

func (*Capture) SetProperty

func (capture *Capture) SetProperty(property_id int, value float64) int

type Chain

type Chain C.CvChain

type Contour

type Contour C.CvContour

type CvConnectedComp

type CvConnectedComp C.CvConnectedComp

type CvPoint

type CvPoint C.CvPoint

func NewCvPoint

func NewCvPoint(x, y int) CvPoint

returns a new CvPoint

func (CvPoint) ToPoint

func (p CvPoint) ToPoint() Point

Returns a Point

type CvPoint2D32f

type CvPoint2D32f C.CvPoint2D32f

func NewCvPoint2D32f

func NewCvPoint2D32f(x, y float32) CvPoint2D32f

returns a new CvPoint

func (CvPoint2D32f) ToPoint

func (p CvPoint2D32f) ToPoint() Point2D32f

Returns a Point

type FileStorage

type FileStorage C.CvFileStorage

"black box" file storage

type Font

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

func InitFont

func InitFont(fontFace int, hscale, vscale, shear float32, thickness, lineType int) *Font

void cvInitFont(CvFont* font, int font_face, double hscale, double vscale, double shear=0, int thickness=1, int line_type=8 )

func (*Font) PutText

func (this *Font) PutText(image *IplImage, text string, pt1 Point, color Scalar)

void cvPutText(CvArr* img, const char* text, CvPoint org, const CvFont* font, CvScalar color)

type Graph

type Graph C.CvGraph

type GraphEdge

type GraphEdge C.CvGraphEdge

type GraphVtx

type GraphVtx C.CvGraphVtx

type GraphVtx2D

type GraphVtx2D C.CvGraphVtx2D

type HaarCascade

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

***************************************************************************************\ * Face eyes&mouth tracking * \***************************************************************************************

func LoadHaarClassifierCascade

func LoadHaarClassifierCascade(haar string) *HaarCascade

func (*HaarCascade) DetectObjects

func (this *HaarCascade) DetectObjects(image *IplImage) []*Rect

func (*HaarCascade) Release

func (this *HaarCascade) Release()

type HistType

type HistType C.CvHistType

type Histogram

type Histogram C.CvHistogram

type IplConvKernel

type IplConvKernel C.IplConvKernel

func CreateStructuringElement

func CreateStructuringElement(cols, rows, anchor_x, anchor_y, shape int) *IplConvKernel

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

func (*IplConvKernel) ReleaseElement

func (k *IplConvKernel) ReleaseElement()

Releases the structuring element

type IplConvKernelFP

type IplConvKernelFP C.IplConvKernelFP

type IplImage

type IplImage C.IplImage

func CreateImage

func CreateImage(w, h, depth, channels int) *IplImage

Creates IPL image (header and data)

func CreateImageHeader

func CreateImageHeader(w, h, depth, channels int) *IplImage

Allocates and initializes IplImage header

func Crop

func Crop(src *IplImage, x, y, width, height int) *IplImage

func DecodeImage

func DecodeImage(buf unsafe.Pointer, iscolor int) *IplImage

decode image stored in the buffer

func DecodeImageMem

func DecodeImageMem(data []byte) *IplImage

DecodeImageMem decodes an image from an in memory byte buffer.

func FromImage

func FromImage(img image.Image) *IplImage

FromImage converts a go image.Image to an opencv.IplImage.

func FromImageUnsafe

func FromImageUnsafe(img *image.RGBA) *IplImage
FromImageUnsafe create an opencv.IplImage that shares the buffer with the

go image.RGBA image. All changes made from opencv might affect go!

func LoadImage

func LoadImage(filename string, iscolor_ ...int) *IplImage
load image from file

iscolor can be a combination of above flags where CV_LOAD_IMAGE_UNCHANGED overrides the other flags using CV_LOAD_IMAGE_ANYCOLOR alone is equivalent to CV_LOAD_IMAGE_UNCHANGED unless CV_LOAD_IMAGE_ANYDEPTH is specified images are converted to 8bit

func Resize

func Resize(src *IplImage, width, height, interpolation int) *IplImage

func (*IplImage) Avg

func (img *IplImage) Avg(mask *IplImage) Scalar

***************************************************************************************\ * Array Statistics * \*************************************************************************************** CvScalar cvAvg(const CvArr* arr, const CvArr* mask=NULL )

func (*IplImage) Channels

func (img *IplImage) Channels() int

normal fields

func (*IplImage) Clone

func (img *IplImage) Clone() *IplImage

Creates a copy of IPL image (widthStep may differ)

func (*IplImage) Depth

func (img *IplImage) Depth() int

func (*IplImage) EqualizeHist

func (img *IplImage) EqualizeHist(dst *IplImage)

cvEqualizeHist(const CvArr* src, CvArr* dst)

func (*IplImage) FindContours

func (img *IplImage) FindContours(mode, method int, offset Point) *Seq

Returns a Seq of countours in an image, detected according to the parameters.

Caller must Release() the Seq returned

func (*IplImage) Get1D

func (img *IplImage) Get1D(x int) Scalar

Get1D return a specific element from a 1-dimensional matrix.

func (*IplImage) Get2D

func (img *IplImage) Get2D(x, y int) Scalar

Get2D return a specific element from a 2-dimensional matrix.

func (*IplImage) Get2DIndex

func (img *IplImage) Get2DIndex(x, y int, i ScalarRGBA) float64

Get2DIndex return one data

func (*IplImage) Get3D

func (img *IplImage) Get3D(x, y, z int) Scalar

Get3D return a specific element from a 3-dimensional matrix.

func (*IplImage) GetCOI

func (img *IplImage) GetCOI() int

Retrieves image Channel Of Interest

func (*IplImage) GetMat

func (img *IplImage) GetMat() *Mat

GetMat returns the matrix header for an image.

func (*IplImage) GetROI

func (img *IplImage) GetROI() Rect

Retrieves image ROI

func (*IplImage) Height

func (img *IplImage) Height() int

func (*IplImage) ImageData

func (img *IplImage) ImageData() unsafe.Pointer

func (*IplImage) ImageSize

func (img *IplImage) ImageSize() int

func (*IplImage) InitHeader

func (img *IplImage) InitHeader(w, h, depth, channels, origin, align int)

Inializes IplImage header

func (*IplImage) MeanStdDev

func (img *IplImage) MeanStdDev() (Scalar, Scalar)

MeanStdDev alculates mean and standard deviation of pixel values

func (*IplImage) Origin

func (img *IplImage) Origin() int

func (*IplImage) Release

func (img *IplImage) Release()

Releases IPL image header and data

func (*IplImage) ReleaseHeader

func (img *IplImage) ReleaseHeader()

Releases (i.e. deallocates) IPL image header

func (*IplImage) ResetROI

func (img *IplImage) ResetROI()

Resets image ROI and COI

func (*IplImage) Reshape

func (img *IplImage) Reshape(channels, rows, _type int) *Mat

Reshape changes shape of the image without copying data. A value of `0` means that channels or rows remain unchanged.

func (*IplImage) Set

func (img *IplImage) Set(value Scalar)

Sets every element of an array to a given value.

func (*IplImage) Set1D

func (img *IplImage) Set1D(x int, value Scalar)

Set1D sets a particular element in the image

func (*IplImage) Set2D

func (img *IplImage) Set2D(x, y int, value Scalar)

Set2D sets a particular element in the image

func (*IplImage) Set3D

func (img *IplImage) Set3D(x, y, z int, value Scalar)

Set3D sets a particular element in the image

func (*IplImage) SetCOI

func (img *IplImage) SetCOI(coi int)

Sets a Channel Of Interest (only a few functions support COI) -

use cvCopy to extract the selected channel and/or put it back

func (*IplImage) SetData

func (img *IplImage) SetData(data unsafe.Pointer, step int)

SetData assigns user data to the image header

func (*IplImage) SetROI

func (img *IplImage) SetROI(rect Rect)

Sets image ROI (region of interest) (COI is not changed)

func (*IplImage) ToImage

func (img *IplImage) ToImage() image.Image

ToImage converts a opencv.IplImage to an go image.Image

func (*IplImage) Width

func (img *IplImage) Width() int

func (*IplImage) WidthStep

func (img *IplImage) WidthStep() int

func (*IplImage) Zero

func (img *IplImage) Zero()

type IplROI

type IplROI C.IplROI

func (*IplROI) Coi

func (roi *IplROI) Coi() int

func (*IplROI) Height

func (roi *IplROI) Height() int

func (*IplROI) Init

func (roi *IplROI) Init(coi, xOffset, yOffset, width, height int)

func (*IplROI) ToRect

func (roi *IplROI) ToRect() Rect

func (*IplROI) Width

func (roi *IplROI) Width() int

func (*IplROI) XOffset

func (roi *IplROI) XOffset() int

func (*IplROI) YOffset

func (roi *IplROI) YOffset() int

type LineIterator

type LineIterator C.CvLineIterator

type Mat

type Mat C.CvMat

func CreateMat

func CreateMat(rows, cols, type_ int) *Mat

Allocates and initializes CvMat header and allocates data

func CreateMatHeader

func CreateMatHeader(rows, cols, type_ int) *Mat

Allocates and initalizes CvMat header

func DecodeImageM

func DecodeImageM(buf unsafe.Pointer, iscolor int) *Mat

func EncodeImage

func EncodeImage(ext string, image unsafe.Pointer, params []int) *Mat

encode image and store the result as a byte vector (single-row 8uC1 matrix)

func GetCol

func GetCol(arr Arr, submat *Mat, col int) *Mat

func GetCols

func GetCols(arr Arr, submat *Mat, start_col, end_col int) *Mat

Selects column span of the input array: arr(:,start_col:end_col)

(end_col is not included into the span)

func GetDiag

func GetDiag(arr Arr, submat *Mat, diag int) *Mat

Select a diagonal of the input array.

(diag = 0 means the main diagonal, >0 means a diagonal above the main one,
<0 - below the main one).
The diagonal will be represented as a column (nx1 matrix).

func GetPerspectiveTransform

func GetPerspectiveTransform(rect, dst []CvPoint2D32f) *Mat

GetPerspectiveTransform calculates a perspective transform from four pairs of the corresponding points.

Parameters:

src – Coordinates of quadrangle vertices in the source image.
dst – Coordinates of the corresponding quadrangle vertices in the destination image.
Returns the computed matrix

func GetRow

func GetRow(arr Arr, submat *Mat, row int) *Mat

func GetRows

func GetRows(arr Arr, submat *Mat, start_row, end_row, delta_row int) *Mat

Selects row span of the input array: arr(start_row:delta_row:end_row,:)

(end_row is not included into the span).

func GetSubRect

func GetSubRect(arr Arr, submat *Mat, rect Rect) *Mat

Makes a new matrix from <rect> subrectangle of input array.

No data is copied

func KMeans

func KMeans(data *Mat, k int, termcrit TermCriteria, attempts int, rng RNG, flags int) (labels, centers *Mat)

KMeans finds centers of k clusters in data and groups input samples around the clusters. It returns a matrix that stores the cluster indices for every sample, and a matrix that stores the cluster centers.

func LoadImageM

func LoadImageM(filename string, iscolor int) *Mat

func (*Mat) Clone

func (mat *Mat) Clone() *Mat

Creates an exact copy of the input matrix (except, may be, step value)

func (*Mat) Cols

func (mat *Mat) Cols() int

func (*Mat) Get

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

func (*Mat) Get1D

func (m *Mat) Get1D(x int) Scalar

Get1D return a specific element from a 1-dimensional matrix.

func (*Mat) Get2D

func (m *Mat) Get2D(x, y int) Scalar

Get2D return a specific element from a 2-dimensional matrix.

func (*Mat) Get3D

func (m *Mat) Get3D(x, y, z int) Scalar

Get3D return a specific element from a 3-dimensional matrix.

func (*Mat) GetData

func (mat *Mat) GetData() []byte

func (*Mat) GetImage

func (m *Mat) GetImage(channels int) *IplImage

GetImage returns the image header for the matrix.

func (*Mat) Init

func (m *Mat) Init(rows, cols int, type_ int, data unsafe.Pointer)

func (*Mat) InitHeader

func (mat *Mat) InitHeader(rows, cols, type_ int, data unsafe.Pointer, step int)

Initializes CvMat header

func (*Mat) Release

func (mat *Mat) Release()

Releases CvMat header and deallocates matrix data

(reference counting is used for data)

func (*Mat) Reshape

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

Reshape changes shape of the matrix without copying data. A value of `0` means that channels or rows remain unchanged.

func (*Mat) Rows

func (mat *Mat) Rows() int

func (*Mat) Set

func (m *Mat) Set(row, col int, value float64)

func (*Mat) Set1D

func (m *Mat) Set1D(x int, value Scalar)

Set1D sets a particular element in them matrix

func (*Mat) Set2D

func (m *Mat) Set2D(x, y int, value Scalar)

Set2D sets a particular element in them matrix

func (*Mat) Set3D

func (m *Mat) Set3D(x, y, z int, value Scalar)

Set3D sets a particular element in them matrix

func (*Mat) SetData

func (mat *Mat) SetData(data unsafe.Pointer, step int)

SetData assigns user data to the matrix header.

func (*Mat) Step

func (mat *Mat) Step() int

func (*Mat) Type

func (mat *Mat) Type() int

func (*Mat) Zero

func (mat *Mat) Zero()

type MatND

type MatND C.CvMatND

func CreateMatND

func CreateMatND(sizes []int, type_ int) *MatND

Allocates and initializes CvMatND header and allocates data

func CreateMatNDHeader

func CreateMatNDHeader(sizes []int, type_ int) *MatND

Allocates and initializes CvMatND header

func (*MatND) Clone

func (mat *MatND) Clone() *MatND

Creates a copy of CvMatND (except, may be, steps)

func (*MatND) Dims

func (m *MatND) Dims() int

func (*MatND) InitMatNDHeader

func (mat *MatND) InitMatNDHeader(sizes []int, type_ int, data unsafe.Pointer)

Initializes preallocated CvMatND header

func (*MatND) Release

func (mat *MatND) Release()

Releases CvMatND

func (*MatND) Type

func (m *MatND) Type() int

type MemBlock

type MemBlock C.CvMemBlock

type MemStorage

type MemStorage C.CvMemStorage

type MemStoragePos

type MemStoragePos C.CvMemStoragePos

type MouseFunc

type MouseFunc interface{}

mouse callback

type MouseFuncA

type MouseFuncA func(event, x, y, flags int)

type MouseFuncB

type MouseFuncB func(event, x, y, flags int, param ...interface{})

type Point

type Point struct {
	X int
	Y int
}

func (Point) Add

func (p Point) Add(p2 Point) Point

func (Point) Angle

func (p Point) Angle() float64

func (Point) Radius

func (p Point) Radius() float64

func (Point) RadiusSq

func (p Point) RadiusSq() float64

func (Point) Sub

func (p Point) Sub(p2 Point) Point

func (Point) ToCvPoint

func (p Point) ToCvPoint() CvPoint

func (Point) ToPoint

func (p Point) ToPoint() Point

type Point2D

type Point2D interface {
	Radius() float64   // the radius to the point
	RadiusSq() float64 // the radius to the point squared
	Angle() float64    // the azmuith angle
	ToPoint() Point    // An conversion to an integer Point type
}

type Point2D32f

type Point2D32f struct {
	X float32
	Y float32
}

func (Point2D32f) Add

func (p Point2D32f) Add(p2 Point2D32f) Point2D32f

func (Point2D32f) Angle

func (p Point2D32f) Angle() float64

func (Point2D32f) Radius

func (p Point2D32f) Radius() float64

func (Point2D32f) RadiusSq

func (p Point2D32f) RadiusSq() float64

func (Point2D32f) Sub

func (p Point2D32f) Sub(p2 Point2D32f) Point2D32f

func (Point2D32f) ToCvPoint

func (p Point2D32f) ToCvPoint() CvPoint2D32f

func (Point2D32f) ToPoint

func (p Point2D32f) ToPoint() Point

type Point2D64f

type Point2D64f struct {
	X float64
	Y float64
}

func (Point2D64f) Add

func (p Point2D64f) Add(p2 Point2D64f) Point2D64f

func (Point2D64f) Angle

func (p Point2D64f) Angle() float64

func (Point2D64f) Radius

func (p Point2D64f) Radius() float64

func (Point2D64f) RadiusSq

func (p Point2D64f) RadiusSq() float64

func (Point2D64f) Sub

func (p Point2D64f) Sub(p2 Point2D64f) Point2D64f

func (Point2D64f) ToPoint

func (p Point2D64f) ToPoint() Point

type Point3D

type Point3D interface {
	Radius() float64   // the radius to the point
	RadiusSq() float64 // the radius to the point squared
	AzAngle() float64  // the azmuith angle
	IncAngle() float64 // the inclination angle from the z direction
}

type Point3D32f

type Point3D32f struct {
	X float32
	Y float32
	Z float32
}

func (Point3D32f) Add

func (p Point3D32f) Add(p2 Point3D32f) Point3D32f

func (Point3D32f) AzAngle

func (p Point3D32f) AzAngle() float64

func (Point3D32f) IncAngle

func (p Point3D32f) IncAngle() float64

func (Point3D32f) Radius

func (p Point3D32f) Radius() float64

func (Point3D32f) RadiusSq

func (p Point3D32f) RadiusSq() float64

func (Point3D32f) Sub

func (p Point3D32f) Sub(p2 Point3D32f) Point3D32f

type Point3D64f

type Point3D64f struct {
	X float64
	Y float64
	Z float64
}

func (Point3D64f) Add

func (p Point3D64f) Add(p2 Point3D64f) Point3D64f

func (Point3D64f) AzAngle

func (p Point3D64f) AzAngle() float64

func (Point3D64f) IncAngle

func (p Point3D64f) IncAngle() float64

func (Point3D64f) Radius

func (p Point3D64f) Radius() float64

func (Point3D64f) RadiusSq

func (p Point3D64f) RadiusSq() float64

func (Point3D64f) Sub

func (p Point3D64f) Sub(p2 Point3D64f) Point3D64f

type RNG

type RNG C.CvRNG

func NewRNG

func NewRNG(seed int64) RNG

func (*RNG) RandInt

func (rng *RNG) RandInt() uint32

func (*RNG) RandReal

func (rng *RNG) RandReal() float64

type Rect

type Rect C.CvRect

func BoundingRect

func BoundingRect(points unsafe.Pointer) Rect

Calculates up-right bounding rectangle of point set points can be either CvSeq* or CvMat*

func NewRect

func NewRect(x, y, w, h int) Rect

func (*Rect) BR

func (r *Rect) BR() Point

Returns the Bottom-Right Point of the rectangle

func (*Rect) Height

func (r *Rect) Height() int

func (*Rect) Init

func (r *Rect) Init(x, y, w, h int)

func (*Rect) TL

func (r *Rect) TL() Point

Returns the Top-Left Point of the rectangle

func (*Rect) ToROI

func (r *Rect) ToROI(coi int) IplROI

func (*Rect) Width

func (r *Rect) Width() int

func (*Rect) X

func (r *Rect) X() int

func (*Rect) Y

func (r *Rect) Y() int

type Scalar

type Scalar C.CvScalar

func NewScalar

func NewScalar(b, g, r, a float64) Scalar

func ScalarAll

func ScalarAll(val0 float64) Scalar

func (Scalar) Val

func (s Scalar) Val() [4]float64

Val returns an array with the scalars values.

type ScalarRGBA

type ScalarRGBA int
const (
	ScalarB ScalarRGBA = 0
	ScalarG ScalarRGBA = 1
	ScalarR ScalarRGBA = 2
	ScalarA ScalarRGBA = 3
)

type Seq

type Seq C.CvSeq

func ApproxPoly

func ApproxPoly(src *Seq, header_size int, storage *MemStorage, method int, eps float64, recursive int) *Seq

CvSeq* cvApproxPoly(const void* src_seq, int header_size, CvMemStorage* storage, int method, double eps, int recursive=0 )

func CreateSeq

func CreateSeq(seq_flags, elem_size int) *Seq

Creates a new sequence.

func (*Seq) Clear

func (seq *Seq) Clear()

Removes all elements from the sequence. Does not release storage, do that by calling Release().

func (*Seq) GetElemAt

func (seq *Seq) GetElemAt(index int) unsafe.Pointer

Gets a pointer to the element at the index

func (*Seq) HNext

func (seq *Seq) HNext() *Seq

Gets a pointer to the next sequence

func (*Seq) HPrev

func (seq *Seq) HPrev() *Seq

Gets a pointer to the previous sequence

func (*Seq) Pop

func (seq *Seq) Pop(element unsafe.Pointer)

Removes element from the sequence end. Copies the element into the paramter element.

func (*Seq) PopFront

func (seq *Seq) PopFront(element unsafe.Pointer)

Removes element from the sequence beginning. Copies the element into the paramter element.

func (*Seq) Push

func (seq *Seq) Push(element unsafe.Pointer) unsafe.Pointer

Adds an element to the sequence end. Returns a pointer to the element added.

func (*Seq) PushFront

func (seq *Seq) PushFront(element unsafe.Pointer) unsafe.Pointer

Adds an element to the sequence beginning. Returns a pointer to the element added.

func (*Seq) Release

func (seq *Seq) Release()

Releases the sequence storage.

func (*Seq) RemoveAt

func (seq *Seq) RemoveAt(index int)

Removes an element from the middle of a sequence.

func (*Seq) Storage

func (seq *Seq) Storage() *MemStorage

Gets a pointer to the storage

func (*Seq) Total

func (seq *Seq) Total() int

Gets the total number of elements in the sequence

func (*Seq) VNext

func (seq *Seq) VNext() *Seq

Gets a pointer to the 2nd next sequence

func (*Seq) VPrev

func (seq *Seq) VPrev() *Seq

Gets a pointer to the 2nd previous sequence

type SeqBlock

type SeqBlock C.CvSeqBlock

type SeqReader

type SeqReader C.CvSeqReader

type SeqWriter

type SeqWriter C.CvSeqWriter

type Set

type Set C.CvSet

type Size

type Size struct {
	Width  int
	Height int
}

func GetSize

func GetSize(img *IplImage) Size

type Size2D32f

type Size2D32f struct {
	Width  float32
	Height float32
}

type Slice

type Slice C.CvSlice

func WholeSeq

func WholeSeq() Slice

Equivalent to the C constant CV_WHOLE_SEQ

type SparseMat

type SparseMat C.CvSparseMat

func CreateSparseMat

func CreateSparseMat(sizes []int, type_ int) *SparseMat

Allocates and initializes CvSparseMat header and allocates data

func (*SparseMat) Clone

func (mat *SparseMat) Clone() *SparseMat

Creates a copy of CvSparseMat (except, may be, zero items)

func (*SparseMat) Dims

func (m *SparseMat) Dims() int

func (*SparseMat) InitSparseMatIterator

func (mat *SparseMat) InitSparseMatIterator(iter *SparseMatIterator) *SparseNode

Initializes sparse array iterator

(returns the first node or NULL if the array is empty)

func (*SparseMat) Release

func (mat *SparseMat) Release()

Releases CvSparseMat

func (*SparseMat) Type

func (m *SparseMat) Type() int

type SparseMatIterator

type SparseMatIterator C.CvSparseMatIterator

func (*SparseMatIterator) CurIdx

func (node *SparseMatIterator) CurIdx() int

func (*SparseMatIterator) Mat

func (node *SparseMatIterator) Mat() *SparseMat

func (*SparseMatIterator) Next

func (iter *SparseMatIterator) Next() *SparseNode

returns next sparse array node (or NULL if there is no more nodes)

func (*SparseMatIterator) Node

func (node *SparseMatIterator) Node() *SparseNode

type SparseNode

type SparseNode C.CvSparseNode

func (*SparseNode) HashVal

func (node *SparseNode) HashVal() uint32

func (*SparseNode) Next

func (node *SparseNode) Next() *SparseNode

type TermCriteria

type TermCriteria C.CvTermCriteria

func (*TermCriteria) Epsilon

func (x *TermCriteria) Epsilon() float64

func (*TermCriteria) Init

func (x *TermCriteria) Init(type_, max_iter int, epsilon float64)

func (*TermCriteria) MaxIter

func (x *TermCriteria) MaxIter() int

func (*TermCriteria) Type

func (x *TermCriteria) Type() int

type TrackbarFunc

type TrackbarFunc interface{}

trackbar callback

type TrackbarFuncA

type TrackbarFuncA func(pos int)

type TrackbarFuncB

type TrackbarFuncB func(pos int, param ...interface{})

type VideoWriter

type VideoWriter C.CvVideoWriter

"black box" video file writer structure

func NewVideoWriter

func NewVideoWriter(filename string,
	fourcc int, fps float32,
	frame_width, frame_height,
	is_color int) *VideoWriter

initialize video file writer

func (*VideoWriter) Release

func (writer *VideoWriter) Release()

close video file writer

func (*VideoWriter) WriteFrame

func (writer *VideoWriter) WriteFrame(image *IplImage) int

write frame to video file

type Window

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

named window

func NewWindow

func NewWindow(name string, flags ...int) *Window

create window

func (*Window) CreateTrackbar

func (win *Window) CreateTrackbar(name string,
	value, count int,
	on_changed TrackbarFunc, param ...interface{}) bool

create trackbar and display it on top of given window, set callback

func (*Window) Destroy

func (win *Window) Destroy()

destroy window and all the trackers associated with it

func (*Window) GetHandle

func (win *Window) GetHandle() unsafe.Pointer

get native window handle (HWND in case of Win32 and Widget in case of X Window)

func (*Window) GetProperty

func (win *Window) GetProperty(prop_id int) float64

func (*Window) GetTrackbarPos

func (win *Window) GetTrackbarPos(name string) (value, max int)

retrieve or set trackbar position

func (*Window) GetWindowName

func (win *Window) GetWindowName() string

get name of highgui window given its native handle

func (*Window) Move

func (win *Window) Move(x, y int)

func (*Window) Resize

func (win *Window) Resize(width, height int)

resize/move window

func (*Window) SetMouseCallback

func (win *Window) SetMouseCallback(on_mouse MouseFunc, param ...interface{})

assign callback for mouse events

func (*Window) SetProperty

func (win *Window) SetProperty(prop_id int, value float64)

Set and Get Property of the window

func (*Window) SetTrackbarPos

func (win *Window) SetTrackbarPos(name string, pos int)

func (*Window) ShowImage

func (win *Window) ShowImage(image *IplImage)

display image within window (highgui windows remember their content)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL