/*M///////////////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
//
// By downloading, copying, installing or using the software you agree to this license.
// If you do not agree to this license, do not download, install,
// copy or use the software.
//
//
// License Agreement
// For Open Source Computer Vision Library
//
// Copyright (C) 2000-2008, Intel Corporation, all rights reserved.
// Copyright (C) 2009, Willow Garage Inc., all rights reserved.
// Copyright (C) 2013, OpenCV Foundation, all rights reserved.
// Third party copyrights are property of their respective owners.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// * Redistribution's of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer.
//
// * Redistribution's in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
//
// * The name of the copyright holders may not be used to endorse or promote products
// derived from this software without specific prior written permission.
//
// This software is provided by the copyright holders and contributors "as is" and
// any express or implied warranties, including, but not limited to, the implied
// warranties of merchantability and fitness for a particular purpose are disclaimed.
// In no event shall the Intel Corporation or contributors be liable for any direct,
// indirect, incidental, special, exemplary, or consequential damages
// (including, but not limited to, procurement of substitute goods or services;
// loss of use, data, or profits; or business interruption) however caused
// and on any theory of liability, whether in contract, strict liability,
// or tort (including negligence or otherwise) arising in any way out of
// the use of this software, even if advised of the possibility of such damage.
//
//M*/
#ifndef OPENCV_CORE_C_H
#define OPENCV_CORE_C_H
#include "opencv2/core/types_c.h"
#ifdef __cplusplus
# ifdef _MSC_VER
/* disable warning C4190: 'function' has C-linkage specified, but returns UDT 'typename'
which is incompatible with C
It is OK to disable it because we only extend few plain structures with
C++ construrtors for simpler interoperability with C++ API of the library
*/
# pragma warning(disable:4190)
# elif defined __clang__ && __clang_major__ >= 3
# pragma GCC diagnostic ignored "-Wreturn-type-c-linkage"
# endif
#endif
#ifdef __cplusplus
extern "C" {
#endif
/** @addtogroup core_c
@{
*/
/****************************************************************************************\
* Array allocation, deallocation, initialization and access to elements *
\****************************************************************************************/
/** `malloc` wrapper.
If there is no enough memory, the function
(as well as other OpenCV functions that call cvAlloc)
raises an error. */
CVAPI(void*) cvAlloc( size_t size );
/** `free` wrapper.
Here and further all the memory releasing functions
(that all call cvFree) take double pointer in order to
to clear pointer to the data after releasing it.
Passing pointer to NULL pointer is Ok: nothing happens in this case
*/
CVAPI(void) cvFree_( void* ptr );
#define cvFree(ptr) (cvFree_(*(ptr)), *(ptr)=0)
/** @brief Creates an image header but does not allocate the image data.
@param size Image width and height
@param depth Image depth (see cvCreateImage )
@param channels Number of channels (see cvCreateImage )
*/
CVAPI(IplImage*) cvCreateImageHeader( CvSize size, int depth, int channels );
/** @brief Initializes an image header that was previously allocated.
The returned IplImage\* points to the initialized header.
@param image Image header to initialize
@param size Image width and height
@param depth Image depth (see cvCreateImage )
@param channels Number of channels (see cvCreateImage )
@param origin Top-left IPL_ORIGIN_TL or bottom-left IPL_ORIGIN_BL
@param align Alignment for image rows, typically 4 or 8 bytes
*/
CVAPI(IplImage*) cvInitImageHeader( IplImage* image, CvSize size, int depth,
int channels, int origin CV_DEFAULT(0),
int align CV_DEFAULT(4));
/** @brief Creates an image header and allocates the image data.
This function call is equivalent to the following code:
@code
header = cvCreateImageHeader(size, depth, channels);
cvCreateData(header);
@endcode
@param size Image width and height
@param depth Bit depth of image elements. See IplImage for valid depths.
@param channels Number of channels per pixel. See IplImage for details. This function only creates
images with interleaved channels.
*/
CVAPI(IplImage*) cvCreateImage( CvSize size, int depth, int channels );
/** @brief Deallocates an image header.
This call is an analogue of :
@code
if(image )
{
iplDeallocate(*image, IPL_IMAGE_HEADER | IPL_IMAGE_ROI);
*image = 0;
}
@endcode
but it does not use IPL functions by default (see the CV_TURN_ON_IPL_COMPATIBILITY macro).
@param image Double pointer to the image header
*/
CVAPI(void) cvReleaseImageHeader( IplImage** image );
/** @brief Deallocates the image header and the image data.
This call is a shortened form of :
@code
if(*image )
{
cvReleaseData(*image);
cvReleaseImageHeader(image);
}
@endcode
@param image Double pointer to the image header
*/
CVAPI(void) cvReleaseImage( IplImage** image );
/** Creates a copy of IPL image (widthStep may differ) */
CVAPI(IplImage*) cvCloneImage( const IplImage* image );
/** @brief Sets the channel of interest in an IplImage.
If the ROI is set to NULL and the coi is *not* 0, the ROI is allocated. Most OpenCV functions do
*not* support the COI setting, so to process an individual image/matrix channel one may copy (via
cvCopy or cvSplit) the channel to a separate image/matrix, process it and then copy the result
back (via cvCopy or cvMerge) if needed.
@param image A pointer to the image header
@param coi The channel of interest. 0 - all channels are selected, 1 - first channel is selected,
etc. Note that the channel indices become 1-based.
*/
CVAPI(void) cvSetImageCOI( IplImage* image, int coi );
/** @brief Returns the index of the channel of interest.
Returns the channel of interest of in an IplImage. Returned values correspond to the coi in
cvSetImageCOI.
@param image A pointer to the image header
*/
CVAPI(int) cvGetImageCOI( const IplImage* image );
/** @brief Sets an image Region Of Interest (ROI) for a given rectangle.
If the original image ROI was NULL and the rect is not the whole image, the ROI structure is
allocated.
Most OpenCV functions support the use of ROI and treat the image rectangle as a separate image. For
example, all of the pixel coordinates are counted from the top-left (or bottom-left) corner of the
ROI, not the original image.
@param image A pointer to the image header
@param rect The ROI rectangle
*/
CVAPI(void) cvSetImageROI( IplImage* image, CvRect rect );
/** @brief Resets the image ROI to include the entire image and releases the ROI structure.
This produces a similar result to the following, but in addition it releases the ROI structure. :
@code
cvSetImageROI(image, cvRect(0, 0, image->width, image->height ));
cvSetImageCOI(image, 0);
@endcode
@param image A pointer to the image header
*/
CVAPI(void)
没有合适的资源?快使用搜索试试~ 我知道了~
vs2015编译好的opencv4.0.0包
共625个文件
hpp:370个
dll:91个
lib:90个
5星 · 超过95%的资源 需积分: 24 78 下载量 54 浏览量
2018-10-31
22:36:14
上传
评论 2
收藏 83.38MB ZIP 举报
温馨提示
我们编译好的包不仅包含了原始的opencv4.0.0,而且包含了opencv_contrib的最新提交。
资源推荐
资源详情
资源评论
收起资源包目录
vs2015编译好的opencv4.0.0包 (625个子文件)
OpenCVModules-release.cmake 26KB
OpenCVModules-debug.cmake 26KB
OpenCVModules.cmake 15KB
OpenCVConfig.cmake 14KB
OpenCVConfig-version.cmake 433B
opencv_imgproc400d.dll 55.73MB
opencv_imgproc400.dll 40.78MB
opencv_core400d.dll 17.85MB
opencv_ffmpeg400_64.dll 17.53MB
opencv_dnn400d.dll 13.12MB
opencv_core400.dll 11.51MB
opencv_gapi400d.dll 7.15MB
opencv_imgcodecs400d.dll 6.41MB
opencv_calib3d400d.dll 5.08MB
opencv_dnn400.dll 4.79MB
opencv_tracking400d.dll 4.44MB
opencv_xfeatures2d400d.dll 4.4MB
opencv_ximgproc400d.dll 3.67MB
opencv_imgcodecs400.dll 2.87MB
opencv_xfeatures2d400.dll 2.81MB
opencv_stitching400d.dll 2.8MB
opencv_features2d400d.dll 2.54MB
opencv_rgbd400d.dll 2.37MB
opencv_tracking400.dll 2.37MB
opencv_face400d.dll 2.31MB
opencv_calib3d400.dll 2.25MB
opencv_gapi400.dll 2.14MB
opencv_objdetect400d.dll 2.06MB
opencv_photo400d.dll 2.02MB
opencv_text400d.dll 1.99MB
opencv_ml400d.dll 1.92MB
opencv_datasets400d.dll 1.78MB
opencv_xphoto400d.dll 1.74MB
opencv_ccalib400d.dll 1.66MB
opencv_aruco400d.dll 1.58MB
opencv_videostab400d.dll 1.56MB
opencv_flann400d.dll 1.56MB
opencv_ximgproc400.dll 1.43MB
opencv_optflow400d.dll 1.42MB
opencv_surface_matching400d.dll 1.38MB
opencv_videoio400d.dll 1.32MB
opencv_video400d.dll 1.25MB
opencv_line_descriptor400d.dll 1.1MB
opencv_stitching400.dll 1.08MB
opencv_shape400d.dll 997KB
opencv_photo400.dll 963KB
opencv_saliency400d.dll 939KB
opencv_rgbd400.dll 908KB
opencv_face400.dll 899KB
opencv_bgsegm400d.dll 871KB
opencv_features2d400.dll 864KB
opencv_dnn_objdetect400d.dll 830KB
opencv_bioinspired400d.dll 797KB
opencv_ml400.dll 793KB
opencv_superres400d.dll 776KB
opencv_structured_light400d.dll 754KB
opencv_stereo400d.dll 737KB
opencv_objdetect400.dll 737KB
opencv_xobjdetect400d.dll 729KB
opencv_dpm400d.dll 709KB
opencv_ccalib400.dll 702KB
opencv_reg400d.dll 690KB
opencv_text400.dll 665KB
opencv_hfs400d.dll 662KB
opencv_xphoto400.dll 655KB
opencv_datasets400.dll 646KB
opencv_videostab400.dll 642KB
opencv_aruco400.dll 637KB
opencv_img_hash400d.dll 572KB
opencv_video400.dll 547KB
opencv_optflow400.dll 533KB
opencv_highgui400d.dll 533KB
opencv_flann400.dll 522KB
opencv_fuzzy400d.dll 515KB
opencv_phase_unwrapping400d.dll 510KB
opencv_videoio400.dll 509KB
opencv_surface_matching400.dll 469KB
opencv_plot400d.dll 413KB
opencv_shape400.dll 375KB
opencv_bioinspired400.dll 341KB
opencv_bgsegm400.dll 336KB
opencv_line_descriptor400.dll 325KB
opencv_saliency400.dll 317KB
opencv_superres400.dll 302KB
opencv_stereo400.dll 293KB
opencv_structured_light400.dll 273KB
opencv_reg400.dll 254KB
opencv_xobjdetect400.dll 223KB
opencv_dpm400.dll 219KB
opencv_dnn_objdetect400.dll 212KB
opencv_fuzzy400.dll 204KB
opencv_img_hash400.dll 202KB
opencv_hfs400.dll 196KB
opencv_highgui400.dll 191KB
opencv_phase_unwrapping400.dll 154KB
opencv_plot400.dll 143KB
opencv_traincascaded.exe 1.08MB
opencv_interactive-calibrationd.exe 604KB
opencv_traincascade.exe 324KB
opencv_visualisationd.exe 248KB
共 625 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7
资源评论
- 星际之空2019-09-30资源真实有效
xiamentingtao
- 粉丝: 515
- 资源: 12
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功