Lnux环境下,用opencv加载纹理贴图
2011-07-21 17:41
375 查看
void makeTexImageCV(string imageName,GLuint &texName)
{
// printf("%s\n",imageName.c_str());
//creating a texture image by OpenCV functions
string temp="/home/sunbaigui/文档/MyTraining/OBJ_Loader_Candle/build/bin/";
temp=temp+imageName;
temp.erase(temp.end()-1);
IplImage* imgGrey = cvLoadImage(temp.c_str(),1);
if (imgGrey==NULL){
printf("imageName=%s\n",imageName.c_str());
exit(0);
}
//printf("cv yes\n");
glGenTextures(1, &texName);
glBindTexture(GL_TEXTURE_2D, texName);
//设置纹理参数
texImage = (unsigned char *)malloc(sizeof(unsigned char)*imgGrey->imageSize);
memcpy(texImage,imgGrey->imageData,sizeof(unsigned char)*imgGrey->imageSize);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER,
GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER,
GL_NEAREST);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB8,imgGrey->width ,imgGrey->height , 0,
GL_BGR_EXT, GL_UNSIGNED_BYTE,texImage );
}
至于怎么在Linux下使用OpenCV,这个大家可以自己到网上搜搜
{
// printf("%s\n",imageName.c_str());
//creating a texture image by OpenCV functions
string temp="/home/sunbaigui/文档/MyTraining/OBJ_Loader_Candle/build/bin/";
temp=temp+imageName;
temp.erase(temp.end()-1);
IplImage* imgGrey = cvLoadImage(temp.c_str(),1);
if (imgGrey==NULL){
printf("imageName=%s\n",imageName.c_str());
exit(0);
}
//printf("cv yes\n");
glGenTextures(1, &texName);
glBindTexture(GL_TEXTURE_2D, texName);
//设置纹理参数
texImage = (unsigned char *)malloc(sizeof(unsigned char)*imgGrey->imageSize);
memcpy(texImage,imgGrey->imageData,sizeof(unsigned char)*imgGrey->imageSize);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER,
GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER,
GL_NEAREST);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB8,imgGrey->width ,imgGrey->height , 0,
GL_BGR_EXT, GL_UNSIGNED_BYTE,texImage );
}
至于怎么在Linux下使用OpenCV,这个大家可以自己到网上搜搜
相关文章推荐
- Ogre中使用Opencv加载视频作为纹理贴图
- Ogre中使用Opencv加载视频作为纹理贴图
- OpenGL深入探索——纹理加载(ImageMagick)与贴图
- openCV读入图片,openGL实现纹理贴图
- 使用二维纹理贴图,从24位位图加载,用vertex方式绘制
- 使用glfw库将OpenCV读取到的图片作为OpenGL的背景纹理贴图
- Shader中贴图知识汇总: 漫反射贴图、凹凸贴图、高光贴图、 AO贴图、环境贴图、 光照纹理及细节贴图
- 立方图纹理与环境贴图
- Shader中贴图知识汇总: 漫反射贴图、凹凸贴图、高光贴图、 AO贴图、环境贴图、 光照纹理及细节贴图
- 地形纹理贴图处理辅助之: osg结合OpenCv实现对图像的轮廓提取、剪裁、投影及综合处理
- Shader中贴图知识汇总: 漫反射贴图、凹凸贴图、高光贴图、 AO贴图、环境贴图、 光照纹理及细节贴图
- Eclipse c++环境搭建 并加载OpenCV库 2015最新
- Shader中贴图知识汇总: 漫反射贴图、凹凸贴图、高光贴图、 AO贴图、环境贴图、 光照纹理及细节贴图
- Shader中贴图知识汇总: 漫反射贴图、凹凸贴图、高光贴图、 AO贴图、环境贴图、 光照纹理及细节贴图
- OpenGL(二十二) gluBuild2DMipmaps 加载Mip纹理贴图
- 【OpenCV入门教程之一】 安装OpenCV:OpenCV 3.0 +VS 2013 开发环境配置
- Qt Creator+MinGW+OpenCV2.3.1 开发环境搭建(windows 7 系统)
- Spring-----多环境中加载资源配置文件
- 手把手教你OPENCV FOR ANDROID 之二_ android开发环境搭建
- 多线程环境下JDBC驱动加载导致线程阻塞问题的分析、解决和深入学习