10 2012 档案

opengl 教程(6) 平移变换
摘要:原帖地址:http://ogldev.atspace.co.uk/www/tutorial06/tutorial06.html 在这篇教程中,我们开始对三维物体进行位置变化操作,比如平移、旋转、缩放等等。物体位置变化的操作通常都是通过矩阵来实现的,每种变化用一个矩阵表示,如果一个物体进行多种位置操作,可以把它们对应的矩阵乘起来,最后再乘以顶点的坐标,这样就可以得到物体位置变化后的... 阅读全文

posted @ 2012-10-28 09:15 迈克老狼2012 阅读(4356) 评论(1) 推荐(0) 编辑

opengl 教程(5) shader(2) uniform变量
摘要:原帖地址:http://ogldev.atspace.co.uk/www/tutorial05/tutorial05.html 在这篇教程中,我们将接触到一种新的shader变量uniform variables,这种变量和属性变量的区别:属性变量是指每个顶点shader调用时,都会根据属性的位置从顶点缓冲中装入该顶点的相应属性值,而uniform变量,则对每个dr... 阅读全文

posted @ 2012-10-28 07:23 迈克老狼2012 阅读(3029) 评论(0) 推荐(0) 编辑

opengl 教程(4) shader(1)
摘要:原帖地址:http://ogldev.atspace.co.uk/www/tutorial04/tutorial04.html 本章开始学习shader的使用,以前大家常使用OpenGL固定管线来做一些程序,shader相对来说使用较少,而现代gpu编程,shader应用少不了,虽然使用shader编程,代码多一点,但是却更灵活。 OpenGL的shader管... 阅读全文

posted @ 2012-10-27 09:51 迈克老狼2012 阅读(11366) 评论(1) 推荐(1) 编辑

OpenCL 学习step by step (9) 灰度图Histogram计算(3)
摘要:在OpenCL编程中,特别是基于GPU的opencl的编程,提高程序性能最主要的方法就是想法提高memory的利用率,它主要包括两方面的优化:一方面是提高global memory的合并读写效率,另一方面就是减少local memory的bank conflict。下面我们分析一下教程7中的代码,看看它的memory利用率如何? 首先我们用amd的opencl profil... 阅读全文

posted @ 2012-10-27 07:36 迈克老狼2012 阅读(2920) 评论(0) 推荐(0) 编辑

OpenCV中矩阵的归一化
摘要:原帖地址:http://windrocblog.sinaapp.com/?p=486 图像处理中,图片像素点单通道值一般是[0-255]的unsigned char类型,将其转化到[0,1]之间,更方便计算,这就需要用到矩阵的归一化运算。 今天,写程序中需要对某矩阵归一化,用OpenCV的cv::normalize函数,遇到很严重的问题,最后发现,normalize的原矩阵必须是... 阅读全文

posted @ 2012-10-24 07:05 迈克老狼2012 阅读(5771) 评论(1) 推荐(0) 编辑

opengl 教程(2) 在窗口画点
摘要:原文地址:http://ogldev.atspace.co.uk/www/tutorial02/tutorial02.html 通常在写OpenGL程序时候,我们都需要glew库,该库包装了OpenGL的各种扩展,便于我们使用。 我们可以在main函数中调用glew初始化函数,之后就可以查询OpenGL各种扩展能否使用了,对于能够使用的函数,可以动态的加载。 ... 阅读全文

posted @ 2012-10-23 21:05 迈克老狼2012 阅读(3407) 评论(2) 推荐(0) 编辑

opengl 教程(1) 创建窗口
摘要:本章教程内容主要来自:http://ogldev.atspace.co.uk/www/tutorial01/tutorial01.html 使用OpenGL之前,请先安装和设置好FreeGlut和glew, 下载地址: http://freeglut.sourceforge.net/ http://glew.sourceforge.net/ 原教程源码下载地址:http://og... 阅读全文

posted @ 2012-10-23 07:02 迈克老狼2012 阅读(4014) 评论(0) 推荐(0) 编辑

OpenCL 学习step by step (8) 灰度图Histogram计算(2)
摘要:现在我们利用上一篇教程的方法,来统计一副RGBA图像中有多少个像素点(该像素点满足R, G, B, A任意分量>=5)。我考虑的方法是建立256 bin的直方图,对于一个像素,求max(R, G,B,A),用该值决定该像素点进入那个bin,这样求出直方图后,width*height - hostBi 阅读全文

posted @ 2012-10-22 20:38 迈克老狼2012 阅读(1812) 评论(0) 推荐(0) 编辑

OpenCL 学习step by step (7) 灰度图Histogram计算(1)
摘要:histogram翻译成中文就是直方图,在计算机图像处理和视觉技术中,通常用histogram来进行图像匹配,从而完成track,比如meanshift跟踪算法中,经常要用到图像的直方图。 灰度图的histogram计算,首先要选择bin(中文可以称作槽)的数量,对于灰度图,像素的范围通常是[0-255],所以bin的数目就是256,然后我们循环整幅图像,统计出每种像素值出现... 阅读全文

posted @ 2012-10-22 20:22 迈克老狼2012 阅读(4543) 评论(2) 推荐(1) 编辑

cvMatND 多维数组 设置和读取像素值
摘要:原帖地址:http://shijuanfeng.blogbus.com/logs/206701809.html opencv中的多维数组——MatND的用法,因为直方图就是多维数组,所以了解一下它的基本用法,仅做收藏。 void MatNDReadAndSet(){ int M = 192; int N = 168; int K = 7; int size... 阅读全文

posted @ 2012-10-19 20:52 迈克老狼2012 阅读(1639) 评论(0) 推荐(0) 编辑

监听者-观察者模式
摘要:在C++模式设计中,常用的一种模式设计方法就是监听者-观察者模式。每个监听者对象都把自己理解的事件注册到一个中心事件处理注册库,接收到消息后,中心事件处理注册库会把该消息分发到每个监听者对象。 下面是来自于c++ profressional中的代码:首先是监听者类:Listener.h 和Listener.cpp,这是一个监听者基类,该类中定义了消息处理的纯虚函数,代码如下:#pragma onceclass Listener{public: Listener(void); ~Listener(void); virtual void handleMessage(int in... 阅读全文

posted @ 2012-10-17 19:26 迈克老狼2012 阅读(1734) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示