- 博客(6)
- 资源 (52)
- 收藏
- 关注
原创 OpenGL 图像的加载和存储
之前提到过OGL中纹理缓存是作为输入缓存存在的,这使得输入缓存能够读取但是不能够改写。为了突破这一限制,在OGL中提出了Image的概念,这使得程序员能够有效的操作texture缓存——对背后的texture缓存进行读写操作。但是,这样的操作打破了原有的pipeline流水线,使得原本应该被OGL自身进行管理的缓存需要程序员自身来进行处理,因此提供了方便的同时也增加了程序员的编程负担。为了对t
2016-05-18 10:11:39 6860
原创 OpenGL纹理贴图
OGL中纹理分为两种类型,一种是常规的纹理,另一种是缓存纹理。前者和特定的纹理类型相关联,而后者则仅仅作为输出的缓存区域,和Frame buffer object粘合的纹理就是缓存纹理。不过这两者的创建过程很相似,都是利用glGenTexture函数实现纹理ID的创建,然后利用glBindTexture将ID号绑定到指定的纹理对象上。常规纹理绑定的纹理对象是指定的纹理类型,而纹理缓存则绑定到GL_
2016-05-17 10:51:26 1476
原创 OpenGL Frame Buffer管理
OpenGL应用程序进行图形渲染都是以pipeline的方式进行处理,在其中的每一个步骤都有输入和输出,渲染的最后一步是将渲染的结果绘制到屏幕上。在绘制这一步的输出是屏幕专用的存储,输入则是Frame buffer。由于OpenGL并没有窗口处理函数,所以与窗口相关的处理都需要外部的扩展来实现,因此相应的窗口处理函数会在初始化的时候分配相应的Frame buffer,同时OpenGL会将最终渲染的
2016-05-16 17:45:18 2726
原创 OpenGL Transform feed back 粒子系统
在原来的OpenGL渲染的pipeline并没有提供较多的交互接口,当调用Draw函数之后很难再绘制过程对已经装配的图元进行修改。然而,在绘制过程中存在这样的需求,尤其是需要根据之前装配好的图元来更新随后的操作。举个简单的例子,当一个场景中存在两个相对运动的物体时,后一个物体需要根据前一个物体的运动来决定自己的运动轨迹,因此需要有一种feed back来提升交互能力。Transform feed
2016-05-11 09:11:17 1820
原创 openGL画图函数
OpenGL在画图过程中大致可以分为三步,第一步创建好对应的vertex队列,同时在适当的时机将vertex绑定到GL内部;第二步利用BUFFER_ARRAY向vertex队列提交顶点信息以便对vertex队列进行初始化;第三步则是绑定已经初始化的vertex队列,同时利用对应的画图函数进行绘制。vertex队列的生成主要利用glGenVertexArrays函数完成,其第一个参数定义需要生成
2016-05-09 11:48:51 2870
原创 VISUAL SALIENCY DETECTION BASED ON BAYESIAN MODEL
文章主要利用贝叶斯推导模型来得到显著性检测映射图。贝叶斯推导模型的计算公式如下图:后验概率的意义是,在已知当前像素点的条件下,当前像素点为显著性目标的概率。为了构建上诉贝叶斯概率模型,需要提前计算出显著性值以及得到显著性区域。稳重利用color boost方法来计算焦点检测,有效的利用角点所构建出来的凸包区域来计算大致的显著性区域。由于凸包能够很好的将图像区域分割为两个部分,也就大致得
2016-05-04 11:16:51 1343 1
蜂鸣器驱动代码
2014-07-02
cap_cam+ffmpeg
2014-05-18
sipdroid开源项目
2015-07-02
graph_segment
2014-12-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人