- 博客(53)
- 收藏
- 关注
原创 使用小波和边缘定位优化的快速视网膜血管检测和测量~
摘要视网膜血管形态改变与糖尿病、高血压、早产儿视网膜病变(ROP)等疾病的发生和发展之间的关系已成为多个大规模临床研究的主题。然而,以足够快、准确和可重复的方式量化视网膜血管变化的困难,限制了从这些研究中获得的见解应用于临床实践。本文提出了一种新的视网膜血管检测算法,该算法通用性强,只需调整几个直观的参数就可以应用于低分辨率和高分辨率眼底摄影和荧光血管造影。首先,我们描述了一种简单的血管分割策略,它是用小波语言描述的,用于快速血管检测。当使用公开的视网膜图像数据库进行验证时,该分割的真阳性率为70.27%
2020-09-09 14:52:42 370
原创 光声成像初识
光声成像(Photoacoustic Imaging, PAI)是近年来发展起来的一种非入侵式和非电离式的新型生物医学成像方法。当脉冲激光照射到生物组织中时,组织的光吸收域将产生超声信号,我们称这种由光激发产生的超声信号为光声信号。生物组织产生的光声信号携带了组织的光吸收特征信息,通过探测光声信号能重建出组织中的光吸收分布图像。光声成像结合了纯光学组织成像中高选择特性和纯超声组织成像中深穿透特性的优点,可得到高分辨率和高对比度的组织图像,从原理上避开了光散射的影响,突破了高分辨率光学成像深度“软极限
2020-09-08 16:12:58 2049
原创 opencv+dlib+libfacedetect进行汽车司机疲劳驾驶监测
@游侠去哪了来自这个博主的代码,被我每一行作了注释以及!!改进了代码!!!!需要源码的私信我!!!楼主花了半年,陆陆续续搞懂的!!!!!...
2020-04-05 10:10:41 1050 20
原创 Mat表达式
#include <iostream> #include "opencv2/opencv.hpp" using namespace std; using namespace cv; int main(int argc, char* argv[]){ Mat A = Mat::eye(4,4,CV_32SC1); Mat B = A * 3 + 1;...
2020-04-02 18:47:43 167
原创 选取图像局部区域
1.单行或单列选择//假设取A得第i行和第j列Mat line = A.row(i);Mat line_two = A.col(j);//将第一行的所有元素都*2赋给第j行A.row(j) = A.row(1)*22.用Range选择多行多列/*Range 是 OpenCV 中新增的类,该类有两个关键变量 star 和 end。Range对象可以用来表示矩阵的多个连续...
2020-04-02 17:35:49 617
原创 像素值的读写(3)--数组指针
#include <iostream> #include "opencv2/opencv.hpp" using namespace std; using namespace cv;int main(int argc, char* argv[]) { Mat grayim(600, 800, CV_8UC1); Mat colorim(600, 800, CV...
2020-04-02 16:30:26 150
原创 像素值的读写(2)-迭代器遍历iterator
迭代器(iterator)是一中检查容器内元素并遍历元素的数据类型。迭代器可以方便地遍历所有元素。Mat 也增加了迭代器的支持,以便于矩阵元素的遍历。#include <iostream> #include "opencv2/opencv.hpp" using namespace std; using namespace cv;int main(int ar...
2020-04-02 16:18:00 139
原创 像素值的读写(1)--at()函数
#include <iostream>#include "opencv2/opencv.hpp"using namespace std;using namespace cv;int main(int argc, char* argv[]){ Mat grayim(600, 800, CV_8UC1); Mat colorim(600, 800, CV_8UC3); /...
2020-04-02 13:06:11 290
原创 链表一些题目(补)
逆置一带头结点的链表只能通过已有结点的重新组合Void reversel(LNode *L){ LNode *p=L->next,*q; L->next=NULL; While(p!=NULL) { q=p->next; p->next=L->next; L->next=...
2019-08-05 20:29:45 107
原创 链表的一些题目
有一个递增非空单链表,设计让它删除值域重复结点,如:【1,1,2,3,3,3,4,4,7,7,7,9,9,9】经过删除后【1,2,3,4,7,9】//法1//p指向起始结点,将p与其后继比较,若相等就删除,否则指向下一个结点//重复知道,后继为空void delsll(LNode *L){ LNode *p=L->next,*q; while(p->ne...
2019-08-02 21:33:16 175
原创 顺序表一些题目
逆置元素void reverse(Sqlist &L){ int i,j; int temp; for(i=0;j=L.length-1;i<j;++i;--j) { temp=L.data[i]; L.data[i]=L.data[j]; L.data[j]=temp; }}删...
2019-07-29 17:11:45 667 1
原创 线性表真题仿造
算法思想:将A[]前m个元素看出表L,后n个元素看成表R,将R的元素逐个插入L中的"适当"位置。就是遍历后n个元素(从m到m+n-1)与当前元素前面的所有元素进行比较并互换位置,使之递增!void insertElem(int A[],int m,int n){ int i,j; int temp; for(i=m;i>m+n;++i)//R表 ...
2019-07-29 09:47:57 110
原创 双链表操作
尾插建立双链表void createDlistR(DLnode *&L,int a[],int n){ DLNode *s,*r; int i; L=(DLNode*)malloc(sizeof(DLNode)); L->prior=NULL; L->next=NUll; r=L; for(i=0;i<n;i...
2019-07-27 15:50:14 103
原创 关于删除结点的实例
查找C中是否存在一个值为x的结点,若存在,删除该结点并返回1,否则返回01.查找2.删除int findAndDelete(LNode *C,int x){ LNode *p,*q;//p指向所要删除结点的前驱结点 p=C;//此时p为头结点 while(p->next!=NULL) { if(p->next->...
2019-07-27 15:42:45 147
原创 链表_删除
要将第i个结点删去,要先找到第i-1个结点,删除其后继结点。(也就是将p的指针域next指向原来p的下一个结点的下一个结点)PS:还需释放删除结点的内存空间完整:q=p->next;p->next=p->next->next;free(q);...
2019-07-27 11:16:52 158
原创 归并成递减的单链表
//头插法void merge(LNode *A,LNode *B,LNode *&C){ LNode *p=A->next;//(p跟踪A的最小值结点),跟踪的开始结点是头结点后面一个 LNode *q=B->next;//(q来跟踪B的最小值结点) LNode *s;//(这个s指向新创建的结点) C=A;//(A的头结点做C的头结点)...
2019-07-27 11:00:51 516 1
原创 A,B带头结点,递增。将A,B归并成一个按元素值非递减(递增)有序的链表
算法思想:从A,B中选取最小的元素插入C的尾部。//尾插法void merge(LNode *A,LNode *B,LNode *&C){ LNode *p=A->next;//(p跟踪A的最小值结点),跟踪的开始结点是头结点后面一个 LNode *q=B->next;//(q来跟踪B的最小值结点) LNode *r;//(这个r要始终指...
2019-07-27 10:59:25 307
原创 链表_头插、尾插
头插法生成新结点,将数据存至新结点数据域,将新结点插入当前表头(先将新结点s的next取代原来头结点C的next,再将s赋给C的next也就是连上s)。void createlistF(LNode *&C,int a[],int n){ LNode *s; int ...
2019-07-24 20:06:31 196
原创 金融数据接口tushare爬取数据
import matplotlib.pyplot as pltimport seaborn as snsimport tushare as tsfrom datetime import datetimeimport csvstock1 = ts.get_profit_statement('600498')stock1.to_csv('利润表.csv',encoding...
2019-07-24 19:26:47 717
原创 选拔赛题目
1)编写python程序,利用tushare包,收集获取沪深上市公司基本情况数据,并储存为csv文件,文件名称为:沪深上市公司基本情况数据.csv。(2)通过python程序,从上述文件中筛选出2017年度徐工机械以及工程机械制造行业可比上市公司的数据,储存为csv文件,文件名称为:徐工机械可比上市公司数据.csv。(可比参数:总资产为徐工机械2017年总资产的0.8—1.2倍)(3)编写...
2019-07-24 19:26:35 115
原创 操作系统选择题
1.下面各项中, ( ) 不是引入操作系统的最主要目的。A.方便用户使用 B.更有效地利用软.硬件资源C.及时响应用户请求 D.改善系统性能2.分时系统响应时间与( )有关。A.每个应用进程分配的时间片长度 B.进程大小C.就绪进程数目 ...
2018-12-26 19:09:57 13824 2
原创 解析以太网V2MAC帧的格式
(1) 前导码和帧前定界符 在帧中设置前导码和帧前定界符,以便于帧的识别。前导码由56位(7Byte)的10101010…1010比特序列组成,每个字节都是16进制0xAA。从Ethernet物理层电路设计的角度,接受Manchester编码信号的电路是锁相技术,锁相电路从开始接收到进入稳定状态的时间大约为12b。设置前导码与帧前定界符的目的是保证接收电路在目的地址字段到达前进入稳定...
2018-06-08 10:59:30 17019
原创 以太网 V2 MAC帧的封装,解析,发送
核心算法分析: 1. 解析帧结构模块 本模块实现了将封装好的MAC帧各字段解析为可阅读的文本的功能。 其中,任意位置的读入失败都抛出文件已到达末尾异常,结束解析。 2. 封装数据帧模块 本模块实现了将用户输入的文本封装为MAC帧的功能。 3. 模拟发送帧模块 本模块实现了简单的CSMA/CD协议,能够模拟单机发送一个MAC帧的过程。步骤一:载波...
2018-06-06 20:28:08 6603 1
原创 有关IPv6的讲题
4-59建议的IPv6协议没有首部检验和。这样做的优缺点是什么? 答:优点:对首部的处理更简单。因为如果检验和错误,数据链路层会将有差错的帧丢弃,而网络层正好可以省去这一步骤;缺点:可能遇到数据链路层检测不出来的差错。4-60在IPv4首部中有一个“协议”字段,但在IPv6的固定首部中确没有。这是为什么? 答:在IP数据报传送的路径上的所有路由器都不需要这一字段的信息。只有目的主机才需要。在IPv...
2018-05-28 12:02:23 13717 2
原创 Wireshark捕获IPV6包并分析首部IPV4的区别
应课程要求吧~①ipconfig看自己IP地址~知道了自己装了IPV6然后可以设置捕捉过滤器,但我懒得。。。之后就是开始捕获,选择WLAN,ping百度吧~分析吧~
2018-05-26 18:21:07 15991 1
原创 数据库原理与技术(二)
关系型数据库域:一组具有相同数据类型的值的集合例如:{男,女}、{1,55}笛卡尔积:域上一种集合运算Dn的笛卡尔积为 D1XD2XD3X...Dn={(d1,d2,...,dn)|di∈Di,i=1,2,... ,n}例如:D1=导师集合supervisor={张清玫,刘逸} D2=专业集合speciality={计算机专业,信息专业} D3=研究生集合pos...
2018-05-26 12:00:04 409
原创 数据库原理与技术(一)
绪论:数据、数据库、数据库管理系统和数据库系统是与数据库技术密切相关的四个基本概念。、信息世界中的基本概念:①实体:客观存在并可相互区别的事物②属性:实体所具有得到某一特性。③码:唯一标识实体的属性④实体型:用实体名及其属性名集合来抽象和刻画同类实体⑤实体集:同一类型实体的集合⑥联系:实体间的联系指不同实体集之间的联系...
2018-05-26 10:19:25 2122
原创 JAVA程序设计--抽象类和接口(三)
接口接口只包含常量和抽象方法,不能使用new操作符创建接口的实例!!UML图里,接口名字和方法名字使用斜体!虚线和空心三角形指向接口!特性:接口中定义的所有方法都是public。当一个类实现接口时,该方法必须声明为公共的!!Show the error in the following code: interface A { void m1(); } class...
2018-05-22 23:10:04 624
原创 JAVA程序设计--抽象类和接口(二)
分析:这两段代码可以编译成功,但是运行会错误!因为?Number numberRef = new Integer(0);Double doubleRef = (Double)numberRef;在运行时,JVM尝试将numberRef转换为Double对象,但numberRef是Integer的实例,而不是Double实例。Number[] numberArray = new Integer[2...
2018-05-22 17:14:14 630
原创 JAVA程序设计--抽象类和接口(一)
为什么要使用抽象类?这里引入一个抽象类的规矩,抽象类包含抽象方法,而这些方法则在具体的子类中实现。这样,把一些父类写成抽象类,别人看到你的代码,或你看到别人的代码,你就会注意抽象方法(关键字abstract),而知道这个方法是在子类中实现的,所以,有个提示作用。别人的理解:java中抽象类更利于代码的维护和重用。1.因为抽象类不能实例化对象,所以必须要有子类来实现它之后才能使用。这样就可以把一些具...
2018-05-22 10:58:30 944
原创 JAVA程序设计--控制台读取输入
使用Scanner类从控制台输入Java使用System.in表示标准输入设备。可使用Scanner类创建它的对象,以读取来自System.in的输入,如:Scanner input = new Scanner(System.in);对象可以调用它自己的方法,让这个对象完成某个任务。例如:double radius = input.nextDouble(); 从键盘读取一个数值,并将数值赋给了ra...
2018-05-21 20:33:49 210
转载 JAVA-WEB方向学习路线
搬运一下大佬的学习路线下面进入正题部分,以web方向为基础的java学习路线:(由于java真正的知识范围很广,这里只罗列出我个人觉得重要的,至少是web中用的上的东西。)一.J2SE阶段 ·java基础【变量、运算符、标识符等】 ·面向对象【封装、继承、多态】; ·API; ·集合框架【List、Map】; ·泛型; ·IO流; ·多线程; ·JDBC; ·正则表达式; ·高级特性【枚举、装箱拆...
2018-05-21 12:33:50 3840
原创 JAVA程序设计--继承和多态(四)
疏漏:私有方法不能重写,因为他不能在类本身之外访问。易漏:静态方法能继承,但是不能重写,父类的静态方法一旦在子类中被重新定义,那么父类中定义的方法将被隐藏。...
2018-05-20 21:59:32 258
原创 JAVA程序设计--继承和多态(三)
对象转化和instanceof运算符上一节中可知:对象的引用科类型转化为对另外一种对象的引用,这称为:对象转化~两个问题将隐式和显式转换(casting)①Object o = new Student(); 为什么是合法的?因为Student的实例也是Object的~所以可将new Student()赋值给Object类型的参数。②Student b = o;为什么报错?因为o是哪个类的对象编译器...
2018-05-20 21:19:00 229
原创 JAVA程序设计--继承和多态(一)
继承,顾名思义,即从已经存在的类中定义新的类。因为属性和方法的继承,子类往往比它的父类包含更多的信息和方法。利用父类定义的公共的访问器(get)和修改器(set),可以访问父类的私有数据域。JAVA不允许多重继承,子类只能有一个父类,但类似功能可在接口中实现。设计思考:为什么每个类最好要设计一个无参构造方法?例:public class Apple extends Fruit{}class F...
2018-05-19 16:02:43 355
原创 JAVA程序设计--面向对象思考(二)
依照模式匹配、替换和分割正则表达式(缩写 regex)是一个字符串,用于描述匹配一个字符串集的模式。可以通过指定某个模式来匹配、替换或分割一个字符串。匹配:从String类中matches方法开始。替换与分割:①字符串可以转化为字符串数组--toCharArray()方法例如:char[] chars = "Java".toCharArray();char[0]是‘J’,~以此类推②字符串可以转化...
2018-05-19 10:42:47 178
原创 JAVA程序设计--面向对象思考(一)
将基本数据类型值作为对象处理由于效率问题,Java中的基本数据类型值不作为对象使用,但是可以使用Java API中的包装类来包装成一个对象。(即将基本数据类型并入对象或包装成对象。)包装类中没有无参构造方法。所有包装类的实例都是不可变的。这意味着,一旦创建对象后,他们的内部值就不能再改变。基本类型和包装类类型之间的自动转换基本数据类型值可以使用包装类自动转换成一个对象,反过来的自动转换也可以。将基...
2018-05-16 23:33:40 347
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人