编程语言之类型之间转换
1. QString转换String
string s = qstr.toStdString();
2.String转换QString
QString qstr2 = QString::fromStdString(s);
3.mat与qimage互转
QImage cvMat2QImage(const cv::Mat& mat)
{// 8-bits unsigned, NO. OF CHANNELS = 1if(mat.type() == CV_8UC1){QImage image(mat.cols, mat.rows, QImage::Format_Indexed8);// Set the color table (used to translate colour indexes to qRgb values)image.setNumColors(256);for(int i = 0; i < 256; i++){image.setColor(i, qRgb(i, i, i));}// Copy input Matuchar *pSrc = mat.data;for(int row = 0; row < mat.rows; row ++){uchar *pDest = image.scanLine(row);memcpy(pDest, pSrc, mat.cols);pSrc += mat.step;}return image;}// 8-bits unsigned, NO. OF CHANNELS = 3else if(mat.type() == CV_8UC3){// Copy input Matconst uchar *pSrc = (const uchar*)mat.data;// Create QImage with same dimensions as input MatQImage image(pSrc, mat.cols, mat.rows, mat.step, QImage::Format_RGB888);return image.rgbSwapped();}else if(mat.type() == CV_8UC4){// Copy input Matconst uchar *pSrc = (const uchar*)mat.data;// Create QImage with same dimensions as input MatQImage image(pSrc, mat.cols, mat.rows, mat.step, QImage::Format_ARGB32);return image.copy();}else{return QImage();}
}
4. QImage转Mat
Mat QImage2cvMat(QImage image)
{Mat mat;switch (image.format()){case QImage::Format_ARGB32:case QImage::Format_RGB32:case QImage::Format_ARGB32_Premultiplied:mat = Mat(image.height(), image.width(), CV_8UC4, (void*)image.constBits(), image.bytesPerLine());break;case QImage::Format_RGB888:mat = Mat(image.height(), image.width(), CV_8UC3, (void*)image.constBits(), image.bytesPerLine());cv::cvtColor(mat, mat, CV_BGR2RGB);break;case QImage::Format_Indexed8:mat = Mat(image.height(), image.width(), CV_8UC1, (void*)image.constBits(), image.bytesPerLine());break;}return mat;
}
5.QImage与QPixmap互转
QPainter p(this);QPixmap pixmap;pixmap.load("../image/路飞.jpg");//QPixmap->QImageQImage tempImage = pixmap.toImage();p.drawImage(0,0,tempImage);QImage image;image.load("../image/路飞.jpg");//QImage->QPixmapQPixmap tempPixmap = QPixmap::fromImage(image);p.drawPixmap(450,0,tempPixmap);
编程语言之类型之间转换相关推荐
- Linq--使用Linq在不同类型之间转换
需求: 有两个类型,分别为MyUser和YourUser,要在这两个类型之间进行转换 MyUser.cs namespace XMLSpy.Linq{ public class MyUser{ ...
- Go : 类型之间转换数字的测试(附完整源码)
Go : 类型之间转换数字的测试 package main var i8 int8; var u8 uint8; var i16 int16; var u16 uint16; var i32 int3 ...
- opencv中Mat与IplImage,CVMat类型之间转换
opencv中对图像的处理是最基本的操作,一般的图像类型为IplImage类型,但是当我们对图像进行处理的时候,多数都是对像素矩阵进行处理,所以这三个类型之间的转换会对我们的工作带来便利. Mat类型 ...
- python变量类型之间转换_【Python】Python 变量类型(变量赋值,数据类型,数据转换)...
目录 Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间.基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中.因此,变量可以指定不同的数 ...
- python变量类型之间转换_python学习笔记5—数据类型转换
数据类型转换 16进制和10进制之间转换In [18]: int('a',16) 把16进制的a转换为10进制的10,16说明a是16进制数 Out[18]: 10 In [13]: int('0xa ...
- C语言各种类型之间转换详解
目录 1. C基本类型变量 2. 符号扩展 2.1 规则一: 2.2 规则二: 2.3 规则三: 3. 零扩展 4. 长类型转换为短类型 5. 自动类型转换 5.1 赋值时的类型转换 5.2 运算时的 ...
- python变量类型之间转换_Python常用数据类型之间的转换总结
函数 描述 int(x [,base]) 将x转换为一个整数 long(x [,base] ) 将x转换为一个长整数 float(x) 将x转换到一个浮点数 complex(real [,imag]) ...
- 【MATLAB Image Processing Toolbox 入门教程六】“导入、导出和转换”之“图像类型转换Ⅰ——在不同图像类型之间转换”
[MATLAB Image Processing Toolbox 入门教程六] 1 gray2ind函数 2 ind2gray函数 3 mat2gray函数 4 rgb2gray函数 5 rgb2in ...
- 枚举类型和各种类型之间转换
//声明枚举public enum Sesons{春,夏,秋,冬}static void Main(string[] args){Sesons s = Sesons.春;string str=&quo ...
最新文章
- Spring mvc参数类型转换
- GUI可视化利器,让实时数据可视化so easy
- geoserver的api接口_geoserver REST使用
- python直接使用pyc_Pyc和pyo是怎样一种存在?
- oracle更换rac节点,Oracle-rac 更改VIP地址—2节点的
- 自动生成四则运算题目
- 《中文分词算法研究》
- python嵩天博客_Python学习第二课-MOOC嵩天
- flask—本地图片,视频上传
- 进击的UI-----------------UITableView(表视图)
- zt中俄两军炮兵的差距
- 程序员上班摸鱼,这么玩才高端!
- 9.3.2另一种计算机器2
- ffmpeg 分离视频音频流 缺失sei信息
- 如何在CTEX上对论文进行排版
- 重新测试Python读Excel文件xlsx的语言编码
- php 动态网格,ZBrush中的动态网格该怎么进行运用
- 用内存断点找OEP 问题 脱壳时提示无法读取被调试进程的内存 bad dos signature
- 金山游戏原“五虎将”今何在?
- display指定端口linux,Linux DISPLAY作用
热门文章
- boost::stl_interfaces模块实现重复字符迭代器的测试程序
- boost::multi_array模块实现在矩阵上测试切片
- boost::geometry模块实现自定义点示例
- boost::fibers模块实现适配方法调用的测试程序
- boost::enable_current_exception用法测试程序
- VTK:Utilities之AnimationScene
- VTK:PolyData之ConvexHullShrinkWrap
- VTK:图片之CombiningRGBChannels
- OpenCV用方形棋盘进行相机校准
- C语言字符串是否为pallindrome排列的算法(附完整源码)