Image editing techniques and algorithms using Qt
来源:互联网 发布:apache io模型 编辑:程序博客网 时间:2024/05/17 03:51
费了好半天劲先翻译这一点。还有好多地方不明白。先弄明白这一点。继续以后的翻译。
这一篇文章我们将讨论不同的技术和算法来修改图像使用Qt.但是在这之前我们继续你必须知道一些原则处理图片。
这里主要有两种类代表一个图片在qt, QImage 和QPixmap;我们还可以使用QBitmap来处理单色图片。和QPicture 和QPainter绘图命令。
当我们画图片在一个屏幕上时QPixmap我们建议使用。因为他是很快速地一种方式去画图片,QPixmap的问题是我们不能用单个像素去读它和修改它
QImage 是最快比QPixmap 在IO操作和给我们去访问单个像素信息。这个类,我们将在本文中编辑图片。
如果你管理大图片,喜欢用相机拍照。建议使用更精简的图来展示在屏幕上。除非我们想让用户来变焦这个图片。这有两种方式来导处图片从一个文件和缩小它。
导入一张图片用QImage 或者QPixmap 和调整后;
QImage image("sample.png");
image = image.scaled(width, height);---这里的width和height你可以换成缩放后的数值。
使用QImageReader 设置目标尺寸之后导入图片进一Qimage.QImageReader不能加载一个QPximap但是很容易创建一个QPximap从一个来自己QIage用一个静态的方法。
QPximap::fromImage(QImage img).这个方法是最快的和你不需要内存必须加载完整
大小图片。
QImageReader imgReader("sample.png");imgReader.setScaledSize(QSize(width, height));QImage * image;imgReader.read(image);
每一个图像是由像素,每个像素是由3个颜色通道:红、绿、蓝、和一个alpha通道,包含透明度值(JPG和其他图像格式不支持透明)。这些渠道有0到255之间的值和黑色颜色形成当这些3颜色通道0而白色是代表当的值是2553通道。来表示一种颜色在本文中,我们将把它作为RGB(红、绿、蓝)被红色、绿色和蓝色的价值3通道。
QImage * MainWindow::greyScale(QImage * origin){ QImage * newImage =new QImage(origin->width(), origin->height(), QImage::Format_ARGB32); QRgb * line; for(int y =0; y<newImage->height(); y++){ QRgb * line =(QRgb *)origin->scanLine(y); for(int x =0; x<newImage->width(); x++){ int average =(qRed(line[x])+ qGreen(line[x])+ qRed(line[x]))/3; newImage->setPixel(x,y, qRgb(average, average, average)); } } return newImage;}
- Image editing techniques and algorithms using Qt
- Computer Animation: Algorithms and Techniques
- Image and Video Compression Techniques
- Core Techniques And Algorithms In Game Programming
- Core techniques and algorithms in game programming
- Real-time Shadow Algorithms and Techniques
- Volume 7. Graph Algorithms and Implementation Techniques
- Real-time Rendering - Shadow Algorithms and Techniques
- 【索引】Volume 7. Graph Algorithms and Implementation Techniques
- 【索引】 Volume 7. Graph Algorithms and Implementation Techniques
- 【索引】Volume 7. Graph Algorithms and Implementation Techniques
- Computer Vision:Algorithms and Applications (Image stitching)
- DATA STRUCTURES AND ALGORITHMS USING C#.
- Using Python as PDF Editing and Processing Framework
- seamless_cloning (Possion Image Editing)
- Poisson Image Editing
- Possion image Editing
- JPEG2000 Standard for Image Compression: Concepts, Algorithms and VLSI Architectures
- 建立cvs用户的步骤
- 搞定新浪分享组件
- android按钮防止重复按下
- hdu 1316 How Many Fibs?(高精度加法+ 斐波那契数)
- 如何判断windows程序是32还是64位
- Image editing techniques and algorithms using Qt
- 8月20日,看了些什么?
- WNR2200拆机图
- 20130820-J-LINK -V8掉固件,灯不亮,USB无法识别的解决办法
- POJ-1696 极坐标排序
- Java添加水印(图片水印,文字水印)
- Struts2与FCK整合 请求冲突的解决方法
- struts2 拦截器使用配置
- mysql 远程访问和绑定IP