OpenGL和OpenCV的区别
OpenCV/OpenCL/OpenGL区别与联系:
区别
OpenGL(Open Graphics Library,开放图像库)是个定义了一个跨编程语言、跨平台的应用程序接口(API)的规格,它用于生成二维、三维图像。这个接口由近三百五十个不同的函数调用组成,用来从简单的图形比特绘制复杂的三维景象。而另一种程序接口系统是仅用于Microsoft Windows上的Direct3D。OpenGL常用于CAD、虚拟实境、科学可视化程序和电子游戏开发。特征:从数据到图像
OpenCL (Open Computing Language,开放计算语言) 是一个为异构平台编写程序的框架,此异构平台可由CPU,GPU或其他类型的处理器组成。OpenCL由一门用于编写kernels (在OpenCL设备上运行的函数)的语言(基于C99)和一组用于定义并控制平台的API组成。OpenCL提供了基于任务分区和数据分区的并行计算机制。OpenCL类似于另外两个开放的工业标准OpenGL(跨平台图形API)和OpenAL(跨平台音效API),这两个标准分别用于三维图形和计算机音频方面。OpenCL扩充了GPU图形生成之外的能力。OpenCL由非盈利性技术组织Khronos Group掌管。
OpenCV(Open Source Computer Vision Library,计算机视觉库)是一个跨平台的计算机视觉库(主要操作对象是图像)。OpenCV是由英特尔公司发起并参与开发,以BSD许可证授权发行,可以在商业和研究领域中免费使用。OpenCV可用于开发实时的图像处理、计算机视觉以及模式识别程序。该程序库也可以使用英特尔公司的IPP进行加速处理。特征:从图像到数据
联系
OpenCV是 Open Source Computer Vision Library,是从图像到数据
OpenGL是 Open Graphics Library,是从数据到图像
OpenCV主要是提供图像处理和视频处理的基础算法库,还涉及一些机器学习的算法。比如你想实现视频的降噪、运动物体的跟踪、目标(比如人脸)的识别这些都是CV的领域
OpenGL则专注在Graphics,3D绘图。
其实两者的区别就是Computer Vision和Computer Graphics这两个学科之间的区别,前者专注于从采集到的视觉图像中获取信息,是用机器来理解图像;后者是用机器绘制合适的视觉图像给人看。
OpenGL和OpenCV的区别相关推荐
- OpenGL和OpenCV
一. OpenGL OpenGL(全写Open Graphics Library)是个定义了一个跨编程语言.跨平台的编程接口的规格,它用于三维图像(二维的亦可).OpenGL是个专业的图形 ...
- Mac 配置支持 opengl 的 opencv 4.2
本教程教大家如何在Mac环境下对opencv源码进行编译,并开启opengl支持.因为配置过程及其艰辛,基本没有现成教程,希望记录下来能帮到有需要的人.其他系统的其实流程更简单 一.准备工作 open ...
- NDK OpenGL与OpenCV实现大眼萌特效
NDK系列之OpenGL与OpenCV实现大眼萌特效,本节主要是在上一节OpenGL仿抖音极快极慢录制特效视频上增加大眼萌的特效. OpenGL视频特效系列: NDK OpenGL渲染画面效果 ND ...
- OpenCV,OpenGL,DirectX三者的区别
OpenCV 算法合集,多用于图像识别,和matlab,CxImage这个两库功能相同 OpenGL 3D绘制,和direct3D做的是同一件事 DirectX 微软做的一个超大的多媒体处理合集,包括 ...
- OpenGL与OpenCV实现增强现实
该程序通过OpenCV实现对Marker的识别和定位,然后通过OpenGL将虚拟物体叠加到摄像头图像下,实现增强现实.首先来看看我们使用的Marker: 这是众多Marker中的一个,它们都被一圈的黑 ...
- android逆透视变换坐标,android – 如何使用OpenGL模拟OpenCV的warpPerspective功能(透视变换)...
我在Python和C中使用OpenCV完成了图像变形,看到可口可乐标志在我选择的角落里扭曲了: 使用以下图像: 还有这个: 我需要做到这一点,但在OpenGL中.我会: >角落里面我要映射扭曲的 ...
- WebGL和OpenGL的联系和区别
WebGL和OpenGL的区别为:性质不同.插件支持不同.用途不同. WebGL WebGL的缩写为Web图形库.它主要用于渲染二维图形和交互式三维图形.它是可以与HTML5一起使用的Javascri ...
- OpenGL和D3D的区别
(1)世界坐标系 OpenGL为右手坐标系 D3D为左手坐标系 (2)裁剪空间 OpenGL中z的范围:[-1.0, 1.0] D3D为:[0.0, 1.0] (3)shader sha ...
- java opencv yuv_JavaCV与OpenCV的区别和使用中遇到的问题
写这篇随笔的原因是因为我用了JavaCV一段时间后项目情况糟透了,可能大家很熟悉OpenCV,也有一部分人熟悉JavaCV,但是我相信真正把JavaCV用到生产上的不是太多. 我参与图片处理项目快一个 ...
最新文章
- 判断链表是否存在环(及其延伸)
- LVS原理详解(3种工作方式8种调度算法)--老男孩
- Windows 不能在 本地计算机 启动 SQL Server 。错误代码126.
- GPUImage简单说明
- Spring Cloud构建微服务架构:服务消费(Feign)【Dalston版】
- 安卓listview下拉刷新_安卓QQ内测教学,保证不让你走弯路
- python默认字体大小_python – 如何设置PIL加载的默认字体的大小,使其适合我的8×8矩阵?...
- 简单在于的acdsee 2012
- 注册商标需要多长时间
- 操作系统 第二章 进程管理
- 深度学习基础(三)—— 权值矩阵的初始化
- PC-启动慢的解决好方法!
- 常见方案 目录 1. 发现目前 WEB 上主流的视频直播方案有 HLS 和 RTMP,	1 2. 实现直播的方法有很多,但是常用的,就这几个。 3个直播协议:rtmp、rtsp、hls。 和三个端:
- html5 excel网页版,一种网页版EXCEL的实现方法与流程
- java的I/O流,开发教学第二章作业
- 五子棋PVP项目总结
- 手机屏幕按键测试软件,涨见识了——手机居然能作为维修检测工具来用!
- excel文档损坏打不开的原因是什么?
- 数据挖掘学习笔记3-贝叶斯与决策树
- 新一代iPhone后盖或将采用超级合金