自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

sdust_dx的专栏

现在开始学习TF,NLP。前一段在做Qt,opencv的图像处理和工业相机图像检测, 学习ffmpe视频。

  • 博客(43)
  • 资源 (28)
  • 收藏
  • 关注

原创 大模型之路3:趟到了Llama-Factory,大神们请指点

各种AI工具和框架层出不穷,为开发者和研究者提供了前所未有的便利。当然了,也有困扰。尤其是对于动手能力越来越弱的中年油腻老程序员来说,更是难上加难。据说,嗯,据师弟说,说LlamaFactory凭借其独特的功能和优势,在AI领域(他所下载的代码和工具里),引起了广泛的关注(能够调试通过的)。当然,由于硬件环境的缘故,他的3个6000卡不好用,可能是有点老了吧,导致虽然能调试通过,但是运行一个开始就完了。今天,我在自己这边的环境上,也尝试了,感觉还可以。有坑是自然的。

2024-04-02 21:36:00 827

原创 大模型之路2.x:路边的小野花

大模型聊天还是很有好处的,尤其是在你不懂的地方。

2024-04-01 22:44:30 229

原创 大模型之路2:继续趟一条小路

继续趟一条大模型尝试和体验的小路,可谓是充满了曲折,当然,必不可少的还是坑。

2024-04-01 22:34:22 794

原创 大模型之路1:趟一条小路

在人工智能的浪潮中,大模型以其强大的性能和广泛的应用前景,成为了研究者和开发者们关注的焦点。个人感觉,自用的桌面电脑,最好采用14900K+4090+128G内存+液冷,相对来说性价比还是比较高的,现在192内存有点太贵了不合适。13B的模型是跑不起来的。推荐大家使用JupiterNotebook, 这样可以一次加载模型,进入的是类似PyCharm的调试状态,能节约时间,相对来说感觉好一点的。(4)在新服务器上,用的是8*A800的小型环境,之前的7B没尝试,直接上的13B,感觉十来秒就能对话。

2024-03-31 14:21:15 893

原创 充钱的任性,只能是让百度自己批(ma)自己了

百度的AI总还是差点意思啊

2024-03-27 21:48:49 469

原创 充钱也不能任性,今天用百度AI又骂街了

生成视频的时候吧,是这样的。为啥骂街呢,视频里通篇没有关羽的任何形象,仅仅出现在旁白里了。而且,两次生成的视频对比了一下,我又有了一个大胆的想法:百度这未必是文生视频,更像是把零散的视频片段资源用某种相似性给重新编排出来的。本来付费用了用4.0,感觉Chat功能还是可以的,不论是简单的代码,还是一些通用的文案,有一说一,还是可以的。翻车的一个是文生视频。这个我用了一下,浪费了半个小时,感觉似乎不是生成的视频,是通过文字将视频片段合并起来的。cao,充钱也不能任性啊,不能手贱去看百度的新功能,垃圾的一批。

2024-03-27 21:41:18 512

原创 代码分享:在py2neo中批量导入节点和关系

分享一段我自己写的代码。如果需要批量导入数据的话,希望能给大家带来一些方便。

2024-03-21 14:01:14 484

原创 关于5.x版本的Neo4j与py2neo的访问技巧

对于大多数使用py2neo与 Neo4j 数据库进行交互的应用程序来说,建议使用 Bolt 协议

2024-03-21 12:26:35 1132

原创 用好大模型,会写prompt才行,文心一言为例

总结:大数据、云计算、物联网、人工智能等新技术在石油行业中发挥着重要作用,实时数据监测可及时发现生产问题和隐患,人工智能技术可辅助勘探开发和地质研究,数据分析可了解市场需求和优化管理流程,数据标准化可增强企业合规性和监管能力。数据要素是石油企业实现数字化转型和智能化的关键支撑,通过数据收集、处理和分析,石油企业可深入了解地下储层特征、生产状况、供应链、人力和资金等情况,更好地进行决策和管理,并可通过信息流与数据流加强生态伙伴之间的联系。而且,统计的数量也不对啊,还言之凿凿一本正经。额,选择自己相信的就好。

2023-08-16 18:20:10 538 1

原创 数据要素三权可以持证了

人民网·人民数据管理(北京)有限公司针对数据要素市场,基于人民链发起并认证,打造的全国通用性数据加工权益性证书“数据资源持有权证书”、“数据加工使用权证书”、“数据产品经营权证书”

2023-07-20 14:22:55 177

原创 初读个人信息保护法

也就是说,为了新闻报道、舆论监督,比如最近频发的食堂卫生事情等,涉及的相关人属于合理的舆论监督吗?如果是证据确凿的贪腐行为,曝光的个人信息属于合理合法吗?以前只是停留在知道的层面上。我觉得这都算,这些都是应该公开的。坐在了为公众做代表(国企是代表人民管理的企业),就要接受监督,打铁尚需自身硬啊。主要就是看到了【第十三条 (五)为公共利益实施新闻报道、舆论监督等行为,在合理的范围内处理个人信息。实际上我是在找个人信息保护法中他方对个人信息进行携带、使用的说明。------------分割线---------

2023-07-02 11:52:35 143

原创 关于深度学习的几个笔记图

最近这两年发帖更少了。看深度学习,总体来说流程应该是这样的。从大的视角来看,探索是一个科学问题,研究业务上的发展方向、探索思路,结合研究理论来把先验知识组织起来,利用经验将特征分析方法、样本数据以及特征数据准备起来。重要的是特征分析,以及对机器学习或深度学习方法的设计,最好还有小范围的验证怎么收集数据,尤其是大规模的数据,然后去做特征工程、做数据集,然后建模、训练、评价等等步骤,这个步骤我看来应该就是个工程化的问题。对于小的数据集和简单的模型,应该不难解决。但是对于稍大或很大的数据集和复杂的模型

