OpenCV 4.5.3(日本語機械翻訳)
クラス | マクロ定義 | 型定義 | 列挙型 | 関数 | 変数
Imgproc_c

クラス

struct CvFont
struct CvConnectedComp
struct CvMoments
struct CvHuMoments
struct CvChainPtReader
struct CvConvexityDefect

マクロ定義

#define cvCalcBackProject(image, dst, hist)   cvCalcArrBackProject((CvArr**)image, dst, hist)
#define cvCalcBackProjectPatch(image, dst, range, hist, method, factor)    cvCalcArrBackProjectPatch( (CvArr**)image, dst, range, hist, method, factor )
#define CV_FILLED   -1
#define CV_AA   16
#define cvDrawRect   cvRectangle
#define cvDrawLine   cvLine
#define cvDrawCircle   cvCircle
#define cvDrawEllipse   cvEllipse
#define cvDrawPolyLine   cvPolyLine
#define CV_NEXT_LINE_POINT(line_iterator)
#define CV_FONT_HERSHEY_SIMPLEX   0
#define CV_FONT_HERSHEY_PLAIN   1
#define CV_FONT_HERSHEY_DUPLEX   2
#define CV_FONT_HERSHEY_COMPLEX   3
#define CV_FONT_HERSHEY_TRIPLEX   4
#define CV_FONT_HERSHEY_COMPLEX_SMALL   5
#define CV_FONT_HERSHEY_SCRIPT_SIMPLEX   6
#define CV_FONT_HERSHEY_SCRIPT_COMPLEX   7
#define CV_FONT_ITALIC   16
#define CV_FONT_VECTOR0   CV_FONT_HERSHEY_SIMPLEX
#define CV_INIT_3X3_DELTAS(deltas, step, nch)

型定義

typedef struct CvFont CvFont
typedef struct CvConnectedComp CvConnectedComp
typedef struct CvMoments CvMoments
typedef struct CvHuMoments CvHuMoments
typedef float(CV_CDECL * CvDistanceFunction) (const float *a, const float *b, void *user_param)
typedef struct _CvContourScanner * CvContourScanner
typedef struct CvChainPtReader CvChainPtReader
typedef struct CvConvexityDefect CvConvexityDefect

列挙型

