没有合适的资源?快使用搜索试试~ 我知道了~
27.OpenGL入门及绘制基本图形(一)1
需积分: 0 4 下载量 152 浏览量
2022-08-03
23:17:45
上传
评论
收藏 1.71MB PDF 举报
温馨提示
试读
21页
2.OpenGL安装 1.OpenGL绘制正方形 2.OpenGL绘制水壶 3.OpenGL绘制多个图形 4.OpenGL绘图代码及原理详解 1.OpenGL语
资源推荐
资源详情
资源评论
2020/2/26 写文章-CSDN博客
https://editor.csdn.net/md/?articleId=104267905 1/21
八年前,我正是通过学习OpenGL和C++,通过做“采蘑菇的小矮人”游戏,慢慢走上并爱
上了编程。回过头来,我希望通过Python和OpenGL分享一些有趣的知识,提升您的编
程兴趣,还原当时的一些记忆。
该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门、OpenCV基
础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割
等,后期结合深度学习研究图像识别、图像分类应用。希望文章对您有所帮助,如果有
不足之处,还请海涵~
前面一篇文章详细讲解了图像分类原理,并介绍基于KNN、朴素贝叶斯算法的图像分类
案例。这篇文章是介绍Python和OpenGL的入门知识,包括安装、语法、基本图形绘制
等。基础性文章,希望对你有所帮助。同时,该部分知识均为杨秀璋查阅资料撰写,转
载请署名CSDN+杨秀璋及原地址出处,谢谢!!
该系列在github所有源代码:https://github.com/eastmountyxz/ImageProcessing-Python
前文参考:
[Python图像处理] 一.图像处理基础知识及OpenCV入门函数
[Python图像处理] 二.OpenCV+Numpy库读取与修改像素
[Python图像处理] 三.获取图像属性、兴趣ROI区域及通道处理
[Python图像处理] 四.图像平滑之均值滤波、方框滤波、高斯滤波及中值滤波
[Python图像处理] 五.图像融合、加法运算及图像类型转换
[Python图像处理] 六.图像缩放、图像旋转、图像翻转与图像平移
[Python图像处理] 七.图像阈值化处理及算法对比
[Python图像处理] 八.图像腐蚀与图像膨胀
[Python图像处理] 九.形态学之图像开运算、闭运算、梯度运算
[Python图像处理] 十.形态学之图像顶帽运算和黑帽运算
[Python图像处理] 十一.灰度直方图概念及OpenCV绘制直方图
[Python图像处理] 十二.图像几何变换之图像仿射变换、图像透视变换和图像校正
[Python图像处理] 十三.基于灰度三维图的图像顶帽运算和黑帽运算
[Python图像处理] 十四.基于OpenCV和像素处理的图像灰度化处理
[Python图像处理] 十五.图像的灰度线性变换
[Python图像处理] 十六.图像的灰度非线性变换之对数变换、伽马变换
[Python图像处理] 十七.图像锐化与边缘检测之Roberts算子、Prewitt算子、Sobel算子和
Laplacian算子
[Python图像处理] 十八.图像锐化与边缘检测之Scharr算子、Canny算子和LOG算子
[Python图像处理] 十九.图像分割之基于K-Means聚类的区域分割
[Python图像处理] 二十.图像量化处理和采样处理及局部马赛克特效
[Python图像处理] 二十一.图像金字塔之图像向下取样和向上取样
[Python图像处理] 二十二.Python图像傅里叶变换原理及实现
[Python图像处理] 二十三.傅里叶变换之高通滤波和低通滤波
2020/2/26 写文章-CSDN博客
https://editor.csdn.net/md/?articleId=104267905 2/21
[Python图像处理] 二十四.图像特效处理之毛玻璃、浮雕和油漆特效
[Python图像处理] 二十五.图像特效处理之素描、怀旧、光照、流年以及滤镜特效
[Python图像处理] 二十六.图像分类原理及基于KNN、朴素贝叶斯算法的图像分类案例
文章目录
一.OpenGL入门知识
1.什么是OpenGL
2.OpenGL安装
二.OpenGL入门程序
1.OpenGL绘制正方形
2.OpenGL绘制水壶
3.OpenGL绘制多个图形
4.OpenGL绘图代码及原理详解
三.OpenGL基础知识
1.OpenGL语法
2.老式OpenGL vs 现代OpenGL
3.OpenGL绘制时钟
四.总结
一.OpenGL入门知识
1.什么是OpenGL
OpenGL(Open Graphics Library,译为“开放式图形库”) 是用于渲染2D、3D矢量图形的
跨语言、跨平台的应用程序编程接口(API)。这个接口由近350个不同的函数调用组
成,用来绘制从简单的图形元件到复杂的三维景象。OpenGL常用于CAD、虚拟现实、
科学可视化程序和电子游戏开发。
OpenGL可用于设置所需的对象、图像和操作,以便开发交互式的3维计算机图形应用程
序。OpenGL被设计为一个现代化的、硬件无关的接口,因此我们可以在不考虑计算机
操作系统或窗口系统的前提下,在多种不同的图形硬件系统上,或者完全通过软件的方
式实现OpenGL的接口。OpenGL的高效实现(利用了图形加速硬件)存在于
Windows,部分UNIX平台和Mac OS。这些实现一般由显示设备厂商提供,而且非常依
赖于该厂商提供的硬件。
2020/2/26 写文章-CSDN博客
https://editor.csdn.net/md/?articleId=104267905 3/21
OpenGL规范由1992年成立的OpenGL架构评审委员会(ARB)维护。ARB由一些对创
建一个统一的、普遍可用的API特别感兴趣的公司组成。到了今天已经发布了非常多的
OpenGL版本,以及大量构建于OpenGL之上以简化应用程序开发过程的软件库。这些软
件库大量用于视频游戏、科学可视化和医学软件的开发,或者只是用来显示图像。
一个用来渲染图像的OpenGL程序需要执行的主要操作如下:
从OpenGL的几何图元中设置数据,用于构建形状
使用不同的着色器(shader)对输入的图元数据执行计算操作,判断它们的位置、
颜色,以及其他渲染属性
将输入图元的数学描述转换为与屏幕位置对应的像素片元(fragment),这一步也
称作光栅化(rasterization)
最后,针对光栅化过程产生的每个片元,执行片元着色器(fragment shader),从
而决定这个片元的最终颜色和位置
如果有必要,还需要对每个片元执行一些额外的操作,例如判断片元对应的对象是
否可见,或者将片元的颜色与当前屏幕位置的颜色进行融合
2.OpenGL安装
作者的电脑环境为Win10+Python3.7,打开CMD调用pip工具进行安装,如下图所示。
cd C:\Software\Program Software\Python37\Scripts
pip install pyopengl
2020/2/26 写文章-CSDN博客
https://editor.csdn.net/md/?articleId=104267905 4/21
但通常安装成功之后,运行代码会报错“OpenGL.error.NullFunctionError: Attempt to call
an undefined function glutInit, check for bool(glutInit) before calling”。
据说是pip默认安装的是32位版本的pyopengl,而作者的操作系统是64位。网上很多大
牛会去 “https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyopengl” 网站下载适合自己的版
本。比如Python3.7且64位操作系统。
2020/2/26 写文章-CSDN博客
https://editor.csdn.net/md/?articleId=104267905 5/21
安装流程如下所示:
pip install D:\PyOpenGL-3.1.5-cp37-cp37m-win_amd64.whl
pip install D:\PyOpenGL-3.1.5-cp37-cp37m-win32.whl
写到这里,我们Python的OpenGL库就安装成功了!
二.OpenGL入门程序
我们首先介绍两个入门代码,然后再进行深入的讲解。
1.OpenGL绘制正方形
完整代码如下:
剩余20页未读,继续阅读
资源评论
LauraKuang
- 粉丝: 17
- 资源: 335
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功