CN108572943B - 一种基于gdi拦截的表格识别方法 - Google Patents
一种基于gdi拦截的表格识别方法 Download PDFInfo
- Publication number
- CN108572943B CN108572943B CN201710149981.XA CN201710149981A CN108572943B CN 108572943 B CN108572943 B CN 108572943B CN 201710149981 A CN201710149981 A CN 201710149981A CN 108572943 B CN108572943 B CN 108572943B
- Authority
- CN
- China
- Prior art keywords
- gdi
- window
- lines
- text
- cells
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/414—Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明提供一种基于GDI拦截的表格识别方法,该方法包括步骤为对表格窗体进行定位,抓取窗体内表格的文本和线条,对多余线条进行排除,对表格边框进行识别和或者自定义边框,还原系统表格文本和表格格式,获取单元格文本内容,本发明方法通过所有GDI文本和线条组成的表格获取信息系统的表格内容和格式,通过配置支持无合并单元格和存在合并单元格表格,达到可根据任意单元格获取其文本。
Description
技术领域
本发明涉及图像处理技术领域,特别涉及一种基于GDI拦截的表格识别方法。
背景技术
随着我国医院数字化、信息化建设的发展,医院信息管理系统(HIS)、检验信息系统(LIS)、影像系统(PACS)、体检管理系统(PEIS)、电子病历(EMR)等各种医疗子系统已被医院所采用。以往医院需要对各系统的数据进行关联并在院内共享,以方便在各个科室提取并分析数据。在现有的互联网时代,如能够将数据正确地提取、重构并利用互联网传输,将极大地提高医疗资源的灵活配置,使远程会诊、远程医疗成为一种常见的、低成本的、便捷的就诊手段。
在现有技术中,通过窗口采集可以将在Windows系统中运行的各应用的窗口图像采集下来,并保存为位图。如果只采集某一时间点的窗口图像,则可以获得静止的、该时间点的窗口图像的截图;如果采集连续时间段内的窗口图像,则可以获得动态的、该连续时间段内的窗口图像的视频。
在进行窗口图像的采集时,可以基于Windows图形设备接口(Graphics DeviceInterface,GDI)应用程序编程接口(Application Programming Interface,API)进行窗口图像采集,或者也可以采用特定类型的API进行窗口图像的采集。
具体的,在基于Windows GDI API进行窗口图像的采集时,需要先获得指定窗口的上下文句柄(Handle of Device Context,HDC),再利用GDI API的BitBlt等函数,将窗口图像拷贝到指定位置。该方法只能采集到基于GDI渲染的窗口图像,而很多应用的窗口图像并不是基于GDI渲染的,比如很多游戏应用、视频应用等并不是基于GDI渲染的。因此采用该方法采集窗口图像时,只能采集到基于GDI渲染的应用的窗口图像,无法采集到非基于GDI渲染的应用的窗口图像。
对于医疗信息系统中,在远程会诊、远程医疗系统开发的过程中与各个医院的子系统做接口,进行数据的采集,并转换为自身可以识别的数据在远程会诊的过程中提供给受邀方查阅,非常必要。医疗信息系统软件界面通常表现为窗口表格形式,一般针对固定结构的表格数据抓取,较为常见地是通常利用模板表格图把固定单元的相对位置描述出来,作为表格结构的先验信息,然后利用这些信息指导数据提取,可以大大提高表格数据提取的准确率和速度,方便批量化处理。然而不同厂家设计的医疗信息系统软件界面存在有很大不同,由于表格结构复杂多样,很难找到一种通用的提取框架,而且 资料传输过来的数据存在很多重复的数据,无用的数据,错误的数据,导致数据的不完整性,无法具体完成数据的结构化和清晰化,使得数据展示和分析难度很大。
发明内容
为了解决现有技术的问题,本发明提供了一种基于GDI拦截的表格识别方法。 本发明具体技术方案在于,包括如下步骤:
a)根据系统对表格的窗体进行定位;
b)配置GDI抓取窗体内表格的文本和线条,利用windows API钩挂,用GDI函数对系统进行拦截文本和线条;
c)配置排除异常线条,对表格的多余线条进行排除;
d)配置识别边框或者自定义边框,对表格边框进行识别和或者自定义边框;
e) 还原系统表格文本和表格格式;
f)配置单元格,获取单元格内文本内容。
进一步地,步骤f)所述单元格,支持无合并单元格和存在合并单元格。
进一步地,所述方法针对所有GDI文本和线条组成的表格,可对其中内容进行识别和分析。
本发明提供的技术方案带来的有益效果是:
本发明采用window API钩挂,通过所有GDI文本和线条组成的表格获取信息系统的表格内容和格式,通过配置支持无合并单元格和存在合并单元格表格,达到可根据任意单元格获取其文本。
具体实施方式
本发明实施例提供一种基于GDI拦截的表格识别方法,该方法包括:
1.根据系统对表格的窗体进行定位,例如:
hWndlnsertAfter:在z序中的位于被置位的窗口前的窗口句柄。该参数必须为一个窗口句柄,或下列值之一:HWND_BOTTOM:将窗口置于Z序的底部。如果参数hWnd标识了一个顶层窗口,则窗口失去顶级位置,并且被置在其他窗口的底部。
HWND_NOTOPMOST:将窗口置于所有非顶层窗口之上(即在所有顶层窗口之后)。如果窗口已经是非顶层窗口则该标志不起作用。
HWND_TOP:将窗口置于Z序的顶部。
HWND_TOPMOST:将窗口置于所有非顶层窗口之上。即使窗口未被激活窗口也将保持顶级位置。
2、配置GDI抓取窗体内表格的文本和线条,例如
获得当前屏幕的大小,计算图片的大小,如果图片的长度和宽度超过目前屏幕的大小,根据屏幕的大小创建一个以当前屏幕为模板的图像。
x:以客户坐标指定窗口新位置的左边界。
y:以客户坐标指定窗口新位置的顶边界。
cx:以像素指定窗口的新的宽度。
cy:以像素指定窗口的新的高度。
配置排除异常线条。根据系统界面情况,排除异常线条,形成标准化表格。
配置识别边框或者自定义边框。例如,选用一个单独的view实现,在这个view中按位置摆放相应的控件并设置view的layer的borderColor和borderWidth。再以view为对象,贴到cell中。会发现,当cell中出现多个楼层时,上下相邻的楼层相邻处的线,是两个楼层borderWidth的2倍,显的线条粗,不协调。
删除通过borderColor,borderWidth设置的layer边框,通过向view的layer上添加上下左右方向的1像素的layer实现边框的设置。
配置支持无合并单元格和存在合并单元格,如果存在合并单元格,进行具体配置。
配置单元格,获取单元格内任意文本。例如, 根据指定内容的位置的不同,可以选择使用MID或MIDB、RIGHT或RIGHTB、LEFT或LEFTB等文本提取指定的文字内容。
MID 或MIDB 用途:MID 返回文本串中从指定位置开始的特定数目的字符,该数目由用户指定。MIDB返回文本串中从指定位置开始的特定数目的字符,该数目由用户指定。MIDB函数可以用于双字节字符。
语法:MID(text,start_num, num_chars)或MIDB(text, start_num,num_bytes)。
参数:Text 是包含要提取字符的文本串。Start_num 是文本中要提取的第一个字符的位置,文本中第一个字符的start_num 为1 ,以此类推;Num_chars指定希望MID 从文本中返回字符的个数;Num_bytes指定希望MIDB 从文本中按字节返回字符的个数。如性别“男”、“女”。
Claims (3)
1.一种基于GDI拦截的表格识别方法,其特征在于:
a)根据系统对表格的窗体进行定位;
b)配置GDI抓取窗体内表格的文本和线条,利用windows API钩挂,用GDI函数对系统进行拦截文本和线条;
c)配置排除异常线条,对表格的多余线条进行排除;
d)配置识别边框或者自定义边框,对表格边框进行识别和或者自定义边框;
e)还原系统表格文本和表格格式;
f)配置单元格,获取单元格内文本内容。
2.如权利要求1所述基于GDI拦截的表格识别方法 ,其特征在于:所述步骤f)所述单元格,支持无合并单元格和存在合并单元格。
3.如权利要求1所述基于GDI拦截的表格识别方法 ,其特征在于:针对所有GDI文本和线条组成的表格,可对其中内容进行识别和分析。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710149981.XA CN108572943B (zh) | 2017-03-14 | 2017-03-14 | 一种基于gdi拦截的表格识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710149981.XA CN108572943B (zh) | 2017-03-14 | 2017-03-14 | 一种基于gdi拦截的表格识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108572943A CN108572943A (zh) | 2018-09-25 |
CN108572943B true CN108572943B (zh) | 2022-11-11 |
Family
ID=63577227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710149981.XA Active CN108572943B (zh) | 2017-03-14 | 2017-03-14 | 一种基于gdi拦截的表格识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108572943B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103258198A (zh) * | 2013-04-26 | 2013-08-21 | 四川大学 | 一种表格文档图像中字符提取方法 |
CN105574486A (zh) * | 2015-11-25 | 2016-05-11 | 成都数联铭品科技有限公司 | 一种图像表格文字切分方法 |
CN106156761A (zh) * | 2016-08-10 | 2016-11-23 | 北京交通大学 | 面向移动终端拍摄的图像表格检测与识别方法 |
CN106407883A (zh) * | 2016-08-10 | 2017-02-15 | 北京工业大学 | 一种复杂表格及其内部手写数字识别方法 |
-
2017
- 2017-03-14 CN CN201710149981.XA patent/CN108572943B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103258198A (zh) * | 2013-04-26 | 2013-08-21 | 四川大学 | 一种表格文档图像中字符提取方法 |
CN105574486A (zh) * | 2015-11-25 | 2016-05-11 | 成都数联铭品科技有限公司 | 一种图像表格文字切分方法 |
CN106156761A (zh) * | 2016-08-10 | 2016-11-23 | 北京交通大学 | 面向移动终端拍摄的图像表格检测与识别方法 |
CN106407883A (zh) * | 2016-08-10 | 2017-02-15 | 北京工业大学 | 一种复杂表格及其内部手写数字识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108572943A (zh) | 2018-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106527892B (zh) | 一种电子设备的截屏方法及系统 | |
US8620689B2 (en) | System and method for patient synchronization between independent applications in a distributed environment | |
CN111091559A (zh) | 基于深度学习的小肠镜下淋巴瘤辅助诊断系统 | |
CN110728191A (zh) | 手语翻译方法、基于mr的手语-语音交互方法及系统 | |
CN111091882A (zh) | 一种人工智能可视化pacs系统及方法 | |
CN110910348B (zh) | 一种肺结节的位置分类方法、装置、设备及存储介质 | |
EP4397233A1 (en) | Process control system and implementation method for standardized blood pressure measurement | |
CN111144506B (zh) | 基于超声图像的肝包虫识别方法、存储介质及超声设备 | |
CN112634309B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN112862752A (zh) | 一种图像处理显示方法、系统电子设备及存储介质 | |
CN108572943B (zh) | 一种基于gdi拦截的表格识别方法 | |
CN111863206A (zh) | 一种图像预处理方法、装置、设备及存储介质 | |
CN110738639A (zh) | 医学图像检测结果的展示方法、装置、设备及存储介质 | |
CN110705420A (zh) | 电梯轿厢广告精准推送方法、装置及存储介质 | |
WO2022127318A1 (zh) | 一种扫描定位方法、装置、存储介质及电子设备 | |
CN114202510B (zh) | 显微镜下病理切片图像智能分析系统 | |
CN115631151A (zh) | 超声图像截取方法及装置、电子设备和存储介质 | |
CN113409280A (zh) | 医学影像的处理方法、标注方法和电子设备 | |
CN112766066A (zh) | 一种动态视频流和静态图像处理显示方法、系统 | |
KR102460899B1 (ko) | 심층 구조 학습 기반 사람 계수 방법 및 시스템 | |
JP2012003465A (ja) | シェーマ描画装置、シェーマ描画システムおよびシェーマ描画プログラム | |
CN110136253B (zh) | 一种结节三维立体展示装置及设备 | |
CN112801943A (zh) | 医学图像处理方法、装置 | |
CN110660479A (zh) | 一种动态医学影像ai训练诊断系统 | |
CN108595161B (zh) | 一种获取病人信息的操作脚本的引擎处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |