/*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++ constructors 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) cvResetImageROI( IplImage* image );
/** @brief Returns the image ROI.
If there is no ROI set, cvRect(0,0,image-\>width,image-\>height) is returned.
@param image A pointer to the image header
*/
C
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
操作系统为:UnionTech OS Server 20 Enterprise 处理器为: 华为鲲鹏处理器(arm架构) OpenCV(开源的计算机视觉库)是基于BSD协议,因此它可免费用于学术和商业用途。其提供C++,C,Python和Java接口,支持Windows,Linux,Mac OS,iOS和Android。OpenCV致力于高效运算和即时应用开发。因其是用优化的C/C++编写的,故其可以充分利用多核处理优势。并且还启用了OpenSL,它可以利用底层异构计算平台的硬件加速。广泛运用在世界各地,OpenCV拥有超过4.7万人的用户社区和超过1400万的下载次数。从互动艺术、矿山检查、网络地图到先进的机器人技术都有OpenCV的身影。
资源推荐
资源详情
资源评论
收起资源包目录
uos上编译上的opencv 4.5的库文件和头文件 (704个子文件)
libopencv_dnn.so.4.5.0 5.17MB
libopencv_imgproc.so.4.5.0 4.47MB
libopencv_core.so.4.5.0 4.22MB
libopencv_gapi.so.4.5.0 3.42MB
libopencv_imgcodecs.so.4.5.0 3.29MB
libopencv_xfeatures2d.so.4.5.0 2.76MB
libopencv_tracking.so.4.5.0 2.29MB
libopencv_calib3d.so.4.5.0 2.05MB
libopencv_ximgproc.so.4.5.0 1.33MB
libopencv_rgbd.so.4.5.0 1.18MB
libopencv_features2d.so.4.5.0 885KB
libopencv_photo.so.4.5.0 793KB
libopencv_stitching.so.4.5.0 779KB
libopencv_ml.so.4.5.0 767KB
libopencv_datasets.so.4.5.0 647KB
libopencv_face.so.4.5.0 578KB
libopencv_objdetect.so.4.5.0 510KB
libopencv_flann.so.4.5.0 500KB
libopencv_optflow.so.4.5.0 491KB
libopencv_video.so.4.5.0 478KB
libopencv_text.so.4.5.0 470KB
libopencv_xphoto.so.4.5.0 449KB
libopencv_aruco.so.4.5.0 428KB
libopencv_videoio.so.4.5.0 392KB
libopencv_videostab.so.4.5.0 366KB
libopencv_surface_matching.so.4.5.0 362KB
libopencv_ccalib.so.4.5.0 329KB
libopencv_bioinspired.so.4.5.0 280KB
libopencv_stereo.so.4.5.0 209KB
libopencv_shape.so.4.5.0 208KB
libopencv_saliency.so.4.5.0 200KB
libopencv_superres.so.4.5.0 194KB
libopencv_mcc.so.4.5.0 188KB
libopencv_line_descriptor.so.4.5.0 181KB
libopencv_bgsegm.so.4.5.0 162KB
libopencv_reg.so.4.5.0 144KB
libopencv_img_hash.so.4.5.0 128KB
libopencv_dpm.so.4.5.0 117KB
libopencv_structured_light.so.4.5.0 104KB
libopencv_rapid.so.4.5.0 101KB
libopencv_xobjdetect.so.4.5.0 98KB
libopencv_quality.so.4.5.0 98KB
libopencv_hfs.so.4.5.0 88KB
libopencv_fuzzy.so.4.5.0 88KB
libopencv_dnn_superres.so.4.5.0 74KB
libopencv_highgui.so.4.5.0 67KB
libopencv_phase_unwrapping.so.4.5.0 50KB
libopencv_plot.so.4.5.0 49KB
libopencv_dnn_objdetect.so.4.5.0 37KB
libopencv_intensity_transform.so.4.5.0 19KB
libopencv_dnn.so.4.5 5.17MB
libopencv_imgproc.so.4.5 4.47MB
libopencv_core.so.4.5 4.22MB
libopencv_gapi.so.4.5 3.42MB
libopencv_imgcodecs.so.4.5 3.29MB
libopencv_xfeatures2d.so.4.5 2.76MB
libopencv_tracking.so.4.5 2.29MB
libopencv_calib3d.so.4.5 2.05MB
libopencv_ximgproc.so.4.5 1.33MB
libopencv_rgbd.so.4.5 1.18MB
libopencv_features2d.so.4.5 885KB
libopencv_photo.so.4.5 793KB
libopencv_stitching.so.4.5 779KB
libopencv_ml.so.4.5 767KB
libopencv_datasets.so.4.5 647KB
libopencv_face.so.4.5 578KB
libopencv_objdetect.so.4.5 510KB
libopencv_flann.so.4.5 500KB
libopencv_optflow.so.4.5 491KB
libopencv_video.so.4.5 478KB
libopencv_text.so.4.5 470KB
libopencv_xphoto.so.4.5 449KB
libopencv_aruco.so.4.5 428KB
libopencv_videoio.so.4.5 392KB
libopencv_videostab.so.4.5 366KB
libopencv_surface_matching.so.4.5 362KB
libopencv_ccalib.so.4.5 329KB
libopencv_bioinspired.so.4.5 280KB
libopencv_stereo.so.4.5 209KB
libopencv_shape.so.4.5 208KB
libopencv_saliency.so.4.5 200KB
libopencv_superres.so.4.5 194KB
libopencv_mcc.so.4.5 188KB
libopencv_line_descriptor.so.4.5 181KB
libopencv_bgsegm.so.4.5 162KB
libopencv_reg.so.4.5 144KB
libopencv_img_hash.so.4.5 128KB
libopencv_dpm.so.4.5 117KB
libopencv_structured_light.so.4.5 104KB
libopencv_rapid.so.4.5 101KB
libopencv_xobjdetect.so.4.5 98KB
libopencv_quality.so.4.5 98KB
libopencv_hfs.so.4.5 88KB
libopencv_fuzzy.so.4.5 88KB
libopencv_dnn_superres.so.4.5 74KB
libopencv_highgui.so.4.5 67KB
libopencv_phase_unwrapping.so.4.5 50KB
libopencv_plot.so.4.5 49KB
libopencv_dnn_objdetect.so.4.5 37KB
libopencv_intensity_transform.so.4.5 19KB
共 704 条
- 1
- 2
- 3
- 4
- 5
- 6
- 8
资源评论
clever101
- 粉丝: 6030
- 资源: 168
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 【java毕业设计】留守儿童网站的设计与实现源码(springboot+vue+mysql+说明文档+LW).zip
- 图像分割,训练数据集,train-25【train-21~train-40所需积分1分】
- 【java毕业设计】积分制零食自选销售平台的设计与实现源码(springboot+vue+mysql+说明文档+LW).zip
- 利用思科模拟器进行校园网的搭建
- 图像分割,训练数据集,train-24【train-21~train-40所需积分1分】
- delphi5+存储过程+DBGridEh组件+导出Excel
- 【java毕业设计】音乐播放系统源码(springboot+vue+mysql+说明文档+LW).zip
- DLL修复工具-智能检测,全方位扫描一键自动修复
- DLL一键修复工具下载
- matio动态库,包含include、lib和bin文件夹
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功