顧蒙蒙,謝梓琪,謝穎華,王 乙,賈 凡,陳詩雨
(東華大學 信息科學與技術學院,上海 201620)
近年來,我國經(jīng)濟正處于高速發(fā)展階段,國內(nèi)各銀行相繼推出交易方式便捷、具有信貸功能的信用卡。在銀行業(yè)日趨激烈的競爭中,信用卡用戶與日激增,其未來幾年的發(fā)展必將左右各銀行在市場中的地位[1]。
然而,先前的信用卡業(yè)務系統(tǒng)已然跟不上時代的步伐,其主要不足有以下 4點:(1)紙質(zhì)文件易于損壞,不便管理,加上常年的堆積造成空間浪費;(2)國內(nèi)人力成本逐年增高,人工錄入、多人校對耗時耗力,且不能保證正確率;(3)窗口服務費時,客戶等待辦理的業(yè)務程序過于繁瑣;(4)信息不利于共享和傳遞[2]。由此,信用卡申請件影像化處理系統(tǒng)應運而生。在實現(xiàn)錄入、校對、存儲、查詢等傳統(tǒng)功能外,還可利用逐漸成熟的圖像處理、模式識別技術實現(xiàn)自動識別功能,降低了人工成本,提升了信用卡憑證處理效率。
結合各大銀行信用卡申請憑證的特點,本文設計了能夠滿足自動識別需求的信用卡申請件,如圖1所示。
圖1 申請件
該申請件在保有信用卡申請人基本信息及職業(yè)信息前提下,將申請人填寫的信息分為兩部分。上部為書寫部分,在必填區(qū)域中申請人需將信息填在米字格和日子格中,使得填寫更加規(guī)范,避免字體潦草造成難以辨認;下部為涂寫部分,申請人只需將相應選項前涂黑即可。這兩部分的區(qū)分使得系統(tǒng)能夠自動辨認各部分的信息并存入數(shù)據(jù)庫中,降低了人工錄入的時間。
根據(jù)系統(tǒng)的設計思想,信用卡申請件影像化處理系統(tǒng)需滿足以下要求:
(1)與傳統(tǒng)手工管理相比,添加用戶登錄和權限設置;
(2)具有自動識別、人工校對、人工修正、存儲、管理員查詢功能;
(3)自動識別狀態(tài)下各信息均無法修改,人工校對時方可根據(jù)申請件影像圖修正信息。
由此分析,本系統(tǒng)可劃分為登錄、自動識別、人工校對及修正、數(shù)據(jù)存儲、管理員處理5個模塊。
本系統(tǒng)采用3層架構形式,其中表現(xiàn)層位于最上層,離用戶最近,在本系統(tǒng)中即是信用卡申請件影像化處理系統(tǒng)的窗口,用于顯示數(shù)據(jù)和接收用戶輸入的數(shù)據(jù),提供一種交互式的界面[3]。業(yè)務邏輯層處于數(shù)據(jù)訪問層與表示層的中間,其操作可通過組件來實現(xiàn),為顯示層到數(shù)據(jù)層的操作提供了接口,使得通過簡單的C#編程即可訪問底層的數(shù)據(jù)層。
在開發(fā)環(huán)境的選擇上,使用了Microsoft Visual Studio 2008作為開發(fā)工具,以面向?qū)ο蟮腃#語言作為編程語言,而后臺的數(shù)據(jù)庫則選擇了SQL Server 2008。在Visual Studio中可直接調(diào)用和存儲數(shù)據(jù)庫中的數(shù)據(jù),這種無縫連接為軟件開發(fā)提供了便捷。
數(shù)據(jù)庫技術是目前信息資源管理中最有效的手段,而在數(shù)據(jù)庫的應用中,如何設計一個既能滿足用戶需求,同時性能又良好的數(shù)據(jù)庫,這就是數(shù)據(jù)庫設計的核心問題[4]。其基本任務為:根據(jù)一個單位的信息需求、處理需求和數(shù)據(jù)庫的支撐環(huán)境,設計出數(shù)據(jù)模式以及典型的應用程序[5]。根據(jù)信用卡紙質(zhì)申請件的內(nèi)容,設計了信用卡申請件影像化處理系統(tǒng)的數(shù)據(jù)庫及其中的表結構[6],其部分內(nèi)容如表1所示。
表1 數(shù)據(jù)庫中部分字段
在采用本系統(tǒng)進行處理之前須先將信用卡申請件紙質(zhì)文檔通過掃描儀生成電子版,從而實現(xiàn)從紙質(zhì)文檔到數(shù)字化影像文檔的轉化,并進行相應處理以滿足電子存檔的要求。之后,便可以在系統(tǒng)中打開影像化文檔進行后續(xù)錄入、校對及存儲等功能。各主要模塊設計及功能如下。
2.4.1 登錄模塊
為確保銀行信用卡申請件客戶信息的安全,對登錄該系統(tǒng)的人員身份必須進行驗證,以防止非法用戶進入。本系統(tǒng)對該模塊只進行了簡單的設計,即只存在唯一的用戶名和密碼進行身份驗證。而成熟后的系統(tǒng)在該模塊可設計一個人員登錄信息數(shù)據(jù)庫,只要其所填寫的用戶名和密碼符合數(shù)據(jù)庫中某行的信息便可登錄系統(tǒng)[7]。
2.4.2 自動識別模塊
該模塊的主要功能是利用OCR光學字符識別,將掃描影像化后的申請件通過字符識別的方式翻譯成計算機文字;而基本信息涂黑部分,通過二維坐標實現(xiàn)定位識別,將兩者同時嵌入C#程序中,以完成截取特定字符,實現(xiàn)自動錄入的功能。其界面如圖2所示,此時點擊自動識別按鈕后,所有textbox控件屬性ReadOnly值為true,即均不可修改。
圖2 系統(tǒng)主界面
本文主要介紹涂黑識別部分的編程設計。要實現(xiàn)該功能,首先要對影像化文件進行圖像處理,截取所需識別的方框部分。由于手寫涂黑可能存在方框內(nèi)有部分白點的情況,故不采用對某一坐標進行RGB值判定,避免人為誤差因素。利用黑與白的RGB值分別為0與255,運用函數(shù)對所截取區(qū)域進行循環(huán),判斷像素是否為黑,并提取所選區(qū)域像素平均值來識別是否為涂黑選項。截取坐標和區(qū)域?qū)挾群?,調(diào)用函數(shù)對所有基本信息中的涂黑項進行識別,利用條件語句進行判斷,并將信息返回到窗口中顯示。
2.4.3 人工校對及修正模塊
在自動識別完成后,申請件信息會自動填寫到相應的textbox控件中,但是由于自動識別仍會存在正確率不高的缺陷,因此本系統(tǒng)利用人工校對及修改功能來糾正錯誤,以保證錄入數(shù)據(jù)庫中的申請件信息準確無誤。
在點擊人工校對按鈕后,所有的textbox控件和radioButton控件由只讀變?yōu)榭尚薷?,點擊一個textbox,則影像化文檔中相對應的信息會被框出,以方便校對。此功能的實現(xiàn)采用了最簡潔精確的坐標定位法,即取出申請件中每一個需要錄入的文本框或單選框的坐標,在點擊textbox控件時觸發(fā)事件。畫框的主要功能是利用了System.Drawing下的Graphics類和Pen類[8]。結果如圖3所示。
圖3 姓名校對
2.4.4 數(shù)據(jù)存儲模塊
數(shù)據(jù)存儲模塊實現(xiàn)的功能主要是將錄入的信息數(shù)據(jù)存儲入SQL數(shù)據(jù)表中的對應列。
要實現(xiàn)數(shù)據(jù)存儲,首先要連接數(shù)據(jù)庫。連接使用System.Data.SqlClient命名空間下的SqlConnection類。通過using System.Data.SqlClient命名空間。連接數(shù)據(jù)庫后,通過調(diào)用SqlConnection對象的Open方法打開數(shù)據(jù)庫。數(shù)據(jù)存儲需要先定義所需的各類字符串,然后利用SQL insert語句將數(shù)據(jù)存入數(shù)據(jù)庫。
2.4.5 管理員處理模塊
錄入信息完畢后,若想再查看或調(diào)用信息,則可點擊“以管理員身份查看”按鈕實現(xiàn)對數(shù)據(jù)庫數(shù)據(jù)進行查詢和刪除等操作。其界面如圖4所示。
圖4 管理員處理界面
以管理員身份登陸后,進入信用卡申請件數(shù)據(jù)庫窗口,在窗口中可以根據(jù)姓名、性別或證件號碼進行查找。
連接數(shù)據(jù)庫后,點擊查找按鈕,每一個textbox中所填入的信息會與數(shù)據(jù)庫中對應字段查詢匹配,從而實現(xiàn)查詢功能。使用ExecuteNonQuery方法在使用SqlCommand向數(shù)據(jù)庫發(fā)送刪除命令時執(zhí)行SQL刪除語句。
本文設計并實現(xiàn)了一種基于C#和SQL Server的信用卡申請件影像化處理系統(tǒng),在實現(xiàn)傳統(tǒng)的數(shù)據(jù)錄入、存儲、查詢等基本功能外,添加了自動識別功能,不僅便于管理、調(diào)用申請件信息,還大大降低了銀行在該方面的人力成本。在下一步的工作中,主要努力提升自動識別的正確率,使其真正做到信息化管理。
[1]呂歡歡,劉萬軍.SCA規(guī)范在信用卡申請系統(tǒng)中的應用[J].計算機系統(tǒng)應用,2009(11):165-168.
[2]張明.銀行業(yè)務數(shù)據(jù)管理系統(tǒng)的設計與實現(xiàn)[D].成都:電子科技大學,2011.
[3]王進.B/S模式下的三層架構模式[J].軟件導刊,2011(3):30-31.
[4]張露,馬麗.數(shù)據(jù)庫設計[J].安陽工學院學報,2007(4):76-79.
[5]段遠志.數(shù)據(jù)庫設計方法[J].南昌教育學院學報,2005,20(4):84-86,89.
[6]歐微,程嵐,陳圣榮.基于 C#的數(shù)據(jù)庫表結構報表系統(tǒng)的設計與實現(xiàn)[J].微型機與應用,2013,32(21):7-9.
[7]明日科技,王小科,呂雙,編著.C#程序設計標準教程[M].北京:人民郵電出版社,2009.
[8]吳春麗,謝穎華,張琴,等.基于 C#和 SQL的信用卡申請件處理系統(tǒng)[J].微計算機信息,2011(10):83-85,126.