• v0_988691
  • 2KB
  • zip
  • 0
  • VIP专享
  • 0
  • 2022-03-31 07:28
Matlab集成的c代码带有OpenCV计算机视觉 会议-正在建设中 会议大纲(草稿) 介绍-关于我自己 OpenCV开源计算机视觉库示例用例的背景知识 检测/跟踪彩球(色彩空间/ HSV) 检测人脸(无法识别人脸) 高动态范围(HDR)摄影色彩增强 Aruco标记检测/增强现实 图像拼接(全景图,“双胞胎”照片;球形与圆柱形的拼接模型) 无缝克隆 视频 OpenCV历史开源BSD许可证由Intel Research于1999年创建,于2000年首次公开发布Alpha 1.0 1.0-2006 1.1-2008年10月2.0-2009年10月(缺少更高版本的时间表) 支持的平台台式机:Windows,Linux,macOS,FreeBSD,NetBSD,OpenBSD移动版:Android,iOS,Maemo,BlackBerry 10 表现 通过英特尔的集成性能基元(如果有)进行硬件加速 基于CUDA的GPU接口 基于OpenCL的GPU接口 语言支持 C ++(OpenCV用C ++编写) 库中用于Python,Java,MATLAB的绑定 包装器可用于C#,Perl,Ch,Has
  • Computer-Vision-with-OpenCV-master
# Computer-Vision-with-OpenCV Conference session - under construction Session outline (draft) intro - about myself background about OpenCV open source computer vision library sample use cases - detect/track colored ball (color spaces / HSV) - detect faces (without recognizing them) - high dynamic range (HDR) photographic color enhancement - Aruco marker detection / augmented reality - image stitching (panoramas, "twins" photos; stitching models spherical vs. cylindrical) - seamless cloning - video OpenCV history open source BSD license created in 1999 by Intel Research first public alpha in 2000 1.0 - 2006 1.1 - Oct 2008 2.0 - Oct 2009 (missing timeline for later releases) supported platforms desktop: Windows, Linux, macOS, FreeBSD, NetBSD, OpenBSD mobile: Android, iOS, Maemo, BlackBerry 10 performance - hardware acceleration via Intel's Integrated Performance Primitives (if available) - CUDA-based GPU interface - OpenCL-based GPU interface language support - C++ (OpenCV is written in C++) - bindings in the library for Python, Java, MATLAB - wrappers available for C#, Perl, Ch, Haskell, Ruby getting started libraries come precompiled for Visual Studio for other tools, need a compiler (e.g. MinGW) and CMake (links to how to) CMake does not make the library, it makes the makefile Get an IDE (e.g. Visual Studio for VC++, Code Blocks for MinGW) Create a project, include headers, tell the linker what libraries you're using OpenCV has their own tutorials, helpful for understanding usage, parameters library structure - divided into modules - core - imgproc (image processing) - highgui (high-level GUI and media) - calib3d (camera calibration and 3D reconstruction) - feature2d (2D features framework) - video (video analysis) - objdetect (object detection) - ml (machine learning) - photo (computational photography) - gpu (hardware acceleration) - viz (visualization tool) look at a few sample library methods, explain what they do, how they are used - thresholding, to reduce to black and white create a mask this way, to isolate something in the image - "convolution" of a matrix erode, dilate, open, close to find contours, reduce noise, close holes - color space conversion from RGB to HSV or YUV simplifies the search for specific hues (e.g. colored ball) - detect lines, circles demos - track a colored ball (color space conversion to HSV, threshold a range of hues) - detect faces (Haar classifiers built into the library) - create your own twin (image stitching) - insert 3D objects into video (augmented reality using Aruco markers) common complications - "noise" in image (because light is a wave, not so much because of camera quality) strategies: remove (filter, threshold), ignore (histogram) - lighting (can affect color recognition, makes thresholding trickier) strategies: histogram equalization, more light, light oriented toward subject - occlusions - distortion from camera lens strategies: calibrate camera, call undistort method when to think about other tools - line following robot: look at Johnny Five - large point clouds: look at Point Cloud Library (PCL) or... OpenCV contributor module "structure from motion"