图像编程学习笔记6——图像转置
来源:互联网 发布:unity3d debug输出 编辑:程序博客网 时间:2024/06/04 19:15
转置(transpose)是指将x,y坐标对换,图2.2的转置如图2.15所示。
图2.2
图2.15 图2.2的转置
要注意的是,转置和旋转900是有区别的,不信你可以试试:怎么旋转,图2.2也转不出图2.15来。另外,转置后图的宽高对换了。转置的变换矩阵很简单:
(2.12)
镜象变换的源代码如下,因为和旋转的那段程序很类似,程序中的注释就简单一些:
由于很多代码和之前的重复,所以只给出主要功能代码(win32 控制台程序)
void transpose(){int height = bmpInfoHeader.biHeight;int width = bmpInfoHeader.biWidth;int imgSize = bmpInfoHeader.biSizeImage;//转置之后高宽变了bmpInfoHeader.biHeight = width;bmpInfoHeader.biWidth = height;memset(pNewBmpData,0,sizeof(unsigned char )*imgSize);int lineByte = (width * 8 + 31) / 32 * 4; //每行像素的字节数int newLineByte = (height * 8 + 31) / 32 * 4; //新的lineBytefor(int i = 0; i < height; i++ ){for(int j = 0; j < width; j++ ){*(pNewBmpData + (width - 1 - j)*newLineByte + i) = *(pBmpData + (height - 1 - i)*lineByte + j); //转置}}}
- 图像编程学习笔记6——图像转置
- 图像编程学习笔记3——图像旋转
- 图像编程学习笔记5——图像镜像
- 图像编程学习笔记7——图像缩放
- 图像编程学习笔记9——图像的锐化
- 图像编程学习笔记2——bmp位图平移
- Delphi图像编程学习笔记
- 图像编程学习笔记4——24位真彩色转换为灰度图像
- 图像编程学习笔记8——图像的平滑(去噪)
- halcon学习笔记——图像分割
- vba学习笔记——图像
- 图像编程学习笔记1——bmp文件结构处理与显示
- zynq-7000学习笔记(九)——frame buffer图像显示编程
- 图像处理学习笔记
- 学习笔记:图像基本知识
- 图像识别学习笔记
- GDI+图像处理学习笔记——改变图像的透明度
- GDI+图像处理学习笔记——改变图像的透明度 .
- strcpy,strcat, strcmp, atoi, itoa函数原型
- Oracle dba_tablespace_usage_metrics 视图 查看表空间 说明
- jquery如何获取当前点击的标签下标
- 内存分配(malloc/realloc/calloc区别)
- 【Project】里面有我的代码
- 图像编程学习笔记6——图像转置
- 关键字static和const的作用分析
- System_Runtime_Date_Calendar_Math-Random
- javaCV 之目标跟踪
- tomcat启动错误——IOException while loading persisted sessions
- cscope配置文件
- 四种调试 Linux 程序的情况
- 10个你闻所未闻的奇趣网站
- [android_gallery_4.0]gallery补充,加载图片机制