2021-10-11 17:30:35 117

原创 使用OpenCV-SIFT方法进行图像校准的方法

最近在研究一些关于岩石薄片的图像处理工作。其中一个问题是拿到了不同偏光照射条件下(不必深究原理了)的相同目标的照片,发现不同的照片是无法精确叠合在一起的,需要进行配准才行。如图所示: 由于图片的位置并不是很一致,导致直接叠加(或计算)的时候是有很大误差的。如下面所示: 直接叠加后明显错位了 OpenCV中是有这样的配准方法的。下面介绍的...

2020-04-15 11:11:40 1788

原创 从招聘信息研究人工智能的就业:1、人工智能都在哪儿?

从招聘信息研究人工智能的就业:1、人工智能都在哪儿?年底了,想必跳槽的人也躲起来。闲暇时候爬虫了某招聘的招聘信息,看看近年的人工智能相关的单位招聘情况怎么样。马上就要放寒假了,师弟师妹们最后一个学期就该找工作了。顺便给准备找工作的师弟师妹们做一点指导。(时间匆忙,也许疏漏中有所偏颇,不过总体来讲应该差不太多的,大体的方向还可以)这次总共爬取了招聘信息,地区包含了省会城市、友情加入了南方的深...

2019-01-03 15:53:23 976 1

原创 Python与C++之间的相互调用实例4: python如何调用动态库中的std::string返回值

