本發(fā)明專利技術(shù)涉及一種基于融合字形信息的服藥單識(shí)別結(jié)果糾錯(cuò)方法,屬于文字識(shí)別領(lǐng)域,包括構(gòu)建一個(gè)標(biāo)準(zhǔn)藥品詞庫(kù),將詞庫(kù)中的每個(gè)藥品信息作為一個(gè)節(jié)點(diǎn)存儲(chǔ)在BK樹內(nèi)存結(jié)構(gòu)中,設(shè)置搜索距離閾值n,通過(guò)閾值搜索規(guī)則減少數(shù)據(jù)搜索規(guī)模,得到結(jié)果候選集;將文字識(shí)別后待糾錯(cuò)字符串與結(jié)果候選集中的字符串進(jìn)行相似度匹配,在原有的相似度匹配方案基礎(chǔ)上改進(jìn)傳統(tǒng)的編輯距離公式,保持插入和刪除操作代價(jià)不變,降低替換字符代價(jià);在進(jìn)行替換字符操作時(shí),考慮字符的五筆編碼、四角碼和筆畫三個(gè)字形相關(guān)信息,增大字符串近似匹配精度;將相似度最高的字符串作為糾錯(cuò)結(jié)果進(jìn)行替換。本發(fā)明專利技術(shù)通過(guò)對(duì)服藥單識(shí)別結(jié)果糾錯(cuò),提高服藥單識(shí)別準(zhǔn)確率。
【技術(shù)實(shí)現(xiàn)步驟摘要】
一種基于融合字形信息的服藥單識(shí)別結(jié)果糾錯(cuò)方法
本專利技術(shù)屬于文字識(shí)別
,涉及一種基于融合字形信息的服藥單識(shí)別結(jié)果糾錯(cuò)方法。
技術(shù)介紹
隨著人民生活水平的不斷提高,慢性病患者人數(shù)在逐年遞增,患者需要長(zhǎng)期甚至終身用藥以控制、緩解病情。對(duì)患者服藥信息的長(zhǎng)期追蹤,能夠幫助醫(yī)護(hù)人員了解患者的實(shí)際用藥情況,便于對(duì)其進(jìn)行健康評(píng)估、疾病預(yù)測(cè)。醫(yī)療服藥單作為患者服藥信息的重要依據(jù),主要包含醫(yī)囑時(shí)間、藥品名稱、劑量和頻次信息。然而紙質(zhì)服藥單不易保存,人工采集數(shù)據(jù)耗費(fèi)人力,且存在數(shù)據(jù)錯(cuò)誤風(fēng)險(xiǎn),OCR技術(shù)為紙質(zhì)文檔的電子化提供了便利。隨著OCR技術(shù)的發(fā)展,印刷體識(shí)別技術(shù)已經(jīng)擁有較高的準(zhǔn)確度。但是服藥單上的藥品名多數(shù)是由不同的中文字符構(gòu)成,其中包含很多醫(yī)學(xué)上才會(huì)頻繁使用的生僻字,如:“胍”、“哌”、“嗪”、“萘”、“鉍”等,或者形近字,如“櫞”和“橡”、“枸”和“佝”等,再加上服藥單圖像本身的清晰度、噪聲、折疊、傾斜、光照等多種因素的影響,極易導(dǎo)致OCR識(shí)別后的結(jié)果存在錯(cuò)誤。為有效降低識(shí)別錯(cuò)誤帶來(lái)的影響,對(duì)服藥單識(shí)別結(jié)果后處理變得尤為重要。在文字識(shí)別后處理中,計(jì)算兩個(gè)字符串的相似度是一個(gè)重要研究方向,通過(guò)依次計(jì)算待糾錯(cuò)字符串和目標(biāo)集合中字符串的相似度,選擇相似度最高的目標(biāo)字符串作為糾錯(cuò)結(jié)果。近年來(lái),很多學(xué)者提出了基于語(yǔ)義、音形碼、編輯距離、最長(zhǎng)公共子序列等方法來(lái)計(jì)算兩個(gè)字符串的相似度,從而提高文字的識(shí)別率。但是藥品名稱主要是由一些醫(yī)學(xué)專用詞匯拼接而成,并不具備語(yǔ)義環(huán)境,基于語(yǔ)義的方法無(wú)法有效地與實(shí)際問(wèn)題結(jié)合。編輯距離算法,通過(guò)兩個(gè)字符串由一個(gè)轉(zhuǎn)成另一個(gè)所需要的最少編輯操作次數(shù)來(lái)衡量它們之間的相似度,其主要應(yīng)用在英文字符串的相似度計(jì)算中,考慮的編輯操作信息過(guò)于單一,導(dǎo)致傳統(tǒng)的編輯距離不符合實(shí)際應(yīng)用場(chǎng)景要求。
技術(shù)實(shí)現(xiàn)思路
有鑒于此,本專利技術(shù)的目的在于提供一種基于融合字形信息的服藥單識(shí)別結(jié)果糾錯(cuò)方法,解決中文藥品名稱識(shí)別結(jié)果錯(cuò)誤問(wèn)題。為達(dá)到上述目的,本專利技術(shù)提供如下技術(shù)方案:一種基于融合字形信息的服藥單識(shí)別結(jié)果糾錯(cuò)方法,包括以下步驟:S1:構(gòu)建藥品詞庫(kù),包括門診病歷和醫(yī)院服藥單中的常用藥品,以及能從網(wǎng)上獲取到的部分開源藥品數(shù)據(jù),進(jìn)行清洗去重,得到最終的藥品詞庫(kù);S2:將所述藥品詞庫(kù)中每個(gè)字符串信息作為一個(gè)節(jié)點(diǎn)存儲(chǔ)在BK樹內(nèi)存結(jié)構(gòu)中;S3:設(shè)置搜索距離閾值n,計(jì)算待糾錯(cuò)字符串與BK樹中節(jié)點(diǎn)的編輯距離,將滿足與待糾錯(cuò)字符串編輯距離不超過(guò)n的節(jié)點(diǎn)添加到結(jié)果候選集中;S4:分別計(jì)算待糾錯(cuò)字符串與結(jié)果候選集中的字符串間融合了五筆編碼、四角碼和筆畫后的字形編輯距離dc。S5:計(jì)算融合字形信息的字符串相似度Simc,公式如下:S6:將相似度最高的字符串作為糾錯(cuò)結(jié)果進(jìn)行替換。進(jìn)一步,所述步驟S2包括以下步驟:S21:隨機(jī)選擇詞庫(kù)中的一個(gè)字符串作為BK樹的根節(jié)點(diǎn);S22:每插入一個(gè)新字符串,計(jì)算該字符串與根節(jié)點(diǎn)的距離d;S23:如果距離值d是第一次出現(xiàn),建立一個(gè)新的子節(jié)點(diǎn),否則沿著編號(hào)與d相同的邊遞歸下去。進(jìn)一步,所述步驟S3包括以下步驟:S31:設(shè)置搜索距離閾值n;S32:計(jì)算待糾錯(cuò)字符串與根節(jié)點(diǎn)之間的編輯距離d,然后搜索邊的編號(hào)在范圍[d-n,d+n]的子節(jié)點(diǎn)node,不在此范圍的節(jié)點(diǎn)代表其整個(gè)分支都不滿足查找條件,可剪枝;S33:比較待糾錯(cuò)字符串與node節(jié)點(diǎn)的編輯距離,如果小于n,代表找到的node節(jié)點(diǎn)符合查找要求,返回此節(jié)點(diǎn),并將節(jié)點(diǎn)存儲(chǔ)的字符串添加到結(jié)果候選集中;S34:將當(dāng)前node節(jié)點(diǎn)當(dāng)作根節(jié)點(diǎn),返回步驟S32,繼續(xù)查找其他子節(jié)點(diǎn);遞歸以致遍歷BK樹,找到所有滿足條件的字符串,存儲(chǔ)在結(jié)構(gòu)候選集中。進(jìn)一步,所述步驟S4包括以下步驟:S41:融合五筆編碼的編輯距離替換代價(jià)公式為Wwb=dwb/4其中,dwb表示兩個(gè)字符五筆編碼的編輯距離,除以4是進(jìn)行歸一化操作,取值在[0,1]之間,即兩個(gè)漢字完全相同是為1,不同則為0;S42:融合四角碼的編輯距離替換代價(jià)公式為Wsj=dsj/5其中,dsj為兩個(gè)字符的四角碼距離,Wsj是歸一化之后的結(jié)果,取值在[0,1]之間;S43:融合筆畫的編輯距離替換公式為Wstro=|stroi-stroj|/max(stroi,stroj)上式中,stroi是字符ai的筆畫數(shù),stroj是字符bj的筆畫數(shù),|stroi-stroj|是兩個(gè)字符筆畫數(shù)差值的絕對(duì)值;通過(guò)筆畫數(shù)差值除以兩個(gè)字符串筆畫數(shù)的最大值,對(duì)其進(jìn)行歸一化處理,使取值在0到1之間;S44:計(jì)算融合三種字形信息后的字符串編輯距離dc,字符串str1和str2的長(zhǎng)度分別為m和n,構(gòu)造矩陣LDm+1,n+1,給矩陣中的每個(gè)元素賦值,改進(jìn)后的賦值公式如下:將傳統(tǒng)編輯距離替換操作代價(jià)為1改進(jìn)為替換字符之間的五筆編碼編輯距離、四角碼編輯距離和筆畫差值相加的歸一化值;其中,ai為字符串str1中第i個(gè)字符,bj為字符串str2中第j個(gè)字符;w1為dwb/4,是兩個(gè)字符五筆編碼的編碼距離歸一化結(jié)果,w2為dsj/5,是兩個(gè)字符四角碼編碼距離歸一化結(jié)果,w3為|stroi-stroj|/max(stroi,stroj),表示兩個(gè)字符之間筆畫差異。進(jìn)一步,在所述步驟S41中一個(gè)漢字最多用4個(gè)字母表示其五筆編碼,當(dāng)兩個(gè)漢字相同時(shí),五筆編碼距離為0;當(dāng)兩個(gè)漢字不同時(shí),五筆編碼距離最大為4。進(jìn)一步,在所述步驟S42中一個(gè)漢字最多用5個(gè)數(shù)字表示其四角碼,四角碼的編碼規(guī)則是將漢字的基本筆畫分為10種,分別用0~9十個(gè)數(shù)字表示,按左上角、右上角、左下角、右下角的順序取漢字的四角的筆畫代碼作為漢字的編碼;即當(dāng)兩個(gè)漢字相同時(shí),四角碼距離為0;不同則距離最大為5。本專利技術(shù)的有益效果在于:本專利技術(shù)公開了一種基于融合字形信息的服藥單識(shí)別糾錯(cuò)方法,主要用于文字識(shí)別后處理領(lǐng)域,具體在構(gòu)建藥品詞庫(kù),并將詞庫(kù)信息作為節(jié)點(diǎn)存儲(chǔ)在BK樹結(jié)構(gòu)中,通過(guò)搜索閾值規(guī)則減少搜索范圍,提高搜索效率;并在傳統(tǒng)的編輯距離上增加了中文字符間的字形信息,從字符相似度上提高字符串相似度的匹配精度,使在中文字符串的相似度計(jì)算上更貼合場(chǎng)景,改進(jìn)后的編輯距離算法在計(jì)算中文字符串的相似度上結(jié)果更加精確、合理,為識(shí)別后糾錯(cuò)提供了一種可行方案。本專利技術(shù)的其他優(yōu)點(diǎn)、目標(biāo)和特征在某種程度上將在隨后的說(shuō)明書中進(jìn)行闡述,并且在某種程度上,基于對(duì)下文的考察研究對(duì)本領(lǐng)域技術(shù)人員而言將是顯而易見的,或者可以從本專利技術(shù)的實(shí)踐中得到教導(dǎo)。本專利技術(shù)的目標(biāo)和其他優(yōu)點(diǎn)可以通過(guò)下面的說(shuō)明書來(lái)實(shí)現(xiàn)和獲得。附圖說(shuō)明為了使本專利技術(shù)的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本專利技術(shù)作優(yōu)選的詳細(xì)描述,其中:圖1為本專利技術(shù)實(shí)施例所述一種基于融合字形信息的服藥單識(shí)別糾錯(cuò)方法的流程示意圖。圖2為本專利技術(shù)的一個(gè)實(shí)施例的BK樹結(jié)構(gòu)。圖3為本專利技術(shù)的一個(gè)實(shí)施例的漢字四角碼取碼規(guī)本文檔來(lái)自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
1.一種基于融合字形信息的服藥單識(shí)別結(jié)果糾錯(cuò)方法,其特征在于:包括以下步驟:/nS1:構(gòu)建藥品詞庫(kù),包括門診病歷和醫(yī)院服藥單中的常用藥品,以及能從網(wǎng)上獲取到的部分開源藥品數(shù)據(jù),進(jìn)行清洗去重,得到最終的藥品詞庫(kù);/nS2:將所述藥品詞庫(kù)中每個(gè)字符串信息作為一個(gè)節(jié)點(diǎn)存儲(chǔ)在BK樹內(nèi)存結(jié)構(gòu)中;/nS3:設(shè)置搜索距離閾值n,計(jì)算待糾錯(cuò)字符串與BK樹中節(jié)點(diǎn)的編輯距離,將滿足與待糾錯(cuò)字符串編輯距離不超過(guò)n的節(jié)點(diǎn)添加到結(jié)果候選集中;/nS4:分別計(jì)算待糾錯(cuò)字符串與結(jié)果候選集中的字符串間融合了五筆編碼、四角碼和筆畫后的字形編輯距離d
【技術(shù)特征摘要】
1.一種基于融合字形信息的服藥單識(shí)別結(jié)果糾錯(cuò)方法,其特征在于:包括以下步驟:
S1:構(gòu)建藥品詞庫(kù),包括門診病歷和醫(yī)院服藥單中的常用藥品,以及能從網(wǎng)上獲取到的部分開源藥品數(shù)據(jù),進(jìn)行清洗去重,得到最終的藥品詞庫(kù);
S2:將所述藥品詞庫(kù)中每個(gè)字符串信息作為一個(gè)節(jié)點(diǎn)存儲(chǔ)在BK樹內(nèi)存結(jié)構(gòu)中;
S3:設(shè)置搜索距離閾值n,計(jì)算待糾錯(cuò)字符串與BK樹中節(jié)點(diǎn)的編輯距離,將滿足與待糾錯(cuò)字符串編輯距離不超過(guò)n的節(jié)點(diǎn)添加到結(jié)果候選集中;
S4:分別計(jì)算待糾錯(cuò)字符串與結(jié)果候選集中的字符串間融合了五筆編碼、四角碼和筆畫后的字形編輯距離dc。
S5:計(jì)算融合字形信息的字符串相似度Simc,公式如下:
S6:將相似度最高的字符串作為糾錯(cuò)結(jié)果進(jìn)行替換。
2.根據(jù)權(quán)利要求1所述的基于融合字形信息的服藥單識(shí)別結(jié)果糾錯(cuò)方法,其特征在于:所述步驟S2包括以下步驟:
S21:隨機(jī)選擇詞庫(kù)中的一個(gè)字符串作為BK樹的根節(jié)點(diǎn);
S22:每插入一個(gè)新字符串,計(jì)算該字符串與根節(jié)點(diǎn)的距離d;
S23:如果距離值d是第一次出現(xiàn),建立一個(gè)新的子節(jié)點(diǎn),否則沿著編號(hào)與d相同的邊遞歸下去。
3.根據(jù)權(quán)利要求1所述的基于融合字形信息的服藥單識(shí)別結(jié)果糾錯(cuò)方法,其特征在于:所述步驟S3包括以下步驟:
S31:設(shè)置搜索距離閾值n;
S32:計(jì)算待糾錯(cuò)字符串與根節(jié)點(diǎn)之間的編輯距離d,然后搜索邊的編號(hào)在范圍[d-n,d+n]的子節(jié)點(diǎn)node,不在此范圍的節(jié)點(diǎn)代表其整個(gè)分支都不滿足查找條件,可剪枝;
S33:比較待糾錯(cuò)字符串與node節(jié)點(diǎn)的編輯距離,如果小于n,代表找到的node節(jié)點(diǎn)符合查找要求,返回此節(jié)點(diǎn),并將節(jié)點(diǎn)存儲(chǔ)的字符串添加到結(jié)果候選集中;
S34:將當(dāng)前node節(jié)點(diǎn)當(dāng)作根節(jié)點(diǎn),返回步驟S32,繼續(xù)查找其他子節(jié)點(diǎn);遞歸以致遍歷BK樹,找到所有滿足條件的字符串,存儲(chǔ)在結(jié)構(gòu)候選集中。
4.根據(jù)權(quán)利要求1所述的基于融合字形信息的服藥單識(shí)別結(jié)果糾錯(cuò)方法,其特征在于:所述步驟S4包括以下步驟:
S41:融合五筆編碼的編輯距離替換代價(jià)公式為<...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:唐萬(wàn)梅,梁燕,李錦,周東亮,陳峻嵩,
申請(qǐng)(專利權(quán))人:重慶郵電大學(xué),
類型:發(fā)明
國(guó)別省市:重慶;50
還沒有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。