openCV读入图片,openGL实现纹理贴图

本文结合结合openCV,openGL的优点,实现混合编程。
(1)OpenCV提供图形处理和计算机视觉方面的通用算法,读入二维图片很方便;
(2)OpenGL是跨平台的图形程序接口,它用于二维,三维图像的处理,调用方便的底层图形库。但是OpenGL读入二维图片作为纹理图比较繁琐,没有提供直接的接口;
(3)VTK主要用于三维计算机图形学、图像处理和可视化。Vtk是在面向对象原理的基础上设计和实现的,它的内核是用C++构建。VTK是基于OpenGL实现的,是一个比较上层的图形库

以下代码实现openCV读入图片,openGL实现纹理贴图,实现鼠标交互,代码在vs2010上测试通过:

#include <GL/glut.h>
#include <GL/gl.h>
#include <ctype.h>
#include "cv.h"
#include "highgui.h"

GLuint texture; //纹理图
IplImage *img;
GLfloat angle = 0.0;
unsigned char* textureImage;
static GLint spinx = 0;
static GLint spiny = 0;

//自定义函数,读入图片作为纹理图
void makeTextureImg(IplImage *image)
{
    int width = image->width;//对全局变量赋值 
    int height = image->height;  
    CvScalar s;  

    //读入彩色图
    /*textureImage = new unsigned char[width * height * 3]; 
    for (int i=0; i<height; i++) 
    for (int j=0; j
  • 4
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值