在上一篇(3:在Python中调用C++的结构体和类 https://blog.csdn.net/sdust_dx/article/details/80612694 )中,简单写了python如何调用C++的动态库,以及简单的传参。在实际用的时候,我发现直接传递std::string 的时侯,有的时候会有问题,虽然没有具体研究到底是为什么。推测可能的问题是c_char_p 本来是指针,用来传递...

2018-12-13 10:56:53 1998 2

原创 采用OpenCV和深度学习的钢印识别

采用OpenCV和深度学习的钢印识别[这个帖子标题党了很久,大概9月初立贴,本来以为比较好做,后来有事情耽搁了,直到现在才有了一些拿得出手的东西。肯定不会太监的。好,转入正题:]原始需求:系统将使用手机等设备利用光学字符识别技术实现钻具编号自动识别,减少作业人员的工作量隐含分析:对场景本身来说,要进行人工核对(或者修改)是必不可少的,因此工作量未必是减少。但是该场景具有智能化的...

2018-09-07 12:00:59 4466 22

原创 Python与C++之间的相互调用实例3: 在Python中调用C++的结构体和类

之前在C++中写的程序,绝大多数都是用类来封装的。那么现在想要在Python中进行调用,开始的时候是个头疼的问题。经过将近一天的摸索学习,大概搞明白了一些。下面贴出来一个例子看一下。首先是C++的结构体和类:#pragma once#include <string>// 这个结构体在Python中定义后可以通用struct struHeadPose{ float ...

2018-06-07 17:41:04 3002

原创 Python与C++之间的相互调用实例2: 在Python中调用C++

python中调用C++有点麻烦,按我目前的经验,需要导出成C而且在windows下编译成dll动态库的时候,只写  extern "C"{} 是不行的。因为还要把方法输出到动态库,否则仍然还是找不到。比如我这样写的时候,仍然是不行的:     应该是动态库中无法找到相关函数的入口标识符。需要添加库导出的修饰语句。比如这样:#define C_DLL_EXPORT extern "C" __dec...

2018-06-07 13:15:32 1289

原创 Python与C++之间的相互调用实例1: 在C++中调用Python

Python与C/C++的最好交互应该是:C++为Python编写扩展模块,Python为C++提供脚本接口。如果想要在C++的项目中调用Python来丰富功能,也是可以的。本文先来介绍第一种用法。本来感觉Python与C/C++的相互调用会非常简单【事实也是如此】。但是昨天写的C++调用Python的例子中,出现了让我难以明白的Bug,折腾了很久才明白,Python文件的文件名不能随便起,最好不...

2018-06-07 08:56:34 1173 2

原创 Keras入门之三:Hello Keras on CNN with MNIST 卷积网络应用在手写数字识别

上一次说到用卷积网络实现图像处理。这一次的笔记说的是卷积神经网络的正经事儿——使用CNN来实现手写数字的识别。之前已经说过,CNN的权重带来了各种图像处理的效果,这些都可以作为图像特征来使用。因此,将标记好的训练集导入构建的CNN网络中,后面再增加全连接网络最终分类输出,就达到了识别的目的。在我的笔记本上运行的时候,记录了一些中间结果:160s/epoch 3ms/steploss: 0.03...

2018-05-25 15:43:26 712

原创 Keras入门之二:Hello Keras on CNN with Lena

这是第二个Keras的例子。是介绍了如何使用Keras构建一个卷积神经网络。通过这个例子,我之前在图像处理上固有的观念导致对卷积网络的工作原理有了稍微的误差,从而修正过来了。这种错误主要是对卷积之后网络变厚的理解,之前我总以为一个卷积核将3通道的图像卷积后仍然是3个通道。这是以前做图像处理的时候固有的想法,而不是神经网络工作的模式。神经网络的卷积实际上更多的是要从网络连接上来考虑这种卷积实现。时间...

2018-05-24 10:20:51 427

转载 Keras入门之一: Hello Keras on MNIST 第一个例子-手写数字识别

 先花一分钟介绍一下KerasKeras的好处很多人已经说过,纯Python写成的,而且支持CPU/GPU的切换,能方便的使用 CNN/RNN 搞你想要的东东。下图是Keras的功能模块结构图,十分清晰。  下面我们看一下我学习的第一个Keras 用于创建网络的学习例子。这是采用了 mnist 手写数字识别数据集原来的例子中有的地方对小白来说还不太明白,所以我...

2018-05-18 16:16:50 8083 1

原创 DeepNLP结合CRF++的简明实践笔记和WordCloud词云使用

DeepNLP大概已经出现将近1年了,之前一直没有涉及这方面的研究。最近才开始进行了一些实验性的尝试。DeepNLP = Deep Learning + NLP(Natural Language Proceing)是谷歌开源的一个自然语言处理包当常规的机器学习Machine Learning升级发展到了一定的阶段后,慢慢的被后起的深度学习Deep Learning夺势而去,并迅速发展壮大起来,...

2018-03-29 15:55:52 432

原创 Qt的纽带风格界面实现(最新的Office Ribbon风格)

Qt的纽带风格界面实现(最新的Office Ribbon风格) 之前有朋友已经做了360风格的自定义界面,非常棒,也帮助了不少开发的朋友。近期我也用Qt做了一些界面框架和风格方面的工作,主要是客户端软件采用的OfficeRibbion风格,给朋友们看一看多交流。代码和实现暂时没有提供到我的下载资源中,有兴趣的朋友请联系我或者等待一段时间。

2017-12-13 16:03:01 23496 94

原创 使用BP神经网络和图像处理 进行的 识别纺织机纱管

最近有位朋友告诉我说他们在做纺织机的纱管自动化收集。用工业相机拍照,然后识别纱管的情况,以此操作自动化设备进行自动处理。本来他们已经找了一位教授在做这个,我猜想就是这个教授把这个当课题给研究生了,以至于2年了还没结果。我就抽时间做了一个demo,顺便把从需求到实现的流程和大概的方法给大家说说。

2017-03-21 23:00:19 1155 2

原创 单例模式的指针管理工具:参数管理器-资源管理核心

这是资源管理中的一个小的分支部分,主要管理指针。关于单例模式,有许多种实现方法,有兴趣的可以参考 http://blog.csdn.net/hackbuteer1/article/details/7460019本题主要是说一下参数管理器。就是一个实例指针的管理工具,我就叫它参数管理器了。昨天在群里有人说单例的事情,还有怎么样获取一些已有的实例资源。我们的团队以前就做过一个类似的东东,所

2016-12-09 13:59:50 679

原创 BP神经网络(地震数据反推测井曲线)

最近帮朋友做了一个简单的BP神经网络,分享一下使用随机x 识别 y=sin(x)关系的例子,效果还基本不错。

2016-06-01 10:47:30 1805

原创 分享一下<快递价格查询工具>的开发

★★1、主界面: 察看到某地的快递: 左侧选择目的地,右侧选择重量, 即可察看能到达该地区的所有快递和金额★★2、分组编辑: 功能:为目的地分组编辑,可以用来批量导入快递公司信息 增加分组:右侧 + 按钮,输入分组名称 删除分组:右侧 - 按钮 为分组增加/删除省市: 从左侧选择省市,右侧选择一个分组,即可点击 >> 添加 右侧选中省市, 点击 << 可以删掉该省市 点击保存即可保存,点击取消则

2013-12-09 14:19:31 1228

原创 市场经济下不可复制的价值体现 一

笔者认为的市场经济,单个个体的价值体现即薪资制定会有两条原则:第一重要是个体劳动的重要性,第二是个体劳动(工作)的劳动量。劳动的重要性,体现在个体能力的不可复制的程度上;劳动量是劳动时间。一个人的工作越是重要,越不可复制,他的收入水平就应该越高 (根据原则2,在同样的重要水平上,谁工作的更努力、更辛苦,谁的收入也相应地升高)

2013-11-25 16:31:40 989

原创 Qt中文字实现弯曲排列和旋转效果

问怎么实现 Qt中文字弯曲排列和旋转效果, 做了一个简单的例子来说明一下.虽然功能并不高级,技术也不难,对于初学和想要实现某些特殊功能的年轻人来说分享还是很重要的。说明: 下面的代码可以运行, 但是关于外框等的具体计算是随手写上的, 无关正题.

2013-11-22 09:30:02 6379

转载 QT图形视图框架(The Graphics View Framework in QT)

首先要声明转载的地址, 搬过来主要是为了方便起见, 原地址为 http://blog.csdn.net/aladdina, 欢迎访问  图形视图框架The Graphics View Framework关键词翻译对照表:Graphics View:图形视图。Scene:场景 /场景管理器( Scene同时担负着管理场景中的对象,建立索引等工作)。Item:这里翻译为

2013-11-12 10:30:44 1677

原创 SegY地震体数据可视化分析工具

经过整理, 目前的版本为  Alpha 1.0.2 关于Qt的图形\数据访问等, 希望抛砖引玉小弟打包了一下, 暂且传上来作为大家分享的乐趣 执行文件下载地址SegY地震体数据可视化分析工具 如果那位大侠感兴趣, 可以直接调用小弟的界面, 相关的动态库\静态库\头文件都在, 还有一个实例的main.cpp 很容易调用, 欢迎分享sdk下载地址SegY地震体数据可

2013-07-25 15:17:14 3663 5

原创 SegY地震体数据可视化分析工具 开发笔记 5 数据切割和抽取

数据提取的依据是扫描信息,根据扫描结果,提取方式也分为:单炮记录、CMP/CRP、叠后3D(叠后2D的比较简单,可以用基本的方法)先介绍一下笔者对扫描信息的理解:1、单炮记录:炮号、每炮的道数, 这样可以炮号提取2、CMP/CRP:CMP号、线号、这样可以按线提取3、叠后3D:Inline号,CDP号,这样可以按inline、cdp进行提取

2013-07-24 11:23:20 4540

原创 SegY400字节卷头信息

int jobid; //001 - 004 job identification number int lino; // 005 - 008 line number (only one line per reel) int reno; //009 - 012 Reel Number short ntrpr; //013 - 014 numb

2013-07-18 21:31:31 1499

原创 SegY 数据格式的转换小结

根据SegY的标准规范, 使用工作站格式记录的SegY数据要转换为float数值, 作者写了一些合适的方法, 感兴趣的童鞋可以一起讨论下在400字节的二进制卷头中,  25-26 字节是格式编码 String strDataFormat; switch (formatIndex) { case 1: //4-byte IBM float

2013-07-18 21:28:27 6316 3

翻译 SEG-Y 记录格式(标准)

这个标准是最近弄的,和作者做SegY扫描工具时候用的稍为有点区别,见181字段开始的部分。基本是没有问题的,所以在工具中作者保留了原来的英文介绍SEG-Y 记录格式(标准)(1)卷头: 3600字节(a) ASCII 区域: 3200字节(40条记录 x 80字节/每条记录)。(b) 二进制数区域: 400字节(3201~3600)。3213~3214 字节—每个记录的

2013-07-17 14:54:10 4205 4

原创 SegY地震体数据可视化分析工具 开发笔记 4

关于开发的几段笔记.都是很基本的,很符合为初学者看看1、做好必要的设计。哪怕是用visio或pd做一个简单的包图或类图,甚至用铅笔在白纸上画一个,也要比直接来编程序好的多。2、做好必要的计划。做一个计划的目的, 一是为了明确开发的过程做到有条不紊,二是为了防止过度开发。这和设计是分不开的。像这样独立完成的小应用,编写代码的时候,总是会有更好的主意,但最好不要想着把所有的好主意都实现出来

2013-07-17 11:55:10 2964 2

原创 SegY地震体数据可视化分析工具 开发笔记 3

现在来介绍一下功能。使用的是支持当前单个文件,没有中文路径的要求,目前是在win7和xp下进行测试。 左边栏为3个大按钮,引导进入浏览、扫描、切割界面。打开后即进入浏览界面,选择SegY文件后将信息显示在界面上。首先是卷头。SegY的3200字节卷头有ASCII和EBCDIC两种编码,初学的童鞋要注意。SegY的总道数、采样点数、采样间隔、编码格式都显示在右侧,这些在卷头中是有

2013-07-16 18:22:13 3979 7

原创 SegY地震体数据可视化分析工具 开发笔记 2

经过几天的准备,已经基本实现了所要的功能。先来介绍一下基本的架构。 在1 (http://blog.csdn.net/sdust_dx/article/details/9312019)中已经说了基本的类图结构, 实现的时候也基本按照这样的模式来做的。Qt+VS2008 来实现的。UI 部分如下,在主界面上创建浏览、扫描、切割3个子界面,由于功能较多,因此在浏览、扫描时使用了很多Tab页

2013-07-16 17:47:20 3293 3

原创 SegY地震体数据可视化分析工具 开发笔记 1

要简单地浏览SegY数据体,比如分析数据、查看线道号等关键内容,我以前常用的是IHS提供的一个小工具——SegY Viewer来个图更亲切一些。 打开以后是这样文件夹下所有的SegY都在列表中显示比较方便,不过卷头只能显示EBCDIC格式,文本的却没有显示二进制卷头内容没有显示,这个也倒不是太重要道头信息标准的2/4字节和扫描,能显示道数据和剖面 一直在做SegY数据相

2013-07-12 16:05:40 4182 2

core-Neo4j (py2neo版)

用来做Neo4j的功能 将py2ne的一些功能进行了包装,这样就更方便使用了。 这是早期写的python代码,虽然经过项目整理过一次,仍有不足之处,请多指正。 def getNode(labels, propertys) ''' # 找到节点 # @labels 本体(类型)标签,labels=[] # @propertys 节点的属性 propertys = {strKey:value} ''' def getNode_Mul(labels, propertys, limit=0) ''' # 找到多个节点 # @labels 本体(类型)标签,labels=[] # @propertys 节点的属性 propertys = {strKey:value} # 如果不需要 property 约束,则应该输入 {} ''' 等等

2024-03-29

QRibbionGUI.rar

界面重构了一个RibbonWidget(请自动忽略代码类图中的拼写错误), 所有的功能集中在Mainwindow中显示,包含了上面看到的各种资源。 Ribbon的风格,则体现在三个主要的部分: 标题栏、菜单栏和工具栏。构建了这三个以后,一定要体现“分组”的概念,这样才能尽显纽带的风采。

2020-06-16

QtitanRibbon4.12.0 支持vs2015

怎么不能0资源分共享了呢? 资源是QtitanRibbon4.12.0 支持vs2015, 直接安装即可,推荐Qt5.7以上,需要设置Qmake.exe 因此要先做好Qt环境

2017-08-16

资源管理核心-参数管理器

C++编写的 单例模式的 参数管理器 关于软件平台性的资源管理核心的其他内容将继续丰富中,后续会更新。当前的库最好只使用参数管理器这部分。 用起来非常简单,三行代码:一行注册,一劳永逸;一行存入;一行获取,可以全局获取、随时随地。 例子: Dialog* tDlg = new Dialog; tDlg->setTitle("testParam"); // 构造一个对话框做例子 REGIST_OBJECT(CoreParamManager); //将参数管理器注册到核心中 CoreParamManager* tParam = GET_COREOBJECT(CoreParamManager);//获取参数管理器 tParam->addParam("dlg", tDlg); //向参数管理器中添加参数 addParam(参数名称, 参数指针) Dialog* tDlg2 = SYS_PARAM_GET_PARAMETER(Dialog, "dlg"); //从参数管理器中获取参数 SYS_PARAM_GET_PARAMETER(类型,参数名称) tDlg2->exec(); //使用参数

2016-12-09

bp网络头文件和Lib库

一个BP网络 内含头文件和lib库, 32位win7下vs2008编译 使用情况请反馈,谢谢

2016-06-01

快递价格查询工具

快递价格查询工具

2013-12-09

SegY地震体数据可视化分析工具 C++库

使用Qt开发的C++ 功能库, 欢迎提出宝贵意见 关于动态库的功能, 请参看 SegY地震体数据可视化分析工具 开发笔记 1 http://blog.csdn.net/sdust_dx/article/details/9312019 SegY地震体数据可视化分析工具 开发笔记 2 http://blog.csdn.net/sdust_dx/article/details/9345091 SegY地震体数据可视化分析工具 开发笔记 3 http://blog.csdn.net/sdust_dx/article/details/9345471 SegY地震体数据可视化分析工具 开发笔记 4 http://blog.csdn.net/sdust_dx/article/details/9350171

2013-07-25

SegY可视化分析工具

功能简介 ------------------------------------------------------------ ★★1 数据浏览 显示SegY总道数,采样点数,采样间隔,数据格式 (1)文本卷头查看 ASCII 和 EBCDIC 格式可切换 (2)二进制卷头查看 (3)单道数据查看 根据道号选择或拖动,道头2字节/4字节可切换查看,可查看道数据和波形 ☆☆ 新增功能 ☆☆ (4)道数据察看扩展为道头/道数据 两个Tab页面,增加道头的标准注视以供参考,增加数据频谱图和相位谱图 ★★2 数据扫描 (1)道头2字节/4字节可切换查看,可选择仅扫描道头或全部扫描 (2)单炮记录扫描: 扫描炮号、对应道集 (3)CMP/CRP道集扫描 : 扫描CMP/CRP号、对应道集 (4)叠后地震体扫描 设置inline CDP X Y Z 比例因子, 选择2D / 3D, 即可扫描侧线和对应道集 ☆☆ 新增功能 ☆☆ 道数据察看扩展为道头/道数据 两个Tab页面,增加道头的标准注视以供参考,增加数据频谱图和相位谱图 (5)增加中间结果显示 (6)增加进度显示,可以取消扫描 ★★3 数据切割 (1)设置开始道、结束道和道间隔, 开始采样点、结束采样点和采样点间隔 (2)显示选取范围在数据文件中的位置 (3)单击“开始”即可抽取道集保存为新的SegY文件 ☆☆ 新增功能 ☆☆ (1)数据提取设置修改,按道提取、单炮记录、CMP/CRP、叠后3D 共4个选项 (2)单炮记录、CMP/CRP、叠后3D 的数据提取必须在数据扫描后才能完成,有提示对话框进行提醒 bug修改: 1、修改1.0.1版本数据非法时波形绘制错误导致崩溃的问题 2、修改1.0.1版本数据切割错误问题

2013-07-25

Qt 坐标轴控件

该控件继承QWidget, 实现了左右上下四种形式的坐标轴控件。 可以设置固定间隔或自动选择间隔 可以设置最小间隔 开放一个槽来动态调整坐标轴的范围 处理了边缘刻度的显示 /************************************************************************ * 版权所有 (C) 2012-2015, [email protected] 类声明: 坐标轴控件 ************************************************************************/ /** @brief 坐标轴控件 * * @details 坐标轴控件 只有刻度和数字,数字可以隐藏(用来显示其他需要显示的刻度值) */ class uiAxis : public QWidget { Q_OBJECT public: /** @brief 坐标轴类型 * * @details 坐标轴类型 */ enum AXISTYPE{ LEFT_AXIS = 0, TOP_AXIS, RIGHT_AXIS, BOTTOM_AXIS }; /** @brief 构造函数 */ uiAxis(AXISTYPE type = BOTTOM_AXIS, QWidget *parent = 0); /** @brief 析构函数 */ ~uiAxis(void); /** @brief 设置坐标轴的范围 */ void setScop(double minValue, double maxValue); /** @brief 获取坐标轴的范围 */ void getScop(double& minValue,double& maxValue); /** @brief 获取坐标轴的范围 */ double getMinValue(); double getMaxValue(); /** @brief 设置坐标轴的类型 */ void setAxisType(AXISTYPE type); /** @brief 坐标轴的类型 */ AXISTYPE getAxisType(); /** @brief 设置最小刻度(小刻度的最小间隔) */ void setMinInterval(double value); /** @brief 设置自动间隔 */ void setAutoScale(bool val=true); /** @brief 设置固定间隔 */ void setSettedScale(bool val=true); /** @brief 设置坐标轴的绘制范围, 像素值 */ void setBoundary(int left, int right, int top, int bottom); void getBoundary(int& left, int& right, int& top, int& bottom);

2013-05-07

Qt Asistant 4.7.2 已集成环境

Qt Asistant 版本:4.7.2 在包里已集成Qt必要的运行环境,可以在Windows下直接使用该帮助文档。为各位朋友做到即解即用。 祝大家分享快乐

2012-04-09

wpf地震体浏览工具(源码)

以前用wpf写的地震体浏览工具,还有不完善的地方,借以抛砖引玉。 欢迎交流。 namespace WpfPtest { /// <summary> /// Interaction logic for Window1.xaml /// </summary> public partial class Window1 : Window { private CA_SegY.CSegY m_CSegy = new CA_SegY.CSegY(); //private CA_SegY.CSegYScanner m_CSegyScan = new CA_SegY.CSegYScanner(); public Window1() { InitializeComponent(); } private void BtnOpenFile_Click(object sender, RoutedEventArgs e) { OpenFileDialog openSegyFile = new OpenFileDialog(); openSegyFile.ShowDialog(); text_SegyFilePath.Text = openSegyFile.FileName; // string strValue = m_CSegy.GetProtectedStr(); // string strValueTest = m_CSegyScan.GetProtectedStr(); // strValueTest = m_CSegyScan.getValue(); m_CSegy.SetSegyFile(openSegyFile.FileName); m_CSegy.OpenSegyFile(); // m_CSegyScan.SetSegyFile(openSegyFile.FileName); // m_CSegyScan.OpenSegyFile(); ShowSegyFileHeader(); } private void BtnExit_Click(object sender, RoutedEventArgs e) { Close(); } private void ShowSegyFileHeader() { if (null == m_CSegy) { return; } ShowSegyEbcdicHeader(); ShowSegyBinaryHeader(); //ShowSegyTraceInfo(1); } private void ShowSegyEbcdicHeader() { if (null == m_CSegy) { return; } string strEbcdic = ""; strEbcdic = m_CSegy.GetSegyEbcdicHeader(); richTextBox1.AppendText(strEbcdic); } private void ShowSegyBinaryHeader() { if (null == m_CSegy) { return; } CA_SegY.c_SEGYBinary_Header segyBinaryHeader = new CA_SegY.c_SEGYBinary_Header(); segyBinaryHeader = m_CSegy.GetSegyBinaryHeader(); txtSamples.Text = (segyBinaryHeader.hns).ToString();//hns txtSampleRate.Text = (segyBinaryHeader.hdt).ToString() + "ms"; txtTraces.Text = (m_CSegy.GetTracesCount()).ToString(); txtFormatCode.Text = m_CSegy.GetUnitType().ToString(); labelMax.Content = txtTraces.Text; slider1.Maximum = m_CSegy.GetTracesCount(); slider1.Minimum = 1; CoustomSegyBinaryHeader segybinaryheader = new CoustomSegyBinaryHeader(); segybinaryheader.AddInfo("1-4", (segyBinaryHeader.jobid).ToString(), "作业标识号"); segybinaryheader.AddInfo("5-8", (segyBinaryHeader.lino).ToString(), "测线号"); segybinaryheader.AddInfo("9-12", (segyBinaryHeader.reno).ToString(), "卷号"); segybinaryheader.AddInfo("13-14", (segyBinaryHeader.ntrpr).ToString(), "道数"); segybinaryheader.AddInfo("15-16", (segyBinaryHeader.nart).ToString(), "辅助道数"); segybinaryheader.AddInfo("17-18", (segyBinaryHeader.hdt).ToString(), "采样间隔"); segybinaryheader.AddInfo("19-20", (segyBinaryHeader.dto).ToString(), "野外记录间隔"); segybinaryheader.AddInfo("21-22", (segyBinaryHeader.hns).ToString(), "每道样点数"); segybinaryheader.AddInfo("23-24", (segyBinaryHeader.nso).ToString(), "野外记录道的样点数"); segybinaryheader.AddInfo("25-26", (segyBinaryHeader.format).ToString(), "数据格式码"); segybinaryheader.AddInfo("27-28", (segyBinaryHeader.fold).ToString(), "CMP覆盖次数"); segybinaryheader.AddInfo("29-30", (segyBinaryHeader.tsort).ToString(), "道分选码"); segybinaryheader.AddInfo("31-32", (segyBinaryHeader.vscode).ToString(), "垂直叠加码"); segybinaryheader.AddInfo("33-34", (segyBinaryHeader.hsfs).ToString(), "起始扫描频率"); segybinaryheader.AddInfo("35-36", (segyBinaryHeader.hsfe).ToString(), "终止扫描频率"); segybinaryheader.AddInfo("37-38", (segyBinaryHeader.hslen).ToString(), "扫描长度"); segybinaryheader.AddInfo("39-40", (segyBinaryHeader.hstyp).ToString(), "扫描类型码"); segybinaryheader.AddInfo("41-42", (segyBinaryHeader.schn).ToString(), "扫描通道的道号"); segybinaryheader.AddInfo("43-44", (segyBinaryHeader.hstas).ToString(), "有斜坡时,为起始斜坡长度(斜坡起始于时间零,使用时间为该长度)。以 ms 表示。"); segybinaryheader.AddInfo("45-46", (segyBinaryHeader.hstae).ToString(), "终了斜坡长度(终了斜坡起始于扫描长度减终了斜坡长度)。以 ms 表示。"); segybinaryheader.AddInfo("47-48", (segyBinaryHeader.htatyp).ToString(), "斜坡类型"); segybinaryheader.AddInfo("49-50", (segyBinaryHeader.hcorr).ToString(), "相关数据道"); segybinaryheader.AddInfo("51-52", (segyBinaryHeader.bgrcv).ToString(), "二进制增益恢复"); segybinaryheader.AddInfo("53-54", (segyBinaryHeader.rcvm).ToString(), "振幅恢复方式"); segybinaryheader.AddInfo("55-56", (segyBinaryHeader.mfeet).ToString(), "测量系统"); segybinaryheader.AddInfo("57-58", (segyBinaryHeader.polyt).ToString(), "脉冲信号极性"); segybinaryheader.AddInfo("59-60", (segyBinaryHeader.vpol).ToString(), "可控震源 地震信号滞"); segybinaryheader.AddInfo("61-62", (segyBinaryHeader.traceNum).ToString(), "总道数"); segybinaryheader.AddInfo("69-70", (segyBinaryHeader.sampletype).ToString(), "数据域(性质):0-时域,1-振幅,2-相位谱"); segybinaryheader.AddInfo("271-400", "", "没有确定,选择使用 "); ListViewBinary.ItemsSource = segybinaryheader; } private void ShowSegyTraceInfo(int iNo) { if(null == m_CSegy) { return; } CA_SegY.c_SEGYTrace_Info segyTraceHeader = new CA_SegY.c_SEGYTrace_Info(); float[] segyTraceData = new float[m_CSegy.GetTraceSample()]; if (!m_CSegy.getTraceInfo(iNo, ref segyTraceHeader, segyTraceData)) { return; }

2011-10-12

wpf写的地震体浏览工具Demo(*.exe)

以前用wpf写的地震体浏览工具Demo,分享给大家. 也可以下载另一个资源(源码资源)

2011-10-12

matlab写的子波提取例子 wavelete

分享一下以前写的子波提取的例子。 打开*.dat文件可以获取到数据 % % % testExtrectWavelet clear; mat = loadMat; temp_max = max( mat(:) ); % subplot(2,1,1); imshow(mat,[]); [row,col] = size( mat ); value_max = zeros(1, col); %最大值 value_fft_max = zeros(1, col); %频域变换后的最大值

2011-10-12

matlab 写的 Gabor2D方法

function g=gabor2D(x,y,dx,dy,f0,theta) % % Gabor = gabor2D(row, column, x0, y0, dx, dy) % % x,y为长和宽,dx,dy分别是沿x和y方向的gauss分布的标准差(长短轴),theta是旋转角度 % % f0 为波长 gabor2D = zeros(x, y); m0=round(.5*x); n0=round(.5*y); M=x+m0; N=y+n0;

2011-10-12

CGAL Install Doc 帮你安装

Installing CGAL and related programs on Windows operating system If you were looking for the previous version of this page (CGAL 3.4, Boost 1.38, QT 4.5) please follow this link. The following section explains how to install CGAL 3.7 with Boost 1.44 with QT4.7.1 on Windows XP SP3 32-bit/ Windows 7 32-bit with Visual Studio 2008 Express.

2011-10-12

CGAL-3.9 Release

最新的CGAL3.9,Release版,近2个小时才下载下来的。 分享给热爱科学计算、几何计算的朋友们。

2011-10-12

CComplex C#写的一个复数结构

CComplex C#写的一个复数结构 定义了复数的数据结构和基本运算, 为傅立叶变换\希尔伯特变换等提供了很好的支持. 希望对有兴趣的朋友一些支持,欢迎交流 using System; /* * Copyright Leon SDUST : [email protected] * 文件名称: CComplex.cs * 功能描述: 定义复数及复数的基本运算,所有成员使用double * 作者: Leon * 创建时间: 2009年12月16日 */ public class CComplex { #region Private Members private double m_Real; private double m_Imag; #endregion #region 构造函数 // 不涉及纯虚数的概念 public CComplex() // 构造即初始化,防止出错 { setReal(0); setImag(0); } public CComplex(double tReal, double tImag) // 用实部\虚部初始化 { setReal(tReal); setImag(tImag); } public CComplex(CComplex tComplex) //用已有的复数初始化 { setReal( tComplex.real() ); setImag( tComplex.imag() ); } #endregion #region Public Methods public void setReal(double tReal) { m_Real = tReal; } public void setImag(double tImag) { m_Imag = tImag; } public double real() { return m_Real; } public double imag() { return m_Imag; } public double abs() { return Math.Sqrt(m_Real*m_Real + m_Imag*m_Imag); } public CComplex conjugate() //共轭 { CComplex newCom = new CComplex(m_Real, -m_Imag); return newCom; } #endregion #region 运算符重载

2011-03-31

matlab同态滤波

如有错误的地方,欢迎批评指导 % 同态滤波 image为输,可以是灰度图\彩色图, y 为输出的灰度图 % 对于RGB格式的彩色图,目前仅仅根据三个分量分别进行同态而叠加得到的结果,要更好的结果应该转换成其他方式 % D0是同态系数,与image的尺寸有关,参考取 image.row()/4 function y = tongtai( image, D0 ) % % [filename, pathname] = uigetfile('*.jpg;*.tif; *.bmp', 'Pick an BMP-file');%读入图像 % image = imread( [pathname,filename] );

2010-11-30

苹果脚本语言<苹果脚本跟我学>

《苹果脚本跟我学》, 中文翻译版,内容不错,浅显易懂较全面。 是一本挺好的一边看一边实践的电子书。 对于刚接触苹果脚本语言的同学来说很合适。

2010-11-30

边界跟踪提取程序 Qt&C++代码

/***************************************************************** * Copyright (C) 2010 SDUST STUDIO 版权所有 * * 如果您在本代码的基础上进行改进或修改,请花费您宝贵的1分钟给作者发送一个附件,以进行交流,谢谢 * 欢迎与作者联系交流 * * 文件名称: .cs * 功能描述: * 作者: Leon * 创建时间: [10/29/2010 Leon] * 前景为白(1,或非零), 背景为黑(0); 仅对第一块连续的区域进行外边界标记, 有两种方式可以选择:短边界序列和完全边界序列 短边界是化简后的结果,标记了一些关键点,将这些关键点用直线连接,即得到边界线 目前完成的是8邻域,4邻域用到的情况较少,朋友们可以自己比照着8邻域来完成。 * 修改记录: * 修改人: *********************************************************************/ #include <QList> #include <QPoint> class CTrackBoundary { public: CTrackBoundary(void); ~CTrackBoundary(void); enum TrackType {Four, Eight}; // 4-邻域, 8-邻域 int row() { return m_Row; } int column(){ return m_Coulumn; } QList<QPoint> getBoundaryList() { return m_Boundary; } QList<QPoint> getShortBoundaryList() { processBoundary(); return m_ShortBoundary; } // 获取只有边界的矩阵 int** getBoundaryMatrix() { return m_isBoundary; } void setTrackType(TrackType tType) { m_Type = tType; } // 定义场景矩阵 void setMatrix(double**tMat, int iRowCount, int iColCount); void setMatrix(int iRowCount, int iColCount); void setMatrixItem(double value, int iRow, int iCol); // 执行搜边界 void action(); private: TrackType m_Type; int m_Row; int m_Coulumn; double** m_Mat; int** m_isBoundary; // 起点为6,终点8, 其余6 QList<QPoint> m_Boundary; QList<QPoint> m_ShortBoundary; int m_Four[4]; int m_Eight[8]; // 初始化矩阵 void initMatrix(); void clear(); // 计算邻域中某序号对应的偏移 void Num2XY(const int tNumber, int& dX, int& dY); void XY2Num(int& tNumber, const int dX, const int dY); // 查找第一个点的 iRow 和 iCol bool findStart(int& iRow, int& iCol); // 看(iRow, iCol)点是否是边界 int checkBoundray(int iRow, int iCol); int findNextBoundray(const int iRow, const int iCol, const int iStart, int& nRow, int& nCol); int findNextBoundray_Four(const int iRow, const int iCol, const int iStart, int& nRow, int& nCol); int findNextBoundray_Eight(const int iRow, const int iCol, const int iStart, int& nRow, int& nCol); bool atEnd(int iRow, int iCol); // 化简边界 void processBoundary(); };

2010-11-29

OSinstall for Mac 10.6.2

有装mac的朋友可以测试一下,我根据网上的提示自己改的。

2010-11-07

excel与GSM短信猫的Demo

用Qt做的界面, C++开发, 能够适合对多数的GSM短信猫进行二次开发. 这里仅将Demo发布出来, 以供大家参考和批评. 如果有好的建议, 大家相互交流一下. 原本的主要目的: 将Excel中的内容用短信猫发送出去,并接收信息对Excel进行修改. 或者使用Access或其他DB. 菜单仅作参考, 多数未定义功能. 界面按钮的Excel相关功能已经提供了一些, 其他的仅弹出提示对话框,提示应该实现的功能. 如果需要下载Qt环境, 请到http://download.csdn.net/source/2476334

2010-10-29

Advanced_Qt_Programming: Qt 高级编程(英文)

很好的一本书,共大家参考交流 List of Tables . ........................................................................................... xiii Foreword . .................................................................................................. xv Introduction . ............................................................................................. 1 Chapter 1. Hybrid Desktop/Internet Applications . .............................. 5 Chapter 2. Audio and Video . ................................................................ 53 Chapter 3. Model/View Table Models . ................................................ 87 Chapter 4. Model/View Tree Models . ................................................... 129 Chapter 5. Model/View Delegates . ...................................................... 185 Chapter 6. Model/View Views . ............................................................. 207 Chapter 7. Threading with QtConcurrent . ............................................ 245 Chapter 8. Threading with QThread . .................................................... 287 Chapter 9. Creating Rich Text Editors . ................................................... 317 Chapter 10. Creating Rich Text Documents . ....................................... 359 Chapter 11. Creating Graphics/View Windows . ................................... 389 Chapter 12. Creating Graphics/View Scenes . .................................... 409 Chapter 13. The Animation and State Machine Frameworks . ............ 469 Epilogue . .................................................................................................. 491 Selected Bibliography . ........................................................................... 495 Index . ........................................................................................................ 499

2010-10-14

C++ 读取bmp图片示例程序

功能: 读取bmp 代码示例: typedef struct _bmpsize { long bmpWidth;//位图宽,单位为象素LONG=long(有符号) long bmpHeight;//位图高,单位为象素LONG=long(有符号) unsigned short BitCount;//每个象素所占用的比特位WORD=unsigned short long BytesPerLine;//位图每行数据所占的字节数LONG=long(有符号) bool operator ==(_bmpsize bs) { if(bmpWidth==bs.bmpWidth && bmpHeight==bs.bmpHeight && BitCount==bs.BitCount /*&&BytesPerLine==bs.BytesPerLine*/) return true; else return false; } bool operator !=(_bmpsize bs) { return !(*this==bs); } }BMPSIZE, *LPBMPSIZE;//位图大小信息 class scBmp { public: scBmp(); virtual ~scBmp(); BITMAPFILEHEADER GetBmpFileHeader() const {return m_bmfHeader;}; const char * GetFileName() const {return m_pFileName.GetDataPointer();} BITMAPINFO * GetBmpInfo() const {return (BITMAPINFO *)m_pbi.GetDataPointer();} BMPSIZE GetBmpSize() const {return m_bmpSize;} // scFdmtlType * GetPixels() {return &m_pixels;} scBYTE * GetPixels() {return &m_pixels;}

2010-09-01

QT绘图工具代码 figuer->imshow plot

Qt实现的绘图工具, 类似Matlab的Figuer命令, 有imshow plot 等命令,绘制2D或曲线

2010-08-03

Qt制作的ASCII转Las测井曲线的小工具

ASCII 转 las格式的测井曲线 注: las中的第一列往往写成DEPT,而有的ASCII或者txt中的第一列写成DEP或DEPTH,应用中如果有此问题,需要手动改正该列的名称. 工具的使用: 界面上基本已经描述得很清楚了. 1\单击浏览,选择好文件路径 2\选择分隔符或定长,定长时,可以使用shift配合鼠标进行字段长度的度量 3\单击"分隔预览", 井号\起始\结束\步长 都会自动读取,用户编辑井号,这些将写入las 4\指定数据的开始行, ASCII里的列名称行业需要指定 OK

2010-07-05

C++编写的傅立叶算法FFT1D2D

C++编写的傅立叶算法FFT 包含复数类和傅立叶变换两个部分 欢迎交流

2010-06-25

Qt动态库 Qt环境

Qt的动态链接库 建议解压缩到C:\Qt\bin\ 然后设置环境变量中的path, 增加上述路径即可

2010-06-22

Qt做的代码行统计工具

可以统计工程文件中的文件数\代码行数\注释行数\版权行&废弃行(主要是指/* */) 可以自定义文件过滤\注释方法过滤等 正在更新中,源码可留言^_^ 欢迎交流 需要Qt环境QGui4.dll, QCore4.dll

2010-06-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除