enum SmoothMethod_c {
CV_BLUR_NO_SCALE =0 , CV_BLUR =1 , CV_GAUSSIAN =2 , CV_MEDIAN =3 ,
CV_BILATERAL =4
}
enum { CV_GAUSSIAN_5x5 = 7 }
enum { CV_SCHARR =-1 , CV_MAX_SOBEL_KSIZE =7 }
enum {
CV_BGR2BGRA =0 , CV_RGB2RGBA =CV_BGR2BGRA , CV_BGRA2BGR =1 , CV_RGBA2RGB =CV_BGRA2BGR ,
CV_BGR2RGBA =2 , CV_RGB2BGRA =CV_BGR2RGBA , CV_RGBA2BGR =3 , CV_BGRA2RGB =CV_RGBA2BGR ,
CV_BGR2RGB =4 , CV_RGB2BGR =CV_BGR2RGB , CV_BGRA2RGBA =5 , CV_RGBA2BGRA =CV_BGRA2RGBA ,
CV_BGR2GRAY =6 , CV_RGB2GRAY =7 , CV_GRAY2BGR =8 , CV_GRAY2RGB =CV_GRAY2BGR ,
CV_GRAY2BGRA =9 , CV_GRAY2RGBA =CV_GRAY2BGRA , CV_BGRA2GRAY =10 , CV_RGBA2GRAY =11 ,
CV_BGR2BGR565 =12 , CV_RGB2BGR565 =13 , CV_BGR5652BGR =14 , CV_BGR5652RGB =15 ,
CV_BGRA2BGR565 =16 , CV_RGBA2BGR565 =17 , CV_BGR5652BGRA =18 , CV_BGR5652RGBA =19 ,
CV_GRAY2BGR565 =20 , CV_BGR5652GRAY =21 , CV_BGR2BGR555 =22 , CV_RGB2BGR555 =23 ,
CV_BGR5552BGR =24 , CV_BGR5552RGB =25 , CV_BGRA2BGR555 =26 , CV_RGBA2BGR555 =27 ,
CV_BGR5552BGRA =28 , CV_BGR5552RGBA =29 , CV_GRAY2BGR555 =30 , CV_BGR5552GRAY =31 ,
CV_BGR2XYZ =32 , CV_RGB2XYZ =33 , CV_XYZ2BGR =34 , CV_XYZ2RGB =35 ,
CV_BGR2YCrCb =36 , CV_RGB2YCrCb =37 , CV_YCrCb2BGR =38 , CV_YCrCb2RGB =39 ,
CV_BGR2HSV =40 , CV_RGB2HSV =41 , CV_BGR2Lab =44 , CV_RGB2Lab =45 ,
CV_BayerBG2BGR =46 , CV_BayerGB2BGR =47 , CV_BayerRG2BGR =48 , CV_BayerGR2BGR =49 ,
CV_BayerBG2RGB =CV_BayerRG2BGR , CV_BayerGB2RGB =CV_BayerGR2BGR , CV_BayerRG2RGB =CV_BayerBG2BGR , CV_BayerGR2RGB =CV_BayerGB2BGR ,
CV_BGR2Luv =50 , CV_RGB2Luv =51 , CV_BGR2HLS =52 , CV_RGB2HLS =53 ,
CV_HSV2BGR =54 , CV_HSV2RGB =55 , CV_Lab2BGR =56 , CV_Lab2RGB =57 ,
CV_Luv2BGR =58 , CV_Luv2RGB =59 , CV_HLS2BGR =60 , CV_HLS2RGB =61 ,
CV_BayerBG2BGR_VNG =62 , CV_BayerGB2BGR_VNG =63 , CV_BayerRG2BGR_VNG =64 , CV_BayerGR2BGR_VNG =65 ,
CV_BayerBG2RGB_VNG =CV_BayerRG2BGR_VNG , CV_BayerGB2RGB_VNG =CV_BayerGR2BGR_VNG , CV_BayerRG2RGB_VNG =CV_BayerBG2BGR_VNG , CV_BayerGR2RGB_VNG =CV_BayerGB2BGR_VNG ,
CV_BGR2HSV_FULL = 66 , CV_RGB2HSV_FULL = 67 , CV_BGR2HLS_FULL = 68 , CV_RGB2HLS_FULL = 69 ,
CV_HSV2BGR_FULL = 70 , CV_HSV2RGB_FULL = 71 , CV_HLS2BGR_FULL = 72 , CV_HLS2RGB_FULL = 73 ,
CV_LBGR2Lab = 74 , CV_LRGB2Lab = 75 , CV_LBGR2Luv = 76 , CV_LRGB2Luv = 77 ,
CV_Lab2LBGR = 78 , CV_Lab2LRGB = 79 , CV_Luv2LBGR = 80 , CV_Luv2LRGB = 81 ,
CV_BGR2YUV = 82 , CV_RGB2YUV = 83 , CV_YUV2BGR = 84 , CV_YUV2RGB = 85 ,
CV_BayerBG2GRAY = 86 , CV_BayerGB2GRAY = 87 , CV_BayerRG2GRAY = 88 , CV_BayerGR2GRAY = 89 ,
CV_YUV2RGB_NV12 = 90 , CV_YUV2BGR_NV12 = 91 , CV_YUV2RGB_NV21 = 92 , CV_YUV2BGR_NV21 = 93 ,
CV_YUV420sp2RGB = CV_YUV2RGB_NV21 , CV_YUV420sp2BGR = CV_YUV2BGR_NV21 , CV_YUV2RGBA_NV12 = 94 , CV_YUV2BGRA_NV12 = 95 ,
CV_YUV2RGBA_NV21 = 96 , CV_YUV2BGRA_NV21 = 97 , CV_YUV420sp2RGBA = CV_YUV2RGBA_NV21 , CV_YUV420sp2BGRA = CV_YUV2BGRA_NV21 ,
CV_YUV2RGB_YV12 = 98 , CV_YUV2BGR_YV12 = 99 , CV_YUV2RGB_IYUV = 100 , CV_YUV2BGR_IYUV = 101 ,
CV_YUV2RGB_I420 = CV_YUV2RGB_IYUV , CV_YUV2BGR_I420 = CV_YUV2BGR_IYUV , CV_YUV420p2RGB = CV_YUV2RGB_YV12 , CV_YUV420p2BGR = CV_YUV2BGR_YV12 ,
CV_YUV2RGBA_YV12 = 102 , CV_YUV2BGRA_YV12 = 103 , CV_YUV2RGBA_IYUV = 104 , CV_YUV2BGRA_IYUV = 105 ,
CV_YUV2RGBA_I420 = CV_YUV2RGBA_IYUV , CV_YUV2BGRA_I420 = CV_YUV2BGRA_IYUV , CV_YUV420p2RGBA = CV_YUV2RGBA_YV12 , CV_YUV420p2BGRA = CV_YUV2BGRA_YV12 ,
CV_YUV2GRAY_420 = 106 , CV_YUV2GRAY_NV21 = CV_YUV2GRAY_420 , CV_YUV2GRAY_NV12 = CV_YUV2GRAY_420 , CV_YUV2GRAY_YV12 = CV_YUV2GRAY_420 ,
CV_YUV2GRAY_IYUV = CV_YUV2GRAY_420 , CV_YUV2GRAY_I420 = CV_YUV2GRAY_420 , CV_YUV420sp2GRAY = CV_YUV2GRAY_420 , CV_YUV420p2GRAY = CV_YUV2GRAY_420 ,
CV_YUV2RGB_UYVY = 107 , CV_YUV2BGR_UYVY = 108 , CV_YUV2RGB_Y422 = CV_YUV2RGB_UYVY , CV_YUV2BGR_Y422 = CV_YUV2BGR_UYVY ,
CV_YUV2RGB_UYNV = CV_YUV2RGB_UYVY , CV_YUV2BGR_UYNV = CV_YUV2BGR_UYVY , CV_YUV2RGBA_UYVY = 111 , CV_YUV2BGRA_UYVY = 112 ,
CV_YUV2RGBA_Y422 = CV_YUV2RGBA_UYVY , CV_YUV2BGRA_Y422 = CV_YUV2BGRA_UYVY , CV_YUV2RGBA_UYNV = CV_YUV2RGBA_UYVY , CV_YUV2BGRA_UYNV = CV_YUV2BGRA_UYVY ,
CV_YUV2RGB_YUY2 = 115 , CV_YUV2BGR_YUY2 = 116 , CV_YUV2RGB_YVYU = 117 , CV_YUV2BGR_YVYU = 118 ,
CV_YUV2RGB_YUYV = CV_YUV2RGB_YUY2 , CV_YUV2BGR_YUYV = CV_YUV2BGR_YUY2 , CV_YUV2RGB_YUNV = CV_YUV2RGB_YUY2 , CV_YUV2BGR_YUNV = CV_YUV2BGR_YUY2 ,
CV_YUV2RGBA_YUY2 = 119 , CV_YUV2BGRA_YUY2 = 120 , CV_YUV2RGBA_YVYU = 121 , CV_YUV2BGRA_YVYU = 122 ,
CV_YUV2RGBA_YUYV = CV_YUV2RGBA_YUY2 , CV_YUV2BGRA_YUYV = CV_YUV2BGRA_YUY2 , CV_YUV2RGBA_YUNV = CV_YUV2RGBA_YUY2 , CV_YUV2BGRA_YUNV = CV_YUV2BGRA_YUY2 ,
CV_YUV2GRAY_UYVY = 123 , CV_YUV2GRAY_YUY2 = 124 , CV_YUV2GRAY_Y422 = CV_YUV2GRAY_UYVY , CV_YUV2GRAY_UYNV = CV_YUV2GRAY_UYVY ,
CV_YUV2GRAY_YVYU = CV_YUV2GRAY_YUY2 , CV_YUV2GRAY_YUYV = CV_YUV2GRAY_YUY2 , CV_YUV2GRAY_YUNV = CV_YUV2GRAY_YUY2 , CV_RGBA2mRGBA = 125 ,
CV_mRGBA2RGBA = 126 , CV_RGB2YUV_I420 = 127 , CV_BGR2YUV_I420 = 128 , CV_RGB2YUV_IYUV = CV_RGB2YUV_I420 ,
CV_BGR2YUV_IYUV = CV_BGR2YUV_I420 , CV_RGBA2YUV_I420 = 129 , CV_BGRA2YUV_I420 = 130 , CV_RGBA2YUV_IYUV = CV_RGBA2YUV_I420 ,
CV_BGRA2YUV_IYUV = CV_BGRA2YUV_I420 , CV_RGB2YUV_YV12 = 131 , CV_BGR2YUV_YV12 = 132 , CV_RGBA2YUV_YV12 = 133 ,
CV_BGRA2YUV_YV12 = 134 , CV_BayerBG2BGR_EA = 135 , CV_BayerGB2BGR_EA = 136 , CV_BayerRG2BGR_EA = 137 ,
CV_BayerGR2BGR_EA = 138 , CV_BayerBG2RGB_EA = CV_BayerRG2BGR_EA , CV_BayerGB2RGB_EA = CV_BayerGR2BGR_EA , CV_BayerRG2RGB_EA = CV_BayerBG2BGR_EA ,
CV_BayerGR2RGB_EA = CV_BayerGB2BGR_EA , CV_BayerBG2BGRA =139 , CV_BayerGB2BGRA =140 , CV_BayerRG2BGRA =141 ,
CV_BayerGR2BGRA =142 , CV_BayerBG2RGBA =CV_BayerRG2BGRA , CV_BayerGB2RGBA =CV_BayerGR2BGRA , CV_BayerRG2RGBA =CV_BayerBG2BGRA ,
CV_BayerGR2RGBA =CV_BayerGB2BGRA , CV_COLORCVT_MAX = 143
}
enum {
CV_INTER_NN =0 , CV_INTER_LINEAR =1 , CV_INTER_CUBIC =2 , CV_INTER_AREA =3 ,
CV_INTER_LANCZOS4 =4
}
enum { CV_WARP_FILL_OUTLIERS =8 , CV_WARP_INVERSE_MAP =16 }
enum MorphShapes_c { CV_SHAPE_RECT =0 , CV_SHAPE_CROSS =1 , CV_SHAPE_ELLIPSE =2 , CV_SHAPE_CUSTOM =100 }
enum {
CV_MOP_ERODE =0 , CV_MOP_DILATE =1 , CV_MOP_OPEN =2 , CV_MOP_CLOSE =3 ,
CV_MOP_GRADIENT =4 , CV_MOP_TOPHAT =5 , CV_MOP_BLACKHAT =6
}
enum {
CV_TM_SQDIFF =0 , CV_TM_SQDIFF_NORMED =1 , CV_TM_CCORR =2 , CV_TM_CCORR_NORMED =3 ,
CV_TM_CCOEFF =4 , CV_TM_CCOEFF_NORMED =5
}
enum {
CV_RETR_EXTERNAL =0 , CV_RETR_LIST =1 , CV_RETR_CCOMP =2 , CV_RETR_TREE =3 ,
CV_RETR_FLOODFILL =4
}
enum {
CV_CHAIN_CODE =0 , CV_CHAIN_APPROX_NONE =1 , CV_CHAIN_APPROX_SIMPLE =2 , CV_CHAIN_APPROX_TC89_L1 =3 ,
CV_CHAIN_APPROX_TC89_KCOS =4 , CV_LINK_RUNS =5
}
enum { CV_POLY_APPROX_DP = 0 }
enum { CV_CONTOURS_MATCH_I1 =1 , CV_CONTOURS_MATCH_I2 =2 , CV_CONTOURS_MATCH_I3 =3 }
enum { CV_CLOCKWISE =1 , CV_COUNTER_CLOCKWISE =2 }
enum {
CV_COMP_CORREL =0 , CV_COMP_CHISQR =1 , CV_COMP_INTERSECT =2 , CV_COMP_BHATTACHARYYA =3 ,
CV_COMP_HELLINGER =CV_COMP_BHATTACHARYYA , CV_COMP_CHISQR_ALT =4 , CV_COMP_KL_DIV =5
}
enum { CV_DIST_MASK_3 =3 , CV_DIST_MASK_5 =5 , CV_DIST_MASK_PRECISE =0 }
enum { CV_DIST_LABEL_CCOMP = 0 , CV_DIST_LABEL_PIXEL = 1 }
enum {
CV_DIST_USER =-1 , CV_DIST_L1 =1 , CV_DIST_L2 =2 , CV_DIST_C =3 ,
CV_DIST_L12 =4 , CV_DIST_FAIR =5 , CV_DIST_WELSCH =6 , CV_DIST_HUBER =7
}
enum {
CV_THRESH_BINARY =0 , CV_THRESH_BINARY_INV =1 , CV_THRESH_TRUNC =2 , CV_THRESH_TOZERO =3 ,
CV_THRESH_TOZERO_INV =4 , CV_THRESH_MASK =7 , CV_THRESH_OTSU =8 , CV_THRESH_TRIANGLE =16
}
enum { CV_ADAPTIVE_THRESH_MEAN_C =0 , CV_ADAPTIVE_THRESH_GAUSSIAN_C =1 }
enum { CV_FLOODFILL_FIXED_RANGE =(1 << 16) , CV_FLOODFILL_MASK_ONLY =(1 << 17) }
enum { CV_CANNY_L2_GRADIENT =(1 << 31) }
enum { CV_HOUGH_STANDARD =0 , CV_HOUGH_PROBABILISTIC =1 , CV_HOUGH_MULTI_SCALE =2 , CV_HOUGH_GRADIENT =3 }

