博客园 - romi
uuid:6cbd1ba2-f883-4c34-aed1-30dde64a3a3e;id=719116
2014-09-17T14:49:24Z
romi
https://www.cnblogs.com/Romi/
feed.cnblogs.com
https://www.cnblogs.com/Romi/p/3329149.html
Qt txt文本中获取字符串的问题 - romi
QT对txt文本进行读写一般是采用QFile和QTextStream结合使用,在此不细说,主要说一下读取txt文本的注意事项。因为txt文本中有中文也有英文还有数字,要准确获得需要的字串可就要多一个心眼了。因为在使用QString对文本读取时,使用的是Unicode编码,这时,一个汉字占2个字节,一个字母占一个字节,一个数字占一个字节。以以下代码作为示例:QString str("我的csdn博客");str.size(); //返回值8str.left(3); //返回值 “我的c”str.mid(2,3); //返回值 “csd”从以上可以看出,QString中的成员函
2013-09-18T12:08:00Z
2013-09-18T12:08:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】QT对txt文本进行读写一般是采用QFile和QTextStream结合使用,在此不细说,主要说一下读取txt文本的注意事项。因为txt文本中有中文也有英文还有数字,要准确获得需要的字串可就要多一个心眼了。因为在使用QString对文本读取时,使用的是Unicode编码,这时,一个汉字占2个字节,一个字母占一个字节,一个数字占一个字节。以以下代码作为示例:QString str("我的csdn博客");str.size(); //返回值8str.left(3); //返回值 “我的c”str.mid(2,3); //返回值 “csd”从以上可以看出,QString中的成员函 <a href="https://www.cnblogs.com/Romi/p/3329149.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/p/3329132.html
C++ 虚函数在基类与派生类对象间的表现及其分析 - romi
近来看了侯捷的《深入浅出MFC》,读到C++重要性质中的虚函数与多态那部分内容时,顿时有了疑惑。因为书中说了这么一句:使用“基类之指针”指向“派生类之对象”,由该指针只能调用基类所定义的函数,如果要让基类的指针使用派生类中定义的函数,就将该函数定义为虚函数。但在“Object slicing与虚函数”这一小节给出了一个及其经典的例子,它指出,在向上(即向基类)强制转型时,会造成对象内容的被切割。下面用示例进行说明: 1 #include "stdafx.h" 2 #include 3 using namespace std; 4 5 class A 6 { 7 pu...
2013-09-18T12:03:00Z
2013-09-18T12:03:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】近来看了侯捷的《深入浅出MFC》,读到C++重要性质中的虚函数与多态那部分内容时,顿时有了疑惑。因为书中说了这么一句:使用“基类之指针”指向“派生类之对象”,由该指针只能调用基类所定义的函数,如果要让基类的指针使用派生类中定义的函数,就将该函数定义为虚函数。但在“Object slicing与虚函数”这一小节给出了一个及其经典的例子,它指出,在向上(即向基类)强制转型时,会造成对象内容的被切割。下面用示例进行说明: 1 #include "stdafx.h" 2 #include 3 using namespace std; 4 5 class A 6 { 7 pu... <a href="https://www.cnblogs.com/Romi/p/3329132.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/p/3329104.html
GDAL 遥感图像处理后的数据保存为图像文件的实现方法 - romi
在遥感图像处理中,GDAL库不仅能读取和处理大部分的遥感图像数据,而且还能够实现图像处理后将数据保存为图像的功能。本文就详细介绍如何将内存中的图像数据保存为.tif格式。首先,遥感数据处理完,保存在一维数组data中,图像的宽和高为width和height,图像有三个波段。在保存时要使图像的每一行对其,保证位数为32的倍数先上实现的代码,源程序如下: 1 int bytesPerLine=(width*24+31)/8;//字节对齐 2 unsigned char *data=new unsigned char[bytesPerLine*height]; 3 4 //图像处理.....
2013-09-18T11:54:00Z
2013-09-18T11:54:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】在遥感图像处理中,GDAL库不仅能读取和处理大部分的遥感图像数据,而且还能够实现图像处理后将数据保存为图像的功能。本文就详细介绍如何将内存中的图像数据保存为.tif格式。首先,遥感数据处理完,保存在一维数组data中,图像的宽和高为width和height,图像有三个波段。在保存时要使图像的每一行对其,保证位数为32的倍数先上实现的代码,源程序如下: 1 int bytesPerLine=(width*24+31)/8;//字节对齐 2 unsigned char *data=new unsigned char[bytesPerLine*height]; 3 4 //图像处理..... <a href="https://www.cnblogs.com/Romi/p/3329104.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/p/3327626.html
C++程序中调用MPI并行的批处理命令 - romi
问题来源:在使用MPI时,将程序并行实现了,运行时需要在dos窗口下输入批处理命令,以完成程序的执行。如:mpiexec -localroot -n 6 d:/mpi/pro.exe但每次这样挺麻烦的,就将批处理命令写在bat文件中,需要运行时直接双击运行bat文件即可。但使用MPI实现的程序是软件功能的一部分,需要在软件使用过程中从软件中进行调用,实现MPI的并行处理,上面的方法就不可行了,上面的方法单独用还可以,但是要将功能集成在软件中,就需要另想办法了。解决办法:system函数函数原型:int system (const char* command);该函数作用是执行系统命令,syst
2013-09-17T15:37:00Z
2013-09-17T15:37:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】问题来源:在使用MPI时,将程序并行实现了,运行时需要在dos窗口下输入批处理命令,以完成程序的执行。如:mpiexec -localroot -n 6 d:/mpi/pro.exe但每次这样挺麻烦的,就将批处理命令写在bat文件中,需要运行时直接双击运行bat文件即可。但使用MPI实现的程序是软件功能的一部分,需要在软件使用过程中从软件中进行调用,实现MPI的并行处理,上面的方法就不可行了,上面的方法单独用还可以,但是要将功能集成在软件中,就需要另想办法了。解决办法:system函数函数原型:int system (const char* command);该函数作用是执行系统命令,syst <a href="https://www.cnblogs.com/Romi/p/3327626.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/p/3327600.html
基于Qt的遥感图像处理软件设计总结 - romi
开发工具VS2008+Qt4.8.0+GDAL1.9要点 接口要独立,软件平台与算法模块独立,平台中各接口设计灵活,修改时容易。 设计软件时一步步来,每个功能逐一实现,某个功能当比较独立时可以做一个测试程序,测试无误后将功能添加到工程中。此外,在软件设计过程中,自身会想到一些功能,为了测试功能方案的可行性,可以单独做一个测试示例,测试方案是否可行,这样主动地学习可以学到很多新的知识。同时也可以增强自己解决问题的能力。软件的主线: 1.打开图像后,将影像及其含有的波段数(微波图像是极化方式)以树形结构显示在界面上,采用QTreeWidget; 2.双击某个波段或极化方式后,显示出缩略图,这里记录
2013-09-17T15:26:00Z
2013-09-17T15:26:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】开发工具VS2008+Qt4.8.0+GDAL1.9要点 接口要独立,软件平台与算法模块独立,平台中各接口设计灵活,修改时容易。 设计软件时一步步来,每个功能逐一实现,某个功能当比较独立时可以做一个测试程序,测试无误后将功能添加到工程中。此外,在软件设计过程中,自身会想到一些功能,为了测试功能方案的可行性,可以单独做一个测试示例,测试方案是否可行,这样主动地学习可以学到很多新的知识。同时也可以增强自己解决问题的能力。软件的主线: 1.打开图像后,将影像及其含有的波段数(微波图像是极化方式)以树形结构显示在界面上,采用QTreeWidget; 2.双击某个波段或极化方式后,显示出缩略图,这里记录 <a href="https://www.cnblogs.com/Romi/p/3327600.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/p/3327532.html
Qt 实现遥感图像显示时的连动效果 - romi
遥感图像处理时少不了ENVI,用过ENVI的人都知道,打开图像时或图像处理完后,在缩略图上移动鼠标时,鼠标周围的图像信息会在大的视图中实时的显示,即大图会跟着小图中的鼠标移动,这即是图像的连动效果。如下图是ENVI的示意图:在软件设计中,要实现类似ENVI中连动的效果,确实要费一番脑筋。要求:有两幅图,一个是缩略图,一个是原图或处理后的图,使用两个对话框,鼠标在小的缩略图中移动或点击时,大图中的图像实时显示出鼠标所在位置的图像。结果展示:首先给出结果展示,这样读者也好明白实现这样的功能入手点和重点在那些地方。从上图中可以看出:1.大图在移动时其实只需要控制滑动杆的位置即可,控制滑动杆的位置即设
2013-09-17T15:07:00Z
2013-09-17T15:07:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】遥感图像处理时少不了ENVI,用过ENVI的人都知道,打开图像时或图像处理完后,在缩略图上移动鼠标时,鼠标周围的图像信息会在大的视图中实时的显示,即大图会跟着小图中的鼠标移动,这即是图像的连动效果。如下图是ENVI的示意图:在软件设计中,要实现类似ENVI中连动的效果,确实要费一番脑筋。要求:有两幅图,一个是缩略图,一个是原图或处理后的图,使用两个对话框,鼠标在小的缩略图中移动或点击时,大图中的图像实时显示出鼠标所在位置的图像。结果展示:首先给出结果展示,这样读者也好明白实现这样的功能入手点和重点在那些地方。从上图中可以看出:1.大图在移动时其实只需要控制滑动杆的位置即可,控制滑动杆的位置即设 <a href="https://www.cnblogs.com/Romi/p/3327532.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/p/3327495.html
Qt 调试时的错误——Debug Assertion Failed! - romi
在VS2008中写qt程序时调试出现此问题,但在release模式下就不存在,在网上搜罗了一圈,是指针的问题。问题是这样的:需要打开两个文件,文件中数据类型是float,我使用QVector进行保存QVector data;首先初始化:data.insert(0,NULL);//第一个文件数据data.insert(1,NULL);//第二个文件数据打开第一个文件时,判断data[0]中有误数据,有的话删掉:if(data[0]){ delete [](data[0]); data.replace(0,NULL);}打开第二个文件时采取同样的处理方法。我在第一次打开第一个文件时,是没问题的..
2013-09-17T14:55:00Z
2013-09-17T14:55:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】在VS2008中写qt程序时调试出现此问题,但在release模式下就不存在,在网上搜罗了一圈,是指针的问题。问题是这样的:需要打开两个文件,文件中数据类型是float,我使用QVector进行保存QVector data;首先初始化:data.insert(0,NULL);//第一个文件数据data.insert(1,NULL);//第二个文件数据打开第一个文件时,判断data[0]中有误数据,有的话删掉:if(data[0]){ delete [](data[0]); data.replace(0,NULL);}打开第二个文件时采取同样的处理方法。我在第一次打开第一个文件时,是没问题的.. <a href="https://www.cnblogs.com/Romi/p/3327495.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/12/04/2802276.html
不是一辈子的人,不说一辈子的话 - romi
1、人生的三大错觉:手机震动、有人敲门、还有,Ta喜欢你。2、人,最不能忘记的,是在你困难时拉你一把的人;最不能结交的,是在你失败时藐视你的人;最不能相信的,是在你成功时吹捧你的人;最不能抛弃的,是和你同创业共患难的人;最不能爱的,是不看重你人格的人。3、一个人最难得的是平常心,得而不喜,失而不忧,内心宁静,则幸福常在;成而不骄,败而不馁,心灵和谐,则快乐常存。很多人之所以痛苦,在于追求错误的东西。更多人都是辛辛苦苦时,过舒服日子;舒舒服服时,过的却是辛苦日子。奋斗过后的痛苦莫过如此。4、没有哪种爱情,需要你放弃尊严作践自己,要你去受罪吃苦。爱情或许会让你不知所措,会让你嫉妒生气,会让你伤心流
2012-12-04T14:47:00Z
2012-12-04T14:47:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】1、人生的三大错觉:手机震动、有人敲门、还有,Ta喜欢你。2、人,最不能忘记的,是在你困难时拉你一把的人;最不能结交的,是在你失败时藐视你的人;最不能相信的,是在你成功时吹捧你的人;最不能抛弃的,是和你同创业共患难的人;最不能爱的,是不看重你人格的人。3、一个人最难得的是平常心,得而不喜,失而不忧,内心宁静,则幸福常在;成而不骄,败而不馁,心灵和谐,则快乐常存。很多人之所以痛苦,在于追求错误的东西。更多人都是辛辛苦苦时,过舒服日子;舒舒服服时,过的却是辛苦日子。奋斗过后的痛苦莫过如此。4、没有哪种爱情,需要你放弃尊严作践自己,要你去受罪吃苦。爱情或许会让你不知所措,会让你嫉妒生气,会让你伤心流 <a href="https://www.cnblogs.com/Romi/archive/2012/12/04/2802276.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/12/03/2800181.html
总有些瞬间,能温暖整个曾经 - romi
1.恋爱是租一个人的心,婚姻是拴一个人的心,爱情是暖一个人的心。2.不必太纠结于当下,也不必太忧虑未来;当你经历过一些事情的时候,眼前的风景已经跟从前的不一样了。3.有人说,爱上一座城,是因为城中住着某个喜欢的人。其实不然,爱上一座城,也许是为城里的一道生动风景,为一段青梅往事,为一座熟悉老宅。或许,仅仅为的只是这座城。就像爱上一个人,有时候不需要任何理由,没有前因,无关风月,只是爱了。——林徽因4.要从容地着手去做一件事,但一开始,就要坚持到底。5.当你看见一池水的时候,如果水是静止的,你就能看见月亮的倒影;如果水面摇动,月亮也就变得破碎、离散,很难看见真正的月亮。我们的思想也是这样。如果我
2012-12-03T11:15:00Z
2012-12-03T11:15:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】1.恋爱是租一个人的心,婚姻是拴一个人的心,爱情是暖一个人的心。2.不必太纠结于当下,也不必太忧虑未来;当你经历过一些事情的时候,眼前的风景已经跟从前的不一样了。3.有人说,爱上一座城,是因为城中住着某个喜欢的人。其实不然,爱上一座城,也许是为城里的一道生动风景,为一段青梅往事,为一座熟悉老宅。或许,仅仅为的只是这座城。就像爱上一个人,有时候不需要任何理由,没有前因,无关风月,只是爱了。——林徽因4.要从容地着手去做一件事,但一开始,就要坚持到底。5.当你看见一池水的时候,如果水是静止的,你就能看见月亮的倒影;如果水面摇动,月亮也就变得破碎、离散,很难看见真正的月亮。我们的思想也是这样。如果我 <a href="https://www.cnblogs.com/Romi/archive/2012/12/03/2800181.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/12/03/2800039.html
QImage对一般图像的处理 - romi
Qt中QImage类封装了对于一般图像像素级的操作,图像显示则使用QPixmap。本文说说对一般图像(常见格式,图像不大)的处理,比如将彩色图像处理为灰度图像。首先要获得源图像数据,对源图像数据进行处理,将结果保存并显示。QImage *img;//原图像QImage *grayImg;//处理后灰度图像1.获得原图像数据采用此方法即可,unsigned char *data=img->bits();//获取图像像素字节数据的首地址这里要注意,采用bits()方法的到的数据data中像素的组织形式应为ARGB,但实际调试中发现,每个像素中从字节从低到高依次是BGRA,方向刚好反过来。在处
2012-12-03T09:36:00Z
2012-12-03T09:36:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】Qt中QImage类封装了对于一般图像像素级的操作,图像显示则使用QPixmap。本文说说对一般图像(常见格式,图像不大)的处理,比如将彩色图像处理为灰度图像。首先要获得源图像数据,对源图像数据进行处理,将结果保存并显示。QImage *img;//原图像QImage *grayImg;//处理后灰度图像1.获得原图像数据采用此方法即可,unsigned char *data=img->bits();//获取图像像素字节数据的首地址这里要注意,采用bits()方法的到的数据data中像素的组织形式应为ARGB,但实际调试中发现,每个像素中从字节从低到高依次是BGRA,方向刚好反过来。在处 <a href="https://www.cnblogs.com/Romi/archive/2012/12/03/2800039.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/11/28/2791976.html
[转载]《重构-改善既有代码的设计》读书笔记 - romi
转载自:http://www.cnblogs.com/karoc/archive/2011/09/16/2179125.html#2497969。感谢原作者。坏味道特征情况及处理方式目标重复代码1.重复的表达式2.不同算法做相同的事3.类似代码同一个类的两个函数有相同表达式重复代码提取为方法相同表达式只在一个类的一个方法出现,供其他方法调用兄弟类含有相同表达式重复代码提取为方法提升方法到父类不相干类含有相同代码提取为独立类供调用过长函数1.代码前面有注释2.条件表达式3.循环 提取方法每个方法只做一件事,方法要定义完善、命名准确过大的类1.一个类中有太多实例变量2.一个类中有太多代码部分字段之
2012-11-28T01:30:00Z
2012-11-28T01:30:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】转载自:http://www.cnblogs.com/karoc/archive/2011/09/16/2179125.html#2497969。感谢原作者。坏味道特征情况及处理方式目标重复代码1.重复的表达式2.不同算法做相同的事3.类似代码同一个类的两个函数有相同表达式重复代码提取为方法相同表达式只在一个类的一个方法出现,供其他方法调用兄弟类含有相同表达式重复代码提取为方法提升方法到父类不相干类含有相同代码提取为独立类供调用过长函数1.代码前面有注释2.条件表达式3.循环 提取方法每个方法只做一件事,方法要定义完善、命名准确过大的类1.一个类中有太多实例变量2.一个类中有太多代码部分字段之 <a href="https://www.cnblogs.com/Romi/archive/2012/11/28/2791976.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/11/26/2789182.html
[转载]一个合格的程序员应该读过哪些书 - romi
转载自:http://blog.csdn.net/justjavac/article/details/7865418编者按:2008年8月4日,StackOverflow 网友 Bert F 发帖提问:哪本最具影响力的书,是每个程序员都应该读的?“如果能时光倒流,回到过去,作为一个开发人员,你可以告诉自己在职业生涯初期应该读一本, 你会选择哪本书呢?我希望这个书单列表内容丰富,可以涵盖很多东西。”很多程序员响应,他们在推荐时也写下自己的评语。 以前就有国内网友介绍这个程序员书单,不过都是推荐数 Top 10的书。其实除了前10本之外,推荐数前30左右的书籍都算经典,笔者整理编译这个问答贴,同时
2012-11-26T07:46:00Z
2012-11-26T07:46:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】转载自:http://blog.csdn.net/justjavac/article/details/7865418编者按:2008年8月4日,StackOverflow 网友 Bert F 发帖提问:哪本最具影响力的书,是每个程序员都应该读的?“如果能时光倒流,回到过去,作为一个开发人员,你可以告诉自己在职业生涯初期应该读一本, 你会选择哪本书呢?我希望这个书单列表内容丰富,可以涵盖很多东西。”很多程序员响应,他们在推荐时也写下自己的评语。 以前就有国内网友介绍这个程序员书单,不过都是推荐数 Top 10的书。其实除了前10本之外,推荐数前30左右的书籍都算经典,笔者整理编译这个问答贴,同时 <a href="https://www.cnblogs.com/Romi/archive/2012/11/26/2789182.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/11/23/2784723.html
Qt 设置窗口的最小化、最大化、关闭按钮 - romi
调用setWindowFlags方法,函数参数设置如下:Qt::WindowMinimizeButtonHint|Qt::WindowMaximizeButtonHint|Qt::WindowCloseButtonHint
2012-11-23T08:55:00Z
2012-11-23T08:55:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】调用setWindowFlags方法,函数参数设置如下:Qt::WindowMinimizeButtonHint|Qt::WindowMaximizeButtonHint|Qt::WindowCloseButtonHint <a href="https://www.cnblogs.com/Romi/archive/2012/11/23/2784723.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/11/22/2782733.html
图像拖拽 - romi
在QGraphicsView框架中实现图像拖拽,固然可以使用滑动条拖动,但是如果可以使用鼠标在图像上面进行拖动,岂不是更方便,但遥感处理软件都有这种功能嘛。要实现拖拽,首先就要获得鼠标事件,通常是按下鼠标左键,然后拖动图像,鼠标释放时拖动结束。核心的问题就是如何实现图像的移动。这里有两个思考的出发点:一个就是根据图像项在场景中的坐标;另一个就是通过改变滑动条的值。前者没有研究清楚,未实现,采用后者实现了,后者实现也简单。因为GraphicsView自身带有滑动条,所以可以设置滑动条的值来移动图像。本文使用改变滑动条的值实现,要点有两个:一是重写QGraphicsView类中的鼠标事件,二是捕捉
2012-11-22T07:28:00Z
2012-11-22T07:28:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】在QGraphicsView框架中实现图像拖拽,固然可以使用滑动条拖动,但是如果可以使用鼠标在图像上面进行拖动,岂不是更方便,但遥感处理软件都有这种功能嘛。要实现拖拽,首先就要获得鼠标事件,通常是按下鼠标左键,然后拖动图像,鼠标释放时拖动结束。核心的问题就是如何实现图像的移动。这里有两个思考的出发点:一个就是根据图像项在场景中的坐标;另一个就是通过改变滑动条的值。前者没有研究清楚,未实现,采用后者实现了,后者实现也简单。因为GraphicsView自身带有滑动条,所以可以设置滑动条的值来移动图像。本文使用改变滑动条的值实现,要点有两个:一是重写QGraphicsView类中的鼠标事件,二是捕捉 <a href="https://www.cnblogs.com/Romi/archive/2012/11/22/2782733.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/11/22/2782291.html
[转载]并行计算在基于遥感影像中的应用 - romi
转载自:http://tech.it168.com/a2010/0722/1080/000001080895.sht在众多自然灾害中地震造成的人员伤亡数量和经济损失最大,近两年来中国汶川。从少量的建筑物的结构破坏,到城市中心或者大型国家社会经济基础建筑的完全摧毁。限于当前技术水平还不能实现有效的地震灾害预报预警,只能通过开展灾后救援,安置灾民和灾后重建等手段,减少灾害带来的生命和财产损失。房屋倒塌作为城镇区域受损程度的重要标志,其数量和分布能够直接反映灾区生命财产损失的情况。因此,快速获取受灾地区房屋倒塌信息,使应急救援在地震灾害后72小时内投送到关键位置是最为紧迫的需要。 1.项目应用背..
2012-11-22T03:33:00Z
2012-11-22T03:33:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】转载自:http://tech.it168.com/a2010/0722/1080/000001080895.sht在众多自然灾害中地震造成的人员伤亡数量和经济损失最大,近两年来中国汶川。从少量的建筑物的结构破坏,到城市中心或者大型国家社会经济基础建筑的完全摧毁。限于当前技术水平还不能实现有效的地震灾害预报预警,只能通过开展灾后救援,安置灾民和灾后重建等手段,减少灾害带来的生命和财产损失。房屋倒塌作为城镇区域受损程度的重要标志,其数量和分布能够直接反映灾区生命财产损失的情况。因此,快速获取受灾地区房屋倒塌信息,使应急救援在地震灾害后72小时内投送到关键位置是最为紧迫的需要。 1.项目应用背.. <a href="https://www.cnblogs.com/Romi/archive/2012/11/22/2782291.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/11/22/2782151.html
图像缩放 - romi
针对图像的缩放,对于比较小的图像,qt中已经提供了接口,直接调用就行。但是当图像比较大时,就不能使用接口了,因为接口里面实现了图像缩放的算法,图像大时,先计算再显示,计算很耗时,所以会很卡,不适用。本文针对大图像的缩放进行说明。方法:参考google map,可以发现,显示的地图都是一层一层的,每一层的比例尺不一样,每一层的图像事先都已经保存在服务器了,用户需要哪一层直接从服务器传过来就可以了。我们这里是客户端软件,所以,每一层的图像必须自己先处理好保存起来,缩放时,需要哪一层图像直接调用图像出来显示这样就很快了。每一层图像得到的方法:高斯金字塔,最底层为原图像,往上图像的宽和高依次缩小一倍,
2012-11-22T02:46:00Z
2012-11-22T02:46:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】针对图像的缩放,对于比较小的图像,qt中已经提供了接口,直接调用就行。但是当图像比较大时,就不能使用接口了,因为接口里面实现了图像缩放的算法,图像大时,先计算再显示,计算很耗时,所以会很卡,不适用。本文针对大图像的缩放进行说明。方法:参考google map,可以发现,显示的地图都是一层一层的,每一层的比例尺不一样,每一层的图像事先都已经保存在服务器了,用户需要哪一层直接从服务器传过来就可以了。我们这里是客户端软件,所以,每一层的图像必须自己先处理好保存起来,缩放时,需要哪一层图像直接调用图像出来显示这样就很快了。每一层图像得到的方法:高斯金字塔,最底层为原图像,往上图像的宽和高依次缩小一倍, <a href="https://www.cnblogs.com/Romi/archive/2012/11/22/2782151.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/11/21/2781753.html
图像ROI显示 - romi
要实现图像的ROI显示,即选择图像中的某一区域,显示该区域的原图像。其核心的问题归纳有如下三个:①.得到缩略图像②.实现鼠标事件,获取鼠标的坐标③.将坐标转换为原图像中的坐标,从而就找到了需要的原图像数据区,将它读出来1,缩略图显示出原图缩略图的关键是找到缩小倍数,缩小倍数根据显示控件和原图像的大小决定。假设显示区的宽和高相同原则:原图像宽>高时,缩略图的宽为显示区的宽,缩略图的高通过计算得出(小于显示区的宽);反之,源图像宽<高时,则缩略图的高为显示区的高,缩略图的宽通过计算得出(小于显示区的宽)通过缩略图的大小就可以得出缩小倍数然后通过缩小倍数读出缩略图所需数据,以下是Rast
2012-11-21T15:31:00Z
2012-11-21T15:31:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】要实现图像的ROI显示,即选择图像中的某一区域,显示该区域的原图像。其核心的问题归纳有如下三个:①.得到缩略图像②.实现鼠标事件,获取鼠标的坐标③.将坐标转换为原图像中的坐标,从而就找到了需要的原图像数据区,将它读出来1,缩略图显示出原图缩略图的关键是找到缩小倍数,缩小倍数根据显示控件和原图像的大小决定。假设显示区的宽和高相同原则:原图像宽>高时,缩略图的宽为显示区的宽,缩略图的高通过计算得出(小于显示区的宽);反之,源图像宽<高时,则缩略图的高为显示区的高,缩略图的宽通过计算得出(小于显示区的宽)通过缩略图的大小就可以得出缩小倍数然后通过缩小倍数读出缩略图所需数据,以下是Rast <a href="https://www.cnblogs.com/Romi/archive/2012/11/21/2781753.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/11/21/2781655.html
图像ROI显示/缩放/拖拽总体研究 - romi
工具:Visual Studio2008,Qt4.8 VS插件,GDAL库功能:将大图像首先缩小显示,在缩小的图像中选择一块矩形区域(即ROI,感兴趣区域)显示,现实的图像可以实现缩放,鼠标拖拽,如同google map。缩略图使用QLabel,显示大图区域使用QGraphicsView 框架,因为QGraphicsView框架功能丰富,很适合用于图形图像的显示操作。步骤已使用方法如下:1.图像缩放,根据需要缩小的倍数,使用GDAL库的读取图像数据接口RasterIO读取采样的数据,显示在缩略图区2.ROI选择,实现鼠标事件(点击、释放)的获取,得到鼠标点在图像中的坐标,然后根据缩小的倍数得到
2012-11-21T14:39:00Z
2012-11-21T14:39:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】工具:Visual Studio2008,Qt4.8 VS插件,GDAL库功能:将大图像首先缩小显示,在缩小的图像中选择一块矩形区域(即ROI,感兴趣区域)显示,现实的图像可以实现缩放,鼠标拖拽,如同google map。缩略图使用QLabel,显示大图区域使用QGraphicsView 框架,因为QGraphicsView框架功能丰富,很适合用于图形图像的显示操作。步骤已使用方法如下:1.图像缩放,根据需要缩小的倍数,使用GDAL库的读取图像数据接口RasterIO读取采样的数据,显示在缩略图区2.ROI选择,实现鼠标事件(点击、释放)的获取,得到鼠标点在图像中的坐标,然后根据缩小的倍数得到 <a href="https://www.cnblogs.com/Romi/archive/2012/11/21/2781655.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/10/30/2746083.html
找工作记流水账总结 - romi
好久没写东西了,近一个多月每天都在外面跑,宣讲会笔试面试等等,整天累的跟狗一样,不过收获还是颇多的。历程:从九月下旬到现在,找工作前我其实根本就没复习过,只看过数据结构中简单的一些东西,写在我的数据结构那一类里面,都是很浅显的东西。传说中的面试必读之奇书《程序面试宝典》我压根就没看过,于是造成了我后面一系列的悲剧,所以找工作前还是有必要复习下基础的的知识,做软件开发要看的知识:C/C++或者java基础知识,网络,操作系统等,其中多线程和网络编程问的很多,基本上IT和互联网的公司中做软件的没有哪一个不用多线程和网络编程吧,可惜我这两者都不熟悉,还是在后来抽空恶补了一下,勉强知道个概念。刚开始C
2012-10-30T04:13:00Z
2012-10-30T04:13:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】好久没写东西了,近一个多月每天都在外面跑,宣讲会笔试面试等等,整天累的跟狗一样,不过收获还是颇多的。历程:从九月下旬到现在,找工作前我其实根本就没复习过,只看过数据结构中简单的一些东西,写在我的数据结构那一类里面,都是很浅显的东西。传说中的面试必读之奇书《程序面试宝典》我压根就没看过,于是造成了我后面一系列的悲剧,所以找工作前还是有必要复习下基础的的知识,做软件开发要看的知识:C/C++或者java基础知识,网络,操作系统等,其中多线程和网络编程问的很多,基本上IT和互联网的公司中做软件的没有哪一个不用多线程和网络编程吧,可惜我这两者都不熟悉,还是在后来抽空恶补了一下,勉强知道个概念。刚开始C <a href="https://www.cnblogs.com/Romi/archive/2012/10/30/2746083.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/Romi/archive/2012/09/22/2698430.html
进程死锁 - romi
进程死锁:两个或两个以上的进程在执行过程中,因为争夺资源而造成的一种相互等待的现象,若无外力作用,他们都将无法推进下去,此时系统产生死锁。产生进程死锁的4个必要条件: 互斥条件:每个资源一次只能被一个进程使用; 请求与保持条件:一个进程因请求而阻塞时,对已获得的资源保持不放; 不剥夺条件:进程已获得资源,在未使用完之前,不能强行剥夺; 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。这4个条件是发死锁的必要条件,只要发生死锁,只写条件必然成立。只要上述条件之一不满足,则不会发生死锁。死锁的避免:确定资源的合理分配算法,避免进程永久占据系统资源。此外,也要防止进程在处于等待...
2012-09-22T13:03:00Z
2012-09-22T13:03:00Z
romi
https://www.cnblogs.com/Romi/
【摘要】进程死锁:两个或两个以上的进程在执行过程中,因为争夺资源而造成的一种相互等待的现象,若无外力作用,他们都将无法推进下去,此时系统产生死锁。产生进程死锁的4个必要条件: 互斥条件:每个资源一次只能被一个进程使用; 请求与保持条件:一个进程因请求而阻塞时,对已获得的资源保持不放; 不剥夺条件:进程已获得资源,在未使用完之前,不能强行剥夺; 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。这4个条件是发死锁的必要条件,只要发生死锁,只写条件必然成立。只要上述条件之一不满足,则不会发生死锁。死锁的避免:确定资源的合理分配算法,避免进程永久占据系统资源。此外,也要防止进程在处于等待... <a href="https://www.cnblogs.com/Romi/archive/2012/09/22/2698430.html" target="_blank">阅读全文</a>