関数

CVAPI (void) cvAcc(const CvArr *image
アキュムレータに画像を追加します.[【詳解】(英語]
CvArr const CvArr *mask CV_DEFAULT (NULL))
CvArr CvPoint int CvScalar value CV_DEFAULT (cvScalarAll(0)))
CvArr int smoothtype CV_DEFAULT (CV_GAUSSIAN)
CvArr int smoothtype int size1 CV_DEFAULT (3)
CvArr int smoothtype int size1 int size2 CV_DEFAULT (0)
CvArr const CvMat CvPoint anchor CV_DEFAULT (cvPoint(-1,-1)))
CvArr int filter CV_DEFAULT (CV_GAUSSIAN_5x5))
CVAPI (CvMat **) cvCreatePyramid(const CvArr *img
画像のピラミッドを構築します.[【詳解】(英語]
int double const CvSize *layer_sizes CvArr *bufarr int calc CV_DEFAULT (1)
CvArr double double int max_level CvTermCriteria termcrit CV_DEFAULT (cvTermCriteria(CV_TERMCRIT_ITER+CV_TERMCRIT_EPS, 5, 1)))
CvArr int interpolation CV_DEFAULT (CV_INTER_LINEAR))
CvArr const CvMat int flags CV_DEFAULT (CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS)
CVAPI (CvMat *) cvGetAffineTransform(const CvPoint2D32f *src
src[i]とdst[i]を対応付けるアフィン変換行列を求めます(i=0,1,2).[【詳解】(英語]
CVAPI (IplConvKernel *) cvCreateStructuringElementEx(int cols
IplConnection: 指定されたサイズと形状の構造化要素を、モフォロジカルな操作のために返します[【詳解】(英語]
CVAPI (double) cvGetSpatialMoment(CvMoments *moments
空間モーメントを取得します.[【詳解】(英語]
CVAPI (int) cvSampleLine(const CvArr *image
指定された線分に属するピクセルを取得し,バッファに格納します.[【詳解】(英語]
CvPoint CvPoint void int connectivity CV_DEFAULT (8))
CVAPI (float) cvCalcEMD2(const CvArr *signature1
重み付けされた2つの点群(シグネチャと呼ばれます)の間の地球移動距離を計算します.[【詳解】(英語]
CvMemStorage CvSeq int header_size CV_DEFAULT (sizeof(CvContour))
CvMemStorage CvSeq int header_size int mode CV_DEFAULT (CV_RETR_LIST)
CvMemStorage CvSeq int header_size int mode int method CV_DEFAULT (CV_CHAIN_APPROX_SIMPLE)
CvMemStorage CvSeq int header_size int mode int method CvPoint offset CV_DEFAULT (cvPoint(0, 0)))
CVAPI (CvContourScanner) cvStartFindContours(CvArr *image
輪郭抽出処理を初期化します.[【詳解】(英語]
CVAPI (CvSeq *) cvFindNextContour(CvContourScanner scanner)
次の輪郭を取得します.[【詳解】(英語]
CVAPI (CvPoint) cvReadChainPoint(CvChainPtReader *reader)
次のチェーンポイントを取得します[【詳解】(英語]
CvSlice slice CV_DEFAULT (CV_WHOLE_SEQ)
CvSlice slice int is_closed CV_DEFAULT (-1))
CV_INLINE double cvContourPerimeter (const void *contour)
CVAPI (CvRect) cvBoundingRect(CvArr *points
輪郭の境界線となる矩形を計算する(update=1),あるいは計算済みの矩形を取得する(update=0).[【詳解】(英語]
CVAPI (CvBox2D) cvMinAreaRect2(const CvArr *points
点の集合を囲む,回転した最小面積の矩形を求めます.[【詳解】(英語]
void *hull_storage int orientation CV_DEFAULT (CV_CLOCKWISE)
CVAPI (CvHistogram *) cvCreateHist(int dims
ヒストグラムを作成します.[【詳解】(英語]
CV_INLINE void cvCalcHist (IplImage **image, CvHistogram *hist, int accumulate CV_DEFAULT(0), const CvArr *mask CV_DEFAULT(NULL))
const CvHistogram CvHistogram double scale CV_DEFAULT (255))
CvArr int distance_type CV_DEFAULT (CV_DIST_L2)
CvArr int distance_type int mask_size const float *mask CvArr *labels int labelType CV_DEFAULT (CV_DIST_LABEL_CCOMP))
CvArr double int adaptive_method CV_DEFAULT (CV_ADAPTIVE_THRESH_MEAN_C)
CvArr double int adaptive_method int threshold_type CV_DEFAULT (CV_THRESH_BINARY)
CvArr double int adaptive_method int threshold_type int block_size double param1 CV_DEFAULT (5))
CvPoint CvScalar CvScalar lo_diff CvScalar up_diff CvConnectedComp *comp int flags CV_DEFAULT (4)
CvArr int int aperture_size double k CV_DEFAULT (0.04))
void int double double int double param1 double param2 double min_theta double max_theta CV_DEFAULT (CV_PI))
void int double double double param1 CV_DEFAULT (100)
CV_INLINE void cvEllipseBox (CvArr *img, CvBox2D box, CvScalar color, int thickness CV_DEFAULT(1), int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0))
CV_INLINE CvFont cvFont (double scale, int thickness CV_DEFAULT(1))
CVAPI (CvScalar) cvColorToScalar(double packed_color
色値を展開します.[【詳解】(英語]

変数

CvArr * sum
CvArr * sqsum
const CvArr * image2
const CvArr CvArr * acc
CvArr double alpha
CvArr * dst
CvArr CvPoint offset
CvArr CvPoint int bordertype
CvArr const CvMat * kernel
int extra_layers
int double rate
CvArr double sp
CvArr double double sr
CvArr * markers
CvArr int xorder
CvArr int int yorder
CvArr int code
CvArr const CvMat * map_matrix
double angle
double double scale
CvArr const CvArr * mapx
CvArr const CvArr const CvArr * mapy
const CvArr CvArr * mapxy
const CvArr CvArr CvArr * mapalpha
CvArr CvPoint2D32f center
CvArr CvPoint2D32f double M
CvArr CvPoint2D32f double maxRadius
int rows
int int anchor_x
int int int anchor_y
int int int int shape
CvArr CvArr * temp
CvArr CvArr IplConvKernel * element
CvArr CvArr IplConvKernel int operation
CvMoments * moments
int x_order
int int y_order
CvHuMoments * hu_moments
CvPoint pt1
CvPoint CvPoint pt2
CvPoint CvPoint void * buffer
const CvArr * templ
const CvArr CvArr * result
const CvArr CvArr int method
const CvArr * signature2
const CvArr int distance_type
CvMemStorage * storage
CvMemStorage CvSeq ** first_contour
CvSeq * new_contour
CvChainPtReader * reader
int header_size
int CvMemStorage int double eps
CvPoint2D32f float * radius
const void * object2
const CvArr * convexhull
const CvRect * rect2
CvPoint2D32f pt [4]
const CvArr * mat
const CvArr CvContour * contour_header
const CvArr CvContour CvSeqBlock * block
CvPoint2D32f int measure_dist
int * sizes
int int type
float ** ranges
int CvHistogram * hist
int CvHistogram float * data
float * min_value
float float * max_value
double factor
double threshold
const CvHistogram * hist2
int number
CvArr CvSize range
const CvHistogram CvHistogram * dst_hist
CvArr double double int threshold_type
CvPoint seed_point
CvPoint CvScalar new_val
CvArr * edges
CvArr double threshold1
CvArr double double threshold2
CvArr * corners
CvArr * eigenvv
CvArr int block_size
CvArr * eigenval
CvArr * harris_response
CvPoint2D32f int count
CvPoint2D32f int CvSize win
CvPoint2D32f int CvSize CvSize zero_zone
CvPoint2D32f int CvSize CvSize CvTermCriteria criteria
CvArr * eig_image
CvArr CvArr * temp_image
CvArr CvArr CvPoint2D32f int * corner_count
CvArr CvArr CvPoint2D32f int double quality_level
CvArr CvArr CvPoint2D32f int double double min_distance
void * line_storage
void int double rho
void int double double theta
void * circle_storage
void int double dp
void int double double min_dist
int dist_type
int double param
int double double reps
int double double double aeps
int double double double float * line
CvPoint CvPoint CvScalar color
CvRect r
CvPoint CvSize axes
CvPoint CvSize double double start_angle
CvPoint CvSize double double double end_angle
const CvPoint * pts
const CvPoint int npts
CvPoint const int int contours
CvPoint const int int int is_closed
CvPoint CvPoint CvLineIterator * line_iterator
int font_face
int double hscale
int double double vscale
const char * text
const char CvPoint org
const char CvPoint const CvFont * font
const CvFont CvSize * text_size
const CvFont CvSize int * baseline
int arrtype
CvSize int int arc_start
CvSize int int int arc_end
CvSize int int int CvPoint int delta
CvSeq * contour
CvSeq CvScalar external_color
CvSeq CvScalar CvScalar hole_color
CvSeq CvScalar CvScalar int max_level

詳解

マクロ定義詳解

◆ CV_INIT_3X3_DELTAS

#define CV_INIT_3X3_DELTAS ( deltas,
step,
nch
)
値:
((deltas)[0] = (nch), (deltas)[1] = -(step) + (nch), \
(deltas)[2] = -(step), (deltas)[3] = -(step) - (nch), \
(deltas)[4] = -(nch), (deltas)[5] = (step) - (nch), \
(deltas)[6] = (step), (deltas)[7] = (step) + (nch))

ピクセルの3x3近傍に高速でアクセスするために、8要素の配列を初期化します。

◆ CV_NEXT_LINE_POINT

#define CV_NEXT_LINE_POINT ( line_iterator )
値:
{ \
int _line_iterator_mask = (line_iterator).err < 0 ? -1 : 0; \
(line_iterator).err += (line_iterator).minus_delta + \
((line_iterator).plus_delta & _line_iterator_mask); \
(line_iterator).ptr += (line_iterator).minus_step + \
((line_iterator).plus_step & _line_iterator_mask); \
}

型定義詳解

◆ CvChainPtReader

フリーマンチェーンリーダーの状態

◆ CvConnectedComp

接続されたコンポーネント構造

◆ CvConvexityDefect

凸部の欠陥

◆ CvFont

typedef struct CvFont CvFont

フォント構造

◆ CvHuMoments

typedef struct CvHuMoments CvHuMoments

Hu不変量

◆ CvMoments

typedef struct CvMoments CvMoments

空間モーメントと中心モーメント

列挙型詳解

◆ anonymous enum

anonymous enum

ピラミッド分解に使われるフィルター

◆ anonymous enum

anonymous enum

特殊なフィルター

◆ anonymous enum

anonymous enum

色変換用の定数

◆ anonymous enum

anonymous enum

サブピクセルの補間方法

◆ anonymous enum

anonymous enum

...およびその他の画像ワーピングフラグ

◆ anonymous enum

anonymous enum

モルフォロジー演算

◆ anonymous enum

anonymous enum

テンプレートマッチング法

◆ anonymous enum

anonymous enum

輪郭抽出モード

◆ anonymous enum

anonymous enum

輪郭の近似法

◆ anonymous enum

anonymous enum

輪郭線近似アルゴリズム

◆ anonymous enum

anonymous enum

形状照合法

列挙値
cv_contours_match_i1

\[I_1(A,B) = \sum _{i=1...7} \left | \frac{1}{m^A_i} - \frac{1}{m^B_i} \right |\]

CV_CONTURS_MATCH_I2

\[I_2(A,B) = \sum _{i=1...7} \left | m^A_i - m^B_i \right |\]

CV_CONTURS_MATCH_I3

\[I_3(A,B) = \max _{i=1...7} \frac{ \left| m^A_i - m^B_i \right| }{ \left| m^A_i \right| }\]

◆ anonymous enum

anonymous enum

形状の向き

◆ anonymous enum

anonymous enum

ヒストグラム比較法

◆ anonymous enum

anonymous enum

距離変換のマスクサイズ

◆ anonymous enum

anonymous enum

出力ラベル配列の内容:連結成分かピクセルか

◆ anonymous enum

anonymous enum

距離変換とM-推定のための距離の種類

列挙値
CV_DIST_USER

ユーザ定義の距離

CV_DIST_L1

距離 = |x1-x2| + |y1-y2| 。

CV_DIST_L2

単純なユークリッド距離.

CV_DIST_C

距離 = max(|x1-x2|,|y1-y2|)

CV_DIST_L12

L1-L2 メトリック: distance = 2(sqrt(1+x*x/2) - 1)

CV_DIST_FAIR

距離 = c^2(|x|/c-log(1+|x|/c)), c = 1.3998.

CV_DIST_WELSCH

距離 = c^2/2(1-exp(-(x/c)^2)), c = 2.9846

CV_DIST_HUBER

distance = |x|<c ? x^2/2 : c(|x|-c/2), c = 1.345

◆ anonymous enum

anonymous enum

しきい値の種類

列挙値
cv_thresh_binary

value = value > threshold ? max_value : 0

cv_thresh_binary_inv

値 = 値 > 閾値 ? 0 : max_value

cv_thresh_trunc

value = value > threshold ? threshold : value

CV_THRESH_TOZERO

value = value > threshold ? value : 0

CV_THRESH_TOZERO_INV

値 = 値 > 閾値 ? 0 : 値

CV_THRESH_OTSU

大津アルゴリズムを利用して,最適な閾値を選択します.このフラグと上記の CV_THRESH_* の値の1つを組み合わせます.

CV_THRESH_TRIANGLE

最適な閾値を選択するために三角形アルゴリズムを利用します.フラグと上記の CV_THRESH_* 値の1つを組み合わせますが,CV_THRESH_OTSU とは組み合わせません.

◆ anonymous enum

anonymous enum

適応的な閾値法

◆ anonymous enum

anonymous enum

FloodFill フラグ

◆ anonymous enum

anonymous enum

カニーエッジ検出器のフラグ

◆ anonymous enum

anonymous enum

ハフ変換のバリアント.

◆ MorphShapes_c

モフォロジカルオペレーションのための構造化要素の形状

参照
cv::MorphShapes,cv::getStructuringElement
列挙値
cv_shape_custom

カスタム構造化要素

◆ SmoothMethod_c

画像の平滑化手法

列挙値
cv_blur_no_scale

線形畳み込み$\texttt{size1}\times\texttt{size2}$ボックスカーネル(すべて1).異なるサイズのボックスカーネルを持つ異なるピクセルを平滑化したい場合は, integral

CV_BLUR

線形畳み込み$\texttt{size1}\times\texttt{size2}$ボックスカーネル(すべて1)を用いて計算され,その後$1/(\texttt{size1}\cdot\texttt{size2})$

CV_GAUSSIAN

ガウスカーネルとの線形畳み込み$\texttt{size1}\times\texttt{size2}$ガウシアンカーネル

CV_MEDIAN

正方形のアパーチャを持つメディアンフィルタ.$\texttt{size1}\times\texttt{size1}$正方形のアパーチャ

CV_BILATERAL

開口部が正方形のバイラテラルフィルタ.$\texttt{size1}\times\texttt{size1}$正方形のアパーチャを持つバイラテラルフィルタで,色のシグマ=シグマ1,空間のシグマ=シグマ2です.size1=0 の場合,アパーチャの正方形の辺は cvRound(sigma2*1.5)*2+1 になります.参照cv::bilateralFilter

関数詳解

◆ CVAPI() [1/14]

CVAPI ( CvBox2D ) const

点の集合を囲む,回転した最小面積の矩形を求めます.

楕円を2次元点の集合にフィットさせます.

参照
cv::minAreaRect
cv::fitEllipse

◆ CVAPI() [2/14]

CVAPI ( CvContourScanner )

輪郭抽出処理を初期化します.

cvStartFindContours を呼び出します.null ポインタが返されるか,その他の条件が満たされるまで, cvFindNextContour を呼び出します.最後に cvEndFindContours を呼び出します.

参照
cvFindContours

◆ CVAPI() [3/14]

CVAPI ( CvHistogram * )

ヒストグラムを作成します.

配列からヒストグラムを作成します.

この関数は,指定されたサイズのヒストグラムを作成し,作成されたヒストグラムへのポインタを返します.配列の ranges が 0 の場合,ヒストグラムのビンの範囲は,後で関数 cvSetHistBinRanges によって指定しなければいけません.cvCalcHist と cvCalcBackProject は,ビンの範囲を設定せずに 8 ビット画像を処理することもありますが,それらは 0 から 255 のビンに等間隔に配置されていると仮定します.

引数
dims ヒストグラムの次元数.
sizes ヒストグラムの次元数を表す配列.
type ヒストグラム表現形式.CV_HIST_ARRAY は,ヒストグラムデータが多次元の密な配列として表現されることを意味します.CvMatND. CV_HIST_SPARSE は,ヒストグラムのデータが多次元の疎な配列として表現されることを意味します.CvSparseMat.
ranges ヒストグラムのビンの範囲を表す配列.その意味は, uniform パラメータの値に依存します.この範囲は,ヒストグラムを計算したり逆投影したりする際に利用され,どのヒストグラムビンが入力画像のどの値/値の組み合わせに対応するかを決定します.
uniform 一様性フラグ.0ではない場合,ヒストグラムは等間隔のビンを持ち,各ビンに対して$0<=i<cDims$ranges[i]は,2つの数値からなる配列です.これは,i番目のヒストグラム次元の下限値と上限値を表します.そして,範囲[lower,upper]全体をdims[i]個の等しい部分に分割し,ヒストグラムの各ビンに対するi番目の入力タプルの値の範囲を決定します.また, uniform=0 であれば,範囲配列の i 番目の要素には dims[i]+1 個の要素が含まれます.$\texttt{lower}_0, \texttt{upper}_0, \texttt{lower}_1, \texttt{upper}_1 = \texttt{lower}_2, ... \texttt{upper}_{dims[i]-1}$ここで$\texttt{lower}_j$および$\texttt{upper}_j$は,それぞれj番目のビンに対するi番目の入力タプル値の下限と上限を表しています.いずれの場合も,ヒストグラムのビンに指定された範囲を超えた入力値は, cvCalcHist ではカウントされず, cvCalcBackProject では 0 で埋められます.

この関数は,ユーザが割り当てたヘッダとビンを持つヒストグラムを初期化します.この方法で初期化できるのは,高密度のヒストグラムだけです.この関数は, hist.

引数
dims ヒストグラムの次元数を表します.
sizes ヒストグラムの次元数を表す配列.
hist この関数によって初期化されるヒストグラムヘッダ.
data ヒストグラムのビンを格納するための配列.
ranges ヒストグラムのビンの範囲.詳細は cvCreateHist を参照してください.
uniform 一様性フラグ.詳細は cvCreateHist を参照してください.

◆ CVAPI() [4/14]

CVAPI ( CvMat * ) const

src[i]とdst[i]を対応付けるアフィン変換行列を求めます(i=0,1,2).

src[i] から dst[i] へのマッピングのための透視変換行列を計算します( i=0,1,2,3 ).

rotation_matrix 行列を計算します.

参照
cv::getAffineTransform
cv::getRotationMatrix2D
cv::getPerspectiveTransform

◆ CVAPI() [5/14]

CVAPI ( CvMat ** ) const

画像のピラミッドを構築します.

参照
buildPyramid

◆ CVAPI() [6/14]

CVAPI ( CvPoint )

次のチェーンポイントを取得します

参照
cvApproxChains

◆ CVAPI() [7/14]

CVAPI ( CvRect )

輪郭の境界線となる矩形を計算する(update=1),あるいは計算済みの矩形を取得する(update=0).

与えられた2つの矩形を含む最小の矩形を見つけます.

参照
cv::boundingRect

◆ CVAPI() [8/14]

CVAPI ( CvScalar )

色値を展開します.

if arrtype is CV_8UC?色は,パックされた色値として扱われます.そうでない場合は,出力スカラの最初のチャンネル(arrtypeによって異なります)が,同じ値にセットされます =色

◆ CVAPI() [9/14]

CVAPI ( CvSeq * )

次の輪郭を取得します.

画像中の円を見つける

いくつかの方法のうちの1つを使って,2値画像上の線を見つけます.

点の行列(列または行のベクトル)に対するシーケンスヘッダを初期化する

輪郭の凸状欠損を見つける

2次元点集合の正確な凸包を計算する

単一の多角形曲線(輪郭)または多角形曲線(輪郭)の木を近似する

フリーマンチェーンを多角形曲線で近似する

輪郭スキャナを解放し,最初の外郭へのポインタを返します.

参照
cvFindContours

これは,独立した輪郭近似ルーチンであり,新しいインタフェースでは表現されません.cvFindContours が Freeman チェーンとして輪郭を取得した場合,この関数を呼び出して,多角形で表現された近似輪郭を取得します.

引数
src_seq 他のチェーンを参照できる,近似的なフリーマンチェーンへのポインタ.
storage 結果として得られるポリラインの格納場所。
method 近似手法(関数 :ocvFindContours の説明を参照してください).
parameter メソッドのパラメータ(現在は使用されていません).
minimal_perimeter 周囲の長さが minimal_perimeter 以上の輪郭のみを近似します.その他の鎖は,結果として得られる構造体から削除されます.
recursive 再帰フラグ.これが0ではない場合,この関数は, chain から h_next または v_next リンクを利用して得られるすべてのチェーンを近似します.そうでない場合は,1つの入力チェーンを近似します.
参照
cvStartReadChainPoints, cvReadChainPoint
cv::approxPolyDP
cv::convexHull
cv::convexityDefects

cvMakeSeqHeaderForArray のラッパー(これは, bounding rectangle を初期化しません!!!).

line_storage は,メモリストレージまたは 1 x最大行数 CvMatmethod は CV_HOUGH_* のうちの1つで,rho, theta, threshold がそれぞれの方法で利用されます. param1 ~ line length, param2 ~ line gap - 確率的な場合,param1 ~ srn, param2 ~ stn - マルチスケールの場合.

参照
cv::HoughLines
cv::HoughCircles

◆ CVAPI() [10/14]

CVAPI ( double )

空間モーメントを取得します.

グレースケール画像に対して,固定レベルの閾値を適用します.

点が多角形の内側にあるか,外側にあるか,端にあるか(頂点にあるか)をチェックします.

2つの輪郭のモーメントを一致させて比較する機能

輪郭または輪郭セグメントの面積を計算する

輪郭の周囲、または輪郭の一部の長さを計算する

正規化された中心モーメントを取得する

中心モーメントを取得する

参照
cv::arcLength
cv::contourArea
cv::matchShapes

それぞれ、正、負、ゼロを返す。オプションで、点と最も近いポリゴンエッジとの符号付き距離を測定します (measure_dist=1)

参照
cv::pointPolygonTest

2つのヒストグラムを比較する

これは,輪郭を取得する前に行われる基本的な操作です.

参照
cv::threshold

◆ CVAPI() [11/14]

CVAPI ( float ) const

重み付けされた2つの点群(シグネチャと呼ばれます)の間の地球移動距離を計算します.

参照
cv::EMD

◆ CVAPI() [12/14]

CVAPI ( int ) const

指定された線分に属するピクセルを取得し,バッファに格納します.

与えられた楕円を構成するポリゴンポイントを返します.

線分のイテレータを初期化します.

*pt1 と *pt2 を結ぶ線分を,矩形の窓で切り取ります.

輪郭が凸かどうかをチェックします(凸なら1、非凸なら0を返します)。

点の集合を囲む最小の円を検索します。

黒色(0)の背景に白色(0ではない)の連結成分がある場合,その外側と内側の境界を取得する(オプション)。

取得した点の数を返します。

参照
cv::LineSegmentDetector
cv::findContours, cvStartFindContours, cvFindNextContour, cvSubstituteContour, cvEndFindContours
cv::minEnclosingCircle
cv::isContourConvex

(0<=x<img_size.width, 0<=y<img_size.height).

参照
cv::clipLine

初期状態では, line_iterator->ptr は,画像中の pt1(または pt2,left_to_right の説明を参照してください)の位置を指します.終点から終点までの直線上のピクセル数を返します。

参照
cv::LineIterator

楕円は,「軸」の大きさの箱を「中心」を中心に「角度」だけ回転させたものです.arc_start と arc_end にそれぞれ 0 と 360 以外の値を指定することで、楕円の円弧の部分的な掃引を行うことができます。入力配列 'pts' は、結果を格納できるだけの大きさが必要です。pts' に格納されたポイントの総数がこの関数によって返される。

参照
cv::ellipse2Poly

◆ CVAPI() [13/14]

CVAPI ( IplConvKernel * )

IplConnection: 指定されたサイズと形状の構造化要素を、モフォロジカルな操作のために返します

覚え書き
作成された構造体要素 IplConvKernel* element は、以下の方法で最後に解放する必要があります。cvReleaseStructuringElement(&element).
引数
cols 構造化要素の幅
rows 構造化要素の高さ
anchor_x アンカーのx座標
anchor_y アンカーのy座標
shape cv::MorphShapes_c のうちの1つである要素の形状.
values shape=CV_SHAPE_CUSTOM の場合に,構造化要素のカスタム形状を指定する cols*rows 要素の整数配列.
参照
cv::getStructuringElement

◆ CVAPI() [14/14]

CVAPI ( void ) const

アキュムレータに画像を追加します.

輪郭線や塗りつぶした内部を画像上に描画する

テキストストロークのバウンディングボックスを計算する(位置合わせに便利)

指定された位置に,指定されたフォントと色のテキストストロークを描画します.CvFontcvInitFont で初期化されなければいけません.

フォント構造を初期化します(OpenCV 1.x API).

1つあるいは複数の多角形の曲線を描画します.

1つまたは複数の任意の多角形で囲まれた領域を塗りつぶします.

凸状または単調な多角形を埋めます.

楕円のアウトライン、塗りつぶし楕円、楕円弧、塗りつぶし楕円セクタの描画

中心と半径を指定して円を描画する機能

引数で指定された矩形を描画します。CvRect構造体

矩形の対向する2つの角(pt1 & pt2)を指定して矩形を描画します。

2 つの点を結ぶ 4 連結、8 連結、またはアンチエイリアスされた線分を描画する

線分を2次元または3次元の点の集合にロバストにフィットさせる(M-estimator technique)。

選択された領域内で,追跡しやすそうな点の疎なセットを見つける

ある種の勾配検索を用いて,コーナーの位置を調整する

ハリス・コーナー検出器。

すべての画像ピクセルにおいて,2x2 勾配共分散行列の最小固有値を計算する

各画像ピクセルにおいて,2x2 勾配共役行列の固有値とベクトルを計算します.

コーナー検出のための制約画像を計算します.

カニーエッジ検出器の実行

色差が十分に大きくなるまで,連結成分を埋めていく

グレースケール画像に適応型閾値を適用する

2値画像に距離変換を適用する

8ビットシングルチャンネル画像のヒストグラムを等化する

あるヒストグラムを別のヒストグラムで割る

ヒストグラムを比較して,画像内のテンプレートを特定する

バックプロジェクトを計算する

配列のヒストグラムを計算する

ベイジアン確率的ヒストグラムを計算します(src と dst はそれぞれ,次のような配列です).数ヒストグラム

ヒストグラムをコピーします.

ヒストグラムをしきい値化します.

ヒストグラムを正規化します.

ヒストグラムの最小ビンと最大ビンを求めます。

ヒストグラムをクリアする。

ヒストグラムを解除する。

ヒストグラムのビンの境界線を設定します。

ボックスの頂点の座標を求めます.

フリーマンチェーンリーダーを初期化します.

最後に取得した輪郭を,新しい輪郭に置き換えます.

テンプレートとソース画像のオーバーラップしたウィンドウとの類似性を測定し,その測定値を結果画像に反映させます.

入力配列から四角形を取り出します.

入力配列から,指定された中心を持つ矩形の画像領域を検索します.

事前に計算された空間モーメントと中心モーメントから7つのHuの不変量を計算します。

3次までのすべての空間・中心モーメントを計算する

複雑なモルフォロジー変換を行う

入力画像を1回または複数回拡張する(最大フィルタをかける

入力画像を1回または複数回,消去します(最小フィルタを適用).element pointerがNULLの場合,3x3の長方形の要素が使用される

構造化要素を解放する

log-polar 画像の順変換または逆変換を行う

cvRemap 用に,mapx と mapy を浮動小数点型から整数型に変換します.

指定された座標マップを用いて,汎用的な幾何学変換を行います.

遠近法(射影法)で画像を変換する

アフィン変換を用いて画像を変換します.

画像をリサイズします(入力配列を出力配列に合わせてリサイズします).

入力配列のピクセルを,ある色空間から別の色空間に変換する

画像のラプラシアンを計算します。(d2/dx + d2/dy)I

一般化されたSobelを用いて,画像の微分を計算する

種となるマーカーを使って画像を分割

平均値シフトアルゴリズムによる画像のフィルタリング

ピラミッドをリリース

画像をアップサンプリングし、その結果をガウスカーネルで平滑化します。

入力画像をガウシアンカーネルで平滑化した後、ダウンサンプリングを行う

積分画像を求める。SUM(X,Y) = sum(x<X,y<Y)I(x,y)

画像をカーネルで畳み込みます.

画像をいくつかの方法で平滑化します。

画像を重みをつけてアキュムレータに追加します: acc = acc*(1-alpha) + image*alpha

2つの画像の積をアキュムレータに加える

二乗画像をアキュムレータに追加します。

参照
cv::accumulate
cv::accumulateSquare
cv::accumulateProduct
cv::accumulateWeighted

コピー元の2次元配列を、より大きなコピー先の配列の内部にコピーし、コピーされた領域の周りに指定された型(IPL_BORDER_*)の境界線を作成します。

引数
src コピー元の画像
dst コピー先の画像
smoothtype スムージングの種類,SmoothMethod_cを参照してください.
size1 スムージング操作の最初のパラメータ,アパーチャ幅です.正の奇数(1, 3, 5, ...)でなければなりません。
size2 スムージング操作の2番目のパラメータ,アパーチャの高さ.CV_MEDIAN や CV_BILATERAL では無視されます.単純なスケーリング/非スケーリング,ガウスぼかしの場合, size2 が0ならば size1 にセットされます.それ以外の場合は,正の奇数でなければいけません.
sigma1 ガウシアンパラメータの場合、このパラメータにはガウシアン$\sigma$(標準偏差)を指定します。これがゼロの場合、カーネルサイズから計算されます。

\[\sigma = 0.3 (n/2 - 1) + 0.8 \quad \text{where} \quad n= \begin{array}{l l} \mbox{\texttt{size1} for horizontal kernel} \\ \mbox{\texttt{size2} for vertical kernel} \end{array}\]

小さなカーネルに標準シグマを使うと($3\times 3$から$7\times 7$)を使用すると,速度が向上します.sigma1が0ではなく、size1とsize2が0の場合、カーネルサイズはシグマから計算されます(十分な精度で動作するため)。
sigma2 バイラテラル・フィルタリングの追加パラメータ
参照
cv::GaussianBlur,cv::blur,cv::medianBlur,cv::bilateralFilter.
引数
src 入力画像.
dst src と同じサイズ,同じチャンネル数の出力画像.
kernel シングルチャンネルの浮動小数点型行列であるコンボリューションカーネル(というよりも,相関カーネル).異なるチャンネルに異なるカーネルを適用したい場合は, split を用いて画像を別々のカラープレーンに分割し,それらを個別に処理します.
anchor カーネル内でのフィルタリングされた点の相対的な位置を示す,カーネルのアンカー.デフォルト値 (-1,-1) は,アンカーがカーネルの中心にあることを意味します.
参照
cv::filter2D
cv::integral

dst_width = floor(src_width/2)[+1], dst_height = floor(src_height/2)[+1].

参照
cv::pyrDown

dst_width = src_width*2, dst_height = src_height*2

参照
cv::pyrUp
cv::pyrMeanShiftFiltering
cv::watershed

(aperture_size = 1,3,5,7) または Scharr (aperture_size = -1) 演算子を使用します。Scharrは,1次dxまたはdy微分に対してのみ利用できます.

参照
cv::Sobel
cv::Laplacian
cv::cvtColor
cv::resize
覚え書き
::cvGetQuadrangleSubPix は, ::cvWarpAffine と似ていますが,外れ値は複製境界モードを用いて外挿されます.
参照
cv::warpAffine
cv::warpPerspective
cv::remap
cv::convertMaps
cv::warpPolar

Linear-Polar 画像の順変換,逆変換を行います.

参照
cv::warpPolar
cvCreateStructuringElementEx
cv::erode

element ポインタが NULL の場合,3x3 の矩形の要素が利用されます.

参照
cv::dilate
cv::morphologyEx
cv::moments
cv::HuMoments

dst(x,y) <- src(x + center.x - dst_width/2, y + center.y - dst_height/2). 小数点以下の座標を持つピクセルの値は,バイリニア補間を用いて取得されます

参照
cv::getRectSubPix

matrixarr = ( a11 a12 | b1 ) dst(x,y) <- src(A[x y]' + b) ( a21 a22 | b2 ) (バイリニア補間を用いて,分数座標を持つピクセルを取得します).

参照
cvWarpAffine
cv::matchTemplate

(substitutor が NULL の場合,最後に取得された輪郭がツリーから削除されます)

参照
cvFindContours

このリーダは,すべてのチェーンポイントの座標を反復的に取得するために利用されます.フリーマンコードをそのまま読み取る必要がある場合は,単純なシーケンスリーダを利用します.

参照
cvApproxChains

これは,ヒストグラムのビンの範囲を設定するための独立した関数です.パラメータ ranges と uniform のより詳細な説明は,同様に範囲を初期化できる関数 :ocvCalcHist を参照してください.ヒストグラムのビンの範囲は、ヒストグラムが計算される前、あるいはヒストグラムのバックプロジェクションが計算される前に設定しなければなりません。

引数
hist ヒストグラム.
ranges ビンの範囲を表す配列.詳細は, :ocvCreateHist を参照してください。
uniform 一様性フラグ.詳細は :ocvCreateHist を参照してください。

この関数は,ヒストグラム(ヘッダとデータ)を解放します.ヒストグラムへのポインタは,この関数によってクリアされます。もし *hist ポインタが既にNULLならば,この関数は何もしません.

引数
hist 解放されたヒストグラムへのダブルポインタ.

この関数は,密なヒストグラムの場合はすべてのヒストグラムビンを0にし,疎な配列の場合はすべてのヒストグラムビンを削除します.

引数
hist ヒストグラム.

この関数は,ヒストグラムの最小ビンと最大ビン,そしてそれらの位置を求めます.すべての出力引数はオプションです.同じ値を持つ複数の極大値の中から,(辞書的順序で)最小のインデックスを持つものが返されます.また,複数の極大値や極小値がある場合は,辞書的順序で最も早いもの(極大値の位置)が返されます.

引数
hist ヒストグラム.
min_value ヒストグラムの最小値へのポインタ.
max_value ヒストグラムの最大値へのポインタ.
min_idx 最小値を表す座標の配列へのポインタ.
max_idx 最大値を表す座標の配列へのポインタ.

この関数は,ヒストグラムのビンの合計が factor と等しくなるようにスケーリングすることで,ヒストグラムのビンを正規化します.

引数
hist ヒストグラムへのポインタ.
factor 正規化係数.

この関数は,指定した閾値以下のヒストグラムビンを消去します.

引数
hist ヒストグラムへのポインタ.
threshold しきい値レベル。

この関数は,ヒストグラムのコピーを作成します.2番目のヒストグラムポインタ *dst が NULL の場合は, src と同じサイズの新しいヒストグラムが作成されます.そうでない場合は,両方のヒストグラムの型とサイズが等しくなければいけません.そして,この関数は,コピー元のヒストグラムのビン値をコピー先のヒストグラムにコピーし, src と同じビン値の範囲を設定します.

引数
src コピー元ヒストグラム.
dst コピー先のヒストグラムへのポインタ.
参照
cv::calcHist
cvCalcBackProject.cv::calcBackProject

この関数は,入力画像のパッチのヒストグラムと,与えられたヒストグラムを比較することで,バックプロジェクションを計算します.この関数は, matchTemplate と似ていますが,ラスタパッチを検索窓内の可能なすべての位置と比較する代わりに,関数 CalcBackProjectPatch はヒストグラムを比較します.以下のアルゴリズム図をご覧ください。

image

引数
image ソース画像(ただし,CvMat** を渡しても構いません).
dst 出力画像。
range
hist ヒストグラム.
method cvCompareHist に渡される比較手法(この関数の説明を参照してください).
factor 出力画像の正規化スケールに影響を与える,ヒストグラムの正規化係数.よく分からない場合は,1を渡します.
参照
cvCalcBackProjectPatch

この関数は,次のような2つのヒストグラムから,物体の確率密度を求めます.

\[\texttt{disthist} (I)= \forkthree{0}{if \‍(\texttt{hist1}(I)=0\‍)}{\texttt{scale}}{if \‍(\texttt{hist1}(I) \ne 0\‍) and \‍(\texttt{hist2}(I) > \texttt{hist1}(I)\‍)}{\frac{\texttt{hist2}(I) \cdot \texttt{scale}}{\texttt{hist1}(I)}}{if \‍(\texttt{hist1}(I) \ne 0\‍) and \‍(\texttt{hist2}(I) \le \texttt{hist1}(I)\‍)}\]

引数
hist1 1番目のヒストグラム(除数).
hist2 2番目のヒストグラム.
dst_hist 移動先のヒストグラム.
scale 出力ヒストグラムのスケールファクタ.
参照
cv::equalizeHist
cv::distanceTransform

CV_ADAPTIVE_THRESH_MEAN_C および CV_ADAPTIVE_THRESH_GAUSSIAN_C の2つのパラメータは,近傍領域のサイズ(3, 5, 7 など)と,平均値から差し引かれる定数(...,-3,2,-1,0,1,2,3,...)です.

参照
cv::adaptiveThreshold
cv::floodFill
cv::Canny

Dx^2 * Dyy + Dxx * Dy^2 - 2 * Dx * Dy * Dxy. この結果に閾値を適用すると、角の座標が得られる

参照
cv::preCornerDetect
cv::cornerEigenValsAndVecs
cv::cornerMinEigenVal

det(M) - k*(trace(M)^2) を計算します。ここで M は各ピクセルの 2x2 勾配共分散行列です。

参照
cv::cornerHarris
cv::cornerSubPix
cv::goodFeaturesToTrack
cv::fitLine
cv::line

thickness<0(例えば, thickness == CV_FILLED )の場合,塗りつぶされたボックスが描画されます.

参照
cv::rectangle
cv::rectangle

thickness は, cvRectangle の場合と同じように動作します.

参照
cv::circle

に依存します.thickness,start_angleおよびend_angleパラメーターによって決まります.結果として得られる図形の回転は角度. 角度の単位は,すべて度です

参照
cv::ellipse
cv::fillConvexPoly
cv::fillPoly
cv::polylines

この関数は,テキスト描画関数に渡すことのできるフォント構造体を初期化します.

引数
font この関数によって初期化されたフォント構造体へのポインタ
font_face フォント名の識別子.を参照してください.cv::HersheyFontsと,それに対応する古い CV_* 識別子を参照してください.
hscale 水平方向のスケール.1.0f に等しい場合,文字はフォントの種類に応じた元の幅を持ちます.0.5f に等しい場合,文字は元の幅の半分になります.
vscale 垂直方向のスケール。1.0f に設定すると、フォントの種類に応じて、元の高さの文字が表示されます。0.5f の場合、文字の高さは元の半分になります。
shear 垂直線に対する文字の傾きのおおよその接線。0の場合はノンイタリックフォント、1.0fの場合は約45度の傾きなどを意味します。
thickness 文字のストロークの太さ
line_type ストロークの種類,線の説明を参照してください.
参照
cvPutText
cvInitFont, cvGetTextSize, cvFont,cv::putText
cv::getTextSize
cv::drawContours

◆ cvCalcHist()

CV_INLINE void cvCalcHist ( IplImage ** image,
CvHistogram * hist,
int accumulate CV_DEFAULT0,
const CvArr *mask CV_DEFAULTNULL
)

これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。

◆ cvContourPerimeter()

CV_INLINE double cvContourPerimeter ( const void * contour )

閉じた輪郭に対する cvArcLength と同じです.