(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025021073
(43)【公開日】2025-02-13
(54)【発明の名称】画像処理装置、画像処理システム、画像処理方法及び制御プログラム
(51)【国際特許分類】
G06F 16/383 20190101AFI20250205BHJP
G06Q 30/06 20230101ALI20250205BHJP
G06F 3/0487 20130101ALI20250205BHJP
【FI】
G06F16/383
G06Q30/06
G06F3/0487
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023124789
(22)【出願日】2023-07-31
(71)【出願人】
【識別番号】000136136
【氏名又は名称】株式会社PFU
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100114018
【弁理士】
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100180806
【弁理士】
【氏名又は名称】三浦 剛
(72)【発明者】
【氏名】深澤 貴彦
【テーマコード(参考)】
5B175
5E555
5L030
5L049
【Fターム(参考)】
5B175DA01
5B175FA01
5B175FB03
5B175GC03
5E555AA13
5E555BA10
5E555BA82
5E555BA83
5E555BB10
5E555BC19
5E555BD01
5E555DB49
5E555EA16
5E555EA24
5E555EA27
5E555FA00
5L030BB72
5L049BB72
(57)【要約】
【課題】スキャン画像から認識した文字を、利用者の作業負担を軽減させつつ、効率良く管理することが可能な画像処理装置、画像処理システム、画像処理方法及び制御プログラムを提供する。
【解決手段】画像処理装置は、スキャン画像から認識した文字と、利用者から受け付けた、スキャン画像から文字を認識する目的とを取得する第1取得部と、第1取得部が取得した文字及び目的を含む指示構文を生成する生成部と、指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された出力情報を取得する第2取得部と、出力情報に関する情報を出力する出力制御部と、を有する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
スキャン画像から認識した文字と、利用者から受け付けた、前記スキャン画像から文字を認識する目的とを取得する第1取得部と、
前記第1取得部が取得した文字及び目的を含む指示構文を生成する生成部と、
前記指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された出力情報を取得する第2取得部と、
前記出力情報に関する情報を出力する出力制御部と、
を有することを特徴とする画像処理装置。
【請求項2】
前記第1取得部は、利用者から受け付けた、前記スキャン画像に含まれる媒体の種類をさらに取得し、
前記生成部は、前記第1取得部が取得した媒体の種類をさらに含むように前記指示構文を生成する、請求項1に記載の画像処理装置。
【請求項3】
前記第1取得部は、利用者から受け付けた前記出力情報に対する確認結果を取得し、
前記生成部は、前記第1取得部が取得した確認結果に基づいて、前記指示構文を修正し、
前記第2取得部は、前記修正された指示構文を大規模言語モデルに入力する、請求項1または2に記載の画像処理装置。
【請求項4】
指示構文のひな型を記憶する記憶部をさらに有し、
前記生成部は、前記ひな型に従って前記指示構文を生成し、
前記第1取得部は、利用者から受け付けた前記出力情報に対する確認結果を取得し、
前記取得した確認結果に基づいて、前記ひな型を更新する更新部をさらに有する、請求項1または2に記載の画像処理装置。
【請求項5】
媒体の種類毎に指示構文のひな型を記憶する記憶部をさらに有し、
前記第1取得部は、前記取得した文字に基づいて、前記スキャン画像に含まれる媒体の種類を取得する、請求項1または2に記載の画像処理装置。
【請求項6】
前記生成部は、前記出力情報に基づいて、ファイル名の提案を要求する第2指示構文を生成し、
前記第2取得部は、前記第2指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された第2出力情報を取得し、
前記出力制御部は、前記第2出力情報に関する情報を出力する、請求項1または2に記載の画像処理装置。
【請求項7】
複数の装置を有する画像処理システムであって、
前記複数の装置の何れかが、スキャン画像から認識した文字と、利用者から受け付けた、前記スキャン画像から文字を認識する目的とを取得する第1取得部を有し、
前記複数の装置の何れかが、前記第1取得部が取得した文字及び目的を含む指示構文を生成する生成部を有し、
前記複数の装置の何れかが、前記指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された出力情報を取得する取得部を有し、
前記複数の装置の何れかが、前記出力情報に関する情報を出力する出力制御部を有する、
ことを特徴とする画像処理システム。
【請求項8】
スキャン画像から認識した文字と、利用者から受け付けた、前記スキャン画像から文字を認識する目的とを取得し、
前記取得した文字及び目的を含む指示構文を生成し、
前記指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された出力情報を取得し、
前記出力情報に関する情報を出力する、
ことを特徴とする画像処理方法。
【請求項9】
コンピュータの制御プログラムであって、
スキャン画像から認識した文字と、利用者から受け付けた、前記スキャン画像から文字を認識する目的とを取得し、
前記取得した文字及び目的を含む指示構文を生成し、
前記指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された出力情報を取得し、
前記出力情報に関する情報を出力する、
ことを前記コンピュータに実行させることを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理システム、画像処理方法及び制御プログラムに関する。
【背景技術】
【0002】
近年、帳票等の媒体のデータ入力業務の自動化のために、媒体が撮像されたスキャン画像から文字を認識する画像処理装置が開発されている。このような画像処理装置は、媒体に含まれる文字を適切に管理するために、認識した文字のうち、管理すべき項目(会社名、金額等)を示す文字を特定する必要がある。
【0003】
言語モデルを効率的に使用するためのプロンプトを開発および最適化するために、プロンプトエンジニアリングが使用されている(非特許文献1を参照)。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】「Prompt Engineering Guide」、インターネット<URL:https://www.promptingguide.ai/jp>
【発明の概要】
【発明が解決しようとする課題】
【0005】
画像処理装置では、スキャン画像から認識した文字を、利用者の作業負担を軽減させつつ、効率良く管理することが望まれている。
【0006】
本発明の目的は、スキャン画像から認識した文字を、利用者の作業負担を軽減させつつ、効率良く管理することが可能な画像処理装置、画像処理システム、画像処理方法及び制御プログラムを提供することにある。
【課題を解決するための手段】
【0007】
本発明の一側面に係る画像処理装置は、スキャン画像から認識した文字と、利用者から受け付けた、スキャン画像から文字を認識する目的とを取得する第1取得部と、第1取得部が取得した文字及び目的を含む指示構文を生成する生成部と、指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された出力情報を取得する第2取得部と、出力情報に関する情報を出力する出力制御部と、を有する。
【0008】
本発明の一側面に係る画像処理システムは、複数の装置を有する画像処理システムであって、複数の装置の何れかが、スキャン画像から認識した文字と、利用者から受け付けた、スキャン画像から文字を認識する目的とを取得する第1取得部を有し、複数の装置の何れかが、第1取得部が取得した文字及び目的を含む指示構文を生成する生成部を有し、複数の装置の何れかが、指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された出力情報を取得する取得部を有し、複数の装置の何れかが、出力情報に関する情報を出力する出力制御部を有する。
【0009】
本発明の一側面に係る画像処理方法は、スキャン画像から認識した文字と、利用者から受け付けた、スキャン画像から文字を認識する目的とを取得し、取得した文字及び目的を含む指示構文を生成し、指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された出力情報を取得し、出力情報に関する情報を出力する。
【0010】
本発明の一側面に係る制御プログラムは、コンピュータの制御プログラムであって、スキャン画像から認識した文字と、利用者から受け付けた、スキャン画像から文字を認識する目的とを取得し、取得した文字及び目的を含む指示構文を生成し、指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された出力情報を取得し、出力情報に関する情報を出力することをコンピュータに実行させる。
【発明の効果】
【0011】
本発明によれば、画像処理装置、画像処理システム、画像処理方法及び制御プログラムは、スキャン画像から認識した文字を、利用者の作業負担を軽減させつつ、効率良く管理することが可能となる。
【図面の簡単な説明】
【0012】
【
図1】実施形態に従った画像処理システム1の概略構成を示す図である。
【
図2】第3記憶装置310及び第3処理回路320の概略構成を示す図である。
【
図3】ひな型テーブルのデータ構造について説明するための模式図である。
【
図4】ファイル生成処理の動作の例を示すシーケンスである。
【
図5】スキャン画像500の一例を示す模式図である。
【
図6】(A)はひな型600の一例を示す模式図であり、(B)は第1指示構文610の一例を示す模式図である。
【
図7】第1出力情報700の一例を示す模式図である。
【
図8】フィードバック処理の動作の例を示すフローチャートである。
【
図9】(A)は第2指示構文900の一例を示す模式図であり、(B)は第2出力情報910の一例を示す模式図である。
【
図10】第1出力情報1000を示す模式図である。
【
図11】他のファイル生成処理の動作の一部の例を示すシーケンスである。
【
図12】他の第3処理回路520の概略構成を示すブロック図である。
【発明を実施するための形態】
【0013】
以下、本発明の一側面に係る画像処理装置、画像処理システム、画像処理方法及び制御プログラムについて図を参照しつつ説明する。但し、本発明の技術的範囲はそれらの実施の形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶ点に留意されたい。
【0014】
図1は、実施形態に従った画像処理システム1の概略構成を示す図である。
【0015】
図1に示すように、画像処理システム1は、画像読取装置100、クライアント装置200、サーバ装置300及びLLM(Large Language Models)サーバ装置400等を有する。画像読取装置100、クライアント装置200、サーバ装置300及びLLMサーバ装置400は、ネットワークNを介して、相互に通信接続されている。ネットワークNは、インターネット、イントラネット等である。画像読取装置100、クライアント装置200及びサーバ装置300は、画像処理装置の一例である。LLMサーバ装置400は、大規模言語モデルが記憶されたサーバである。大規模言語モデルは、例えばChatGPT(Chat Generative Pre-trained Transformer)で用いられるGPT-3、GPT-3.5、GPT-4等である。LLMサーバ装置400は、クラウドネットワークに設けられたサーバでもよい。
【0016】
画像読取装置100は、例えばスキャナ装置である。スキャナ装置は、原稿である媒体を搬送しながら撮像するADF(Auto Document Feeder)タイプのスキャナ装置、又は、媒体を固定して撮像するフラットベッドタイプのスキャナ装置を含む。媒体は、レシート、請求書もしくは納品書等の帳票、又は、名刺、契約書もしくは説明書等の文書等、様々な種類の媒体を含む。画像読取装置100は、媒体を撮像する携帯電話、スマートフォン、タブレット型コンピュータ、ノート型パーソナルコンピュータ等でもよい。
【0017】
画像読取装置100は、第1通信装置101と、第1入力装置102と、第1表示装置103と、撮像装置104と、第1記憶装置110と、第1処理回路120とを有する。
【0018】
第1通信装置101は、有線LAN(Local Area Network)等の所定の通信プロトコルに従って有線通信回線を通じて信号の送受信を行うための有線通信インタフェース回路を有する。第1通信装置101は、第1処理回路120からの指示に従って、クライアント装置200と画像データ及び各種の情報を送受信する。なお、第1通信装置101は、無線信号を送受信するアンテナと、無線LAN等の所定の通信プロトコルに従って無線通信回線を通じて信号の送受信を行うための無線通信インタフェース回路とを有してもよい。
【0019】
第1入力装置102は、ボタン等の入力デバイス及び入力デバイスから信号を取得するインタフェース回路を有し、利用者による操作を受け付け、利用者の操作に応じた信号を第1処理回路120に出力する。
【0020】
第1表示装置103は、液晶、有機EL(Electro-Luminescence)等を含むディスプレイ及びディスプレイに画像データを出力するインタフェース回路を有し、第1処理回路120からの指示に従って、画像データをディスプレイに表示する。
【0021】
撮像装置104は、媒体を撮像したスキャン画像を生成する。撮像装置104は、一次元又は二次元に配列されたCCD(Charge Coupled Device)による撮像素子を備える縮小光学系タイプの撮像センサを有する。さらに、撮像装置104は、光を照射する光源と、撮像素子上に像を結ぶレンズと、撮像素子から出力された電気信号を増幅してアナログ/デジタル(A/D)変換するA/D変換器とを有する。撮像装置104において、撮像センサは、媒体の表面及び/又は裏面を撮像してアナログの画像信号を生成して出力し、A/D変換器は、このアナログの画像信号をA/D変換してデジタルのスキャン画像を生成して第1処理回路120に出力する。なお、CCDの代わりにCMOS(Complementary Metal Oxide Semiconductor)による撮像素子を備える縮小光学系タイプの撮像センサが用いられてもよい。また、CMOS又はCCDによる撮像素子を備える等倍光学系タイプのラインセンサが利用されてもよい。
【0022】
第1記憶装置110は、記憶部の一例であり、RAM(Random Access Memory)、ROM(Read Only Memory)等のメモリ装置、ハードディスク等の固定ディスク装置、又はフレキシブルディスク、光ディスク等の可搬用の記憶装置等を有する。また、第1記憶装置110には、画像読取装置100の各種処理に用いられるコンピュータプログラム、データベース、テーブル等が格納される。コンピュータプログラムは、コンピュータ読み取り可能な可搬型記録媒体から公知のセットアッププログラム等を用いて第1記憶装置110にインストールされてもよい。可搬型記録媒体は、例えばCD-ROM(compact disk read only memory)、DVD-ROM(digital versatile disk read only memory)等である。また、コンピュータプログラムは、サーバ等から配信されて第1記憶装置110にインストールされてもよい。
【0023】
第1処理回路120は、予め第1記憶装置110に記憶されているプログラムに基づいて動作する。第1処理回路120は、例えばCPU(Control Processing Unit)である。なお、第1処理回路120として、DSP(digital signal processor)、LSI(large scale integration)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programming Gate Array)等が用いられてもよい。
【0024】
第1処理回路120は、第1通信装置101、第1入力装置102、第1表示装置103、撮像装置104及び第1記憶装置110等と接続され、これらの各部を制御する。第1処理回路120は、第1通信装置101を介したクライアント装置200とのデータ送受信制御、第1入力装置102の入力制御、第1表示装置103の表示制御、撮像装置104の撮像制御等を行う。
【0025】
クライアント装置200は、パーソナルコンピュータ、ノート型パーソナルコンピュータ、タブレット型コンピュータ、スマートフォン等である。
【0026】
クライアント装置200は、第2通信装置201と、第2入力装置202と、第2表示装置203と、第2記憶装置210と、第2処理回路220とを有する。
【0027】
第2通信装置201は、有線LAN等の所定の通信プロトコルに従って有線通信回線を通じて信号の送受信を行うための有線通信インタフェース回路を有する。第2通信装置201は、第2処理回路220からの指示に従って、画像読取装置100及びサーバ装置300と画像データ及び各種の情報を送受信する。なお、第2通信装置201は、無線信号を送受信するアンテナと、無線LAN等の所定の通信プロトコルに従って無線通信回線を通じて信号の送受信を行うための無線通信インタフェース回路とを有してもよい。
【0028】
第2入力装置202は、キーボード、マウス等の入力装置及び入力装置から信号を取得するインタフェース回路を有し、利用者の操作に応じた信号を第2処理回路220に出力する。
【0029】
第2表示装置203は、液晶、有機EL等を含むディスプレイ及びディスプレイに画像データを出力するインタフェース回路を有し、第2処理回路220からの指示に従って、各種の情報をディスプレイに表示する。
【0030】
第2記憶装置210は、記憶部の一例であり、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、又はフレキシブルディスク、光ディスク等の可搬用の記憶装置等を有する。第2記憶装置210には、クライアント装置200の各種処理に用いられるコンピュータプログラム、データベース、テーブル等が格納される。コンピュータプログラムは、例えばCD-ROM、DVD-ROM等のコンピュータ読み取り可能な可搬型記録媒体から、公知のセットアッププログラム等を用いて第2記憶装置210にインストールされてもよい。また、コンピュータプログラムは、サーバ等から配信されて第2記憶装置210にインストールされてもよい。
【0031】
第2処理回路220は、予め第2記憶装置210に記憶されているプログラムに基づいて動作する。第2処理回路220は、例えばCPUである。なお、第2処理回路220として、DSP、LSI、ASIC、FPGA等が用いられてもよい。
【0032】
第2処理回路220は、第2通信装置201、第2入力装置202、第2表示装置203及び第2記憶装置210等と接続され、これらの各部を制御する。第2処理回路220は、第2通信装置201を介した画像読取装置100及びサーバ装置300とのデータ送受信制御、第2入力装置202の入力制御、第2表示装置203の表示制御等を行う。
【0033】
サーバ装置300は、画像処理システム1の管理者により使用されるサーバである。サーバ装置300は、クラウドネットワークに設けられたサーバでもよい。
【0034】
サーバ装置300は、第3通信装置301と、第3入力装置302と、第3表示装置303と、第3記憶装置310と、第3処理回路320とを有する。
【0035】
第3通信装置301は、有線LAN等の所定の通信プロトコルに従って有線通信回線を通じて信号の送受信を行うための有線通信インタフェース回路を有する。第3通信装置301は、第3処理回路320からの指示に従って、画像読取装置100及びサーバ装置300と画像データ及び各種の情報を送受信する。なお、第3通信装置301は、無線信号を送受信するアンテナと、無線LAN等の所定の通信プロトコルに従って無線通信回線を通じて信号の送受信を行うための無線通信インタフェース回路とを有してもよい。
【0036】
第3入力装置302は、キーボード、マウス等の入力装置及び入力装置から信号を取得するインタフェース回路を有し、利用者の操作に応じた信号を第3処理回路320に出力する。
【0037】
第3表示装置303は、液晶、有機EL等を含むディスプレイ及びディスプレイに画像データを出力するインタフェース回路を有し、第3処理回路320からの指示に従って、各種の情報をディスプレイに表示する。
【0038】
第3記憶装置310は、記憶部の一例であり、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、又はフレキシブルディスク、光ディスク等の可搬用の記憶装置等を有する。第3記憶装置310には、サーバ装置300の各種処理に用いられるコンピュータプログラム、データベース、テーブル等が格納される。コンピュータプログラムは、例えばCD-ROM、DVD-ROM等のコンピュータ読み取り可能な可搬型記録媒体から、公知のセットアッププログラム等を用いて第3記憶装置310にインストールされてもよい。また、コンピュータプログラムは、サーバ等から配信されて第3記憶装置310にインストールされてもよい。
【0039】
第3記憶装置310には、データとして、ひな型テーブル等が予め記憶される。ひな型テーブルの詳細については後述する。
【0040】
第3処理回路320は、予め第3記憶装置310に記憶されているプログラムに基づいて動作する。第3処理回路320は、例えばCPUである。なお、第3処理回路320として、DSP、LSI、ASIC、FPGA等が用いられてもよい。
【0041】
第3処理回路320は、第3通信装置301、第3入力装置302、第3表示装置303及び第3記憶装置310等と接続され、これらの各部を制御する。第3処理回路320は、第3通信装置301を介したクライアント装置200及びLLMサーバ装置400とのデータ送受信制御、第3入力装置302の入力制御、第3表示装置303の表示制御等を行う。
【0042】
図2は、第3記憶装置310及び第3処理回路320の概略構成を示す図である。
【0043】
図2に示すように、第3記憶装置310には、第1取得プログラム311、生成プログラム312、第2取得プログラム313、出力制御プログラム314及び更新プログラム315等が記憶される。これらの各プログラムは、プロセッサ上で動作するソフトウェアにより実装される機能モジュールである。第3処理回路320は、第3記憶装置310に記憶された各プログラムを読み取り、読み取った各プログラムに従って動作することにより、第1取得部321、生成部322、第2取得部323、出力制御部324及び更新部325として機能する。
【0044】
図3は、ひな型テーブルのデータ構造について説明するための模式図である。
【0045】
図3に示すように、ひな型テーブルには、媒体の種類毎に、第1指示構文のひな型が記憶される。媒体の種類は、例えばレシート、請求書、納品書、名刺、契約書、説明書等である。第1指示構文は、指示構文の一例である。第1指示構文は、大規模言語モデルに入力する入力構文であり、大規模言語モデルに対する指示又は質問を表現するためのテキストの構文(テキスト文)、即ち大規模言語モデルが回答するために提示する質問又は命令文である。第1指示構文は、例えば、ChatGPTのプロンプトである。第1指示構文のひな型は、媒体の種類に応じた、第1指示構文のテンプレートである。
【0046】
図4は、ファイル生成処理の動作の例を示すシーケンスである。
【0047】
以下、
図4に示したシーケンスを参照しつつ、画像処理システム1のファイル生成処理の動作の例を説明する。なお、以下に説明する動作は、画像処理システム1が有する各装置の各記憶装置に予め記憶されているプログラムに基づき主に各装置の各処理回路により各装置の各要素と協働して実行される。
【0048】
最初に、クライアント装置200の第2処理回路220は、スキャン画像を取得する(ステップS101)。第2処理回路220は、第2通信装置201を介して画像読取装置100に、スキャン画像の取得を要求する要求信号を送信する。画像読取装置100の第1処理回路120は、第1通信装置101を介してクライアント装置200から要求信号を受信した場合、撮像装置104が生成したスキャン画像を、第1通信装置101を介してクライアント装置200に送信する。第2処理回路220は、第2通信装置201を介して画像読取装置100からスキャン画像を受信することにより取得する。スキャン画像は、画像読取装置100により生成された画像に限定されず、媒体を撮像した画像であれば、どのような画像でもよい。第2処理回路220は、不図示のインタフェース回路を介して利用者から入力されたスキャン画像を受信することにより取得してもよい。また、第2処理回路220は、第2記憶装置210から予め記憶されていたスキャン画像を読み出すことにより取得してもよい。
【0049】
図5は、スキャン画像500の一例を示す模式図である。
【0050】
図5に示すスキャン画像500には、媒体としてレシートが撮像されている。スキャン画像500には、店舗情報501、概要情報502、購入情報503、付属情報504等が含まれている。店舗情報501には、そのレシートを発行した店舗の名称、住所、電話番号、営業時間等が含まれている。概要情報502には、レシートを発行した日時、レシートの識別番号、購入者による支払方法等が含まれている。購入情報503には、購入した商品毎の商品名、単価、数量及び小計と、その合計金額と、消費税と、税込金額と、預かり金額と、お釣りとが含まれている。付属情報504には、ポイント会員を募集する旨等が含まれている。
【0051】
次に、第2処理回路220は、利用者から、スキャン画像から文字を認識する目的と、スキャン画像に含まれる媒体の種類とを受け付ける(ステップS102)。第2処理回路220は、利用者により第2入力装置202を用いて入力された、スキャン画像から文字を認識する目的、及び、スキャン画像に含まれる媒体の種類の指定を受け付ける。スキャン画像から文字を認識する目的として、どのような背景によりデータを取得するかが指定される。スキャン画像から文字を認識する目的は、「経費申請のためのデータ取得」、「請求書処理におけるデータ入力に必要な項目取得」、「住所録の作成」、「納品物の整理」、「名刺管理」、「契約締結のための重要事項の抽出」等、任意の形式を有する。第2処理回路220は、スキャン画像から文字を認識する目的及び/又は媒体の種類として、予め定められた複数の候補を選択可能に第2表示装置203に表示し、利用者による選択を受け付けてもよい。
【0052】
次に、第2処理回路220は、第2通信装置201を介してサーバ装置300に、ステップS101で取得したスキャン画像、並びに、ステップS102で受け付けた目的及び媒体の種類を示す情報を送信する(ステップS103)。
【0053】
一方、サーバ装置300の第1取得部321は、第3通信装置301を介してクライアント装置200から、スキャン画像、並びに、スキャン画像から文字を認識する目的、及び、スキャン画像に含まれる媒体の種類を示す情報を受信する(ステップS104)。これにより、第1取得部321は、スキャン画像、並びに、利用者から受け付けた、スキャン画像から文字を認識する目的、及び、スキャン画像に含まれる媒体の種類を取得する。なお、第1取得部321は、不図示のインタフェース回路を介して利用者から入力されたスキャン画像を受信することにより取得してもよい。また、第1取得部321は、第3記憶装置310から予め記憶されていたスキャン画像を読み出すことにより取得してもよい。また、第1取得部321は、利用者により第3入力装置302を用いて入力された、スキャン画像から文字を認識する目的、及び、スキャン画像に含まれる媒体の種類の指定を受け付けてもよい。
【0054】
次に、第1取得部321は、スキャン画像に対してOCR(Optical Character Recognition)処理を実行し、スキャン画像から文字を認識する(ステップS105)。これにより、第1取得部321は、スキャン画像から認識した文字を取得する。また、第1取得部321は、スキャン画像から認識した各文字(文字列)を所定の順序に従って並べ替える(例えば左上の文字から右側に向かって順次走査していき、改行が検出された場合に次の行を走査していく)。第1取得部321は、スキャン画像から認識した文字のうち、予め登録された帳票認識に不要な文言、又は、予め登録された文言以外の帳票認識に不要な文言を削除してもよい。
【0055】
次に、生成部322は、ひな型テーブルから、ステップS104で取得した媒体の種類に対応するひな型を読み出す(ステップS106)。
【0056】
図6(A)は、ひな型600の一例を示す模式図である。
【0057】
図6(A)に示すひな型600は、レシートに対応するひな型である。ひな型600には、指令文601、種類指定文602、目的指定文603、出力形式指定文604、OCR結果指定文605等が含まれている。指令文601は、大規模言語モデルに対する指令であり、指令文601として、例えば、指定した種類の媒体に対するOCR結果から、指定した目的に応じて、適切な項目を抽出し、指定した出力形式で出力する指令が記述される。種類指定文602は、スキャン画像に含まれる媒体の種類を指定する文である。種類指定文602には、そのひな型に対応する媒体の種類が予め記述されていてもよい。目的指定文603は、スキャン画像から文字を認識する目的を指定する文である。出力形式指定文604は、出力形式を指定する文である。出力形式は、JSON形式、CSV形式、XML形式等である。出力形式指定文604には、予め定められた形式が予め記述されていてもよい。OCR結果指定文605は、スキャン画像から認識した文字を指定する文である。
【0058】
次に、生成部322は、第1取得部321が取得した文字、目的及び媒体の種類を含む第1指示構文を生成する(ステップS107)。生成部322は、ステップS106で読み出したひな型に従って、第1指示構文を生成する。
【0059】
図6(B)は、第1指示構文610の一例を示す模式図である。
【0060】
図6(B)に示す第1指示構文610は、
図6(A)に示したひな型600に従って、
図5に示したスキャン画像500から認識された文字が含まれるように生成された第1指示構文である。
図6(B)に示すように、指令文601は、ひな型600から変更されていない。種類指定文602及び目的指定文603には、それぞれ第1取得部321が取得した目的及び媒体の種類が記述される。出力形式指定文604には特定(所望)の出力形式が記述される。ひな型600において種類指定文602及び/又は出力形式指定文604に媒体の種類が予め記述されている場合、種類指定文602及び/又は出力形式指定文604は変更されなくてもよい。OCR結果指定文605には、第1取得部321が取得した文字が記述される。
【0061】
次に、第2取得部323は、生成部322が生成した第1指示構文と、第1指示構文を大規模言語モデルに入力することを要求する要求情報とを、第3通信装置301を介してLLMサーバ装置400に送信する(ステップS108)。
【0062】
一方、LLMサーバ装置400は、サーバ装置300から第1指示構文及び要求情報を受信する。LLMサーバ装置400は、受信した第1指示構文を、LLMサーバ装置400に記憶された大規模言語モデルに入力し、大規模言語モデルから出力された第1出力情報を取得する(ステップS109)。第1出力情報は、出力情報の一例である。
【0063】
図7は、第1出力情報700の一例を示す模式図である。
【0064】
図7に示す第1出力情報700は、大規模言語モデルに
図6(B)に示した第1指示構文610が入力されたときに大規模言語モデルから出力された情報である。第1出力情報700には、店舗情報701、概要情報702、購入情報703等が含まれている。店舗情報701には、スキャン画像500の店舗情報501のうち、店舗の名称及び住所のみが含まれ、店舗の電話番号及び営業時間は含まれていない。概要情報702には、スキャン画像500の概要情報502のうち、レシートの識別番号のみが含まれ、レシートを発行した日時、及び、購入者による支払方法は含まれていない。購入情報703には、スキャン画像500の購入情報503のうち、購入した商品毎の商品名、単価、数量及び小計と、その合計金額と、消費税と、税込金額のみが含まれ、預かり金額及びお釣りは含まれていない。また、第1出力情報700には、スキャン画像500の付属情報504に対応する情報は含まれていない。
【0065】
このように、第1出力情報には、OCR結果から構造化されたデータが含まれる。第1出力情報には、スキャン画像から認識された文字のうち、スキャン画像から文字を認識する目的(経費申請のためのデータ抽出)に対応する文字のみが適切に含まれている。また、各項目について事前に設定されていないにもかかわらず、スキャン画像に文字として含まれていなかった「店名」、「住所」等の項目名が推定されて、第1出力情報に記述されている。さらに、文字の羅列でしかなかった商品の情報も、第1出力情報において表形式に整理されて区分されている。また、
図7に示す第1出力情報は、JSON形式で記述されているため、後段の処理において処理しやすい形式を有している。
【0066】
次に、LLMサーバ装置400は、取得した第1出力情報をサーバ装置300に送信する(ステップS110)。
【0067】
一方、サーバ装置300の第2取得部323は、第3通信装置301を介してLLMサーバ装置400から第1出力情報を受信することにより取得する(ステップS111)。これにより、第2取得部323は、生成部322が生成した第1指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された第1出力情報を取得する。なお、第2取得部323は、取得した第1出力情報を利用者が利用するシステムに適合するように変換又は編集してもよい。
【0068】
次に、出力制御部324は、第2取得部323が取得した第1出力情報、又は、第2取得部323が変換又は編集した第1出力情報を、第3通信装置301を介してクライアント装置200に送信することにより出力する(ステップS112)。第2取得部323が取得した第1出力情報、又は、第2取得部323が変換又は編集した第1出力情報は、出力情報に関する情報の一例である。なお、出力制御部324は、第2取得部323が取得した第1出力情報、又は、第2取得部323が変換又は編集した第1出力情報を、第3表示装置303に表示することにより出力してもよい。
【0069】
一方、クライアント装置200の第2処理回路220は、第2通信装置201を介してサーバ装置300から第1出力情報を受信する(ステップS113)。
【0070】
次に、第2処理回路220は、受信した第1出力情報を第2表示装置203に表示する(ステップS114)。
【0071】
次に、第2処理回路220は、利用者から、第1出力情報に対する確認結果を受け付ける(ステップS115)。第2処理回路220は、利用者により第2入力装置202を用いて入力された確認結果の指定を受け付ける。確認結果には、例えば、第1出力情報が適切であることを示すOK指示と、第1出力情報が適切でないことを示すNG指示と、ファイル生成処理を完了することを指示する終了指示とが含まれる。確認結果がNG指示を示す場合、第2処理回路220は、確認結果として、さらに利用者から、第1出力情報に対して修正すべき修正項目を受け付ける。修正項目として、例えば、第1出力情報に含まれる項目のうちの不要項目、及び/又は、第1出力情報に含まれていなかった不足項目が指定される。
【0072】
次に、第2処理回路220は、第2通信装置201を介してサーバ装置300に、利用者から受け付けた第1出力情報に対する確認結果を示す情報を送信する(ステップS116)。
【0073】
一方、サーバ装置300の第1取得部321は、第3通信装置301を介してクライアント装置200から確認結果を示す情報を受信する(ステップS117)。これにより、第1取得部321は、利用者から受け付けた第1出力情報に対する確認結果を取得する。なお、第1取得部321は、利用者により第3入力装置302を用いて入力された確認結果を受信して取得してもよい。
【0074】
次に、第3処理回路320は、第1取得部321が取得した確認結果に基づいて、フィードバック処理を実行する(ステップS118)。以上により、ファイル生成処理は、終了する。
【0075】
図8は、フィードバック処理の動作の例を示すフローチャートである。フィードバック処理は、
図4のステップS118において実行される。
【0076】
最初に、第1取得部321は、取得した確認結果がNG指示を示すか否かを判定する(ステップS201)。
【0077】
確認結果がNG指示を示す場合、生成部322は、第1取得部321が取得した確認結果に含まれる修正項目に基づいて、第1指示構文を修正し(ステップS202)、
図4のステップS108へ処理を戻す。生成部322は、第1指示構文の指令文601に、確認結果に含まれる不要項目を抽出せず且つ/又は確認結果に含まれる不足項目を抽出する旨を追記するように、
図4のステップS107で生成した第1指示構文を修正する。例えば、確認結果に不要項目「A」が含まれる場合、第1指示構文の指令文に「Aは必要ない項目なので出力には決して含ませないでください。」という一文が追加される。また、確認結果に不足項目「B」が含まれない場合、第1指示構文の指令文に「Bは必要な項目なので、必ず出力してください。」という一文が追加される。この場合、
図4のステップS108では、第2取得部323は、修正された第1指示構文と、その第1指示構文を大規模言語モデルに入力することを要求する要求情報とをLLMサーバ装置400に送信し、大規模言語モデルに入力する。これにより、画像処理システム1は、利用者のフィードバックに基づいて、スキャン画像から必要な文字をより精度良く抽出することができる。
【0078】
一方、確認結果がNG指示を示していない場合、第1取得部321は、確認結果がOK指示を示すか否かを判定する(ステップS203)。
【0079】
確認結果がOK指示を示す場合、第1取得部321は、現在処理中のスキャン画像について、生成部322が、確認結果に含まれる修正項目に基づいて第1指示構文を修正したか否かを判定する(ステップS204)。生成部322が、確認結果に含まれる修正項目に基づいて第1指示構文を修正していない場合、第1取得部321は、特に処理を実行せずにステップS206へ処理を移行する。
【0080】
一方、生成部322が、確認結果に含まれる修正項目に基づいて第1指示構文を修正している場合、更新部325は、修正された第1指示構文に基づいて、第3記憶装置310に記憶された第1指示構文のひな型を更新する(ステップS205)。更新部325は、対応するひな型、即ち使用したひな型の指令文601を、生成部322が修正(追記)した指令文に置換することにより、第1指示構文のひな型を更新する。このように、更新部325は、第1取得部321が取得した確認結果に基づいて、第1指示構文のひな型を更新する。これにより、次回以降、更新されたひな型に従って第1指示構文が生成されるため、画像処理システム1は、利用者によるフィードバックを得る前に、スキャン画像から適切な文字を抽出できる。したがって、画像処理システム1は、利用者の手間を省きつつ、スキャン画像から必要な文字をより精度良く抽出することができる。
【0081】
次に、生成部322は、大規模言語モデルに対してファイル名の提案を要求する第2指示構文を生成し(ステップS206)、
図4のステップS108へ処理を戻す。生成部322は、第2取得部323が取得した第1出力情報に基づいて、第2指示構文を生成する。第1指示構文が生成される場合と同様に、サーバ装置300は、第2指示構文のひな型を予め第3記憶装置310に記憶しておき、生成部322は、第3記憶装置310に記憶されたひな型に従って、第2指示構文を生成してもよい。
【0082】
図9(A)は、第2指示構文900の一例を示す模式図である。
【0083】
図9(A)に示す第2指示構文900は、
図7に示した第1出力情報700に基づいて生成された第2指示構文である。
図9(A)に示すように、第2指示構文900には、指令文901、ファイル名例指定文902、出力結果指定文903等が含まれている。指令文901は、大規模言語モデルに対する指令であり、指令文901として、例えば、第1出力情報と、ファイル名例とから、適切なファイル名を決定し出力する指令が記述される。ファイル名例指定文902には、ファイル名の例(フォーマット例)が記述される。指令文901及びファイル名例指定文902は、第2指示構文のひな型に記述されていてもよい。出力結果指定文903には、第2取得部323が取得した第1出力情報が記述される。
【0084】
この場合、
図4のステップS108では、第2取得部323は、新たに生成された第2指示構文と、その第2指示構文を大規模言語モデルに入力することを要求する要求情報とをLLMサーバ装置400に送信し、大規模言語モデルに入力する。
図4のステップS109では、LLMサーバ装置400は、サーバ装置300から第2指示構文及び要求情報を受信する。LLMサーバ装置400は、受信した第2指示構文を、LLMサーバ装置400に記憶された大規模言語モデルに入力し、大規模言語モデルから出力された第2出力情報を取得する。
【0085】
図9(B)は、第2出力情報910の一例を示す模式図である。
【0086】
図9(B)に示す第2出力情報910は、大規模言語モデルに
図9(A)に示した第2指示構文900が入力されたときに大規模言語モデルから出力された第2出力情報である。第2出力情報910には、大規模言語モデルが提案するファイル名等が含まれている。大規模言語モデルが提案するファイル名は、第2指示構文で指定されたファイル名に従って提案されている。
【0087】
図4のステップS110では、LLMサーバ装置400は、取得した第2出力情報をサーバ装置300に送信する。
図4のステップS111では、サーバ装置300の第2取得部323は、第3通信装置301を介してLLMサーバ装置400から第2出力情報を受信することにより取得する。
図4のステップS112では、出力制御部324は、第2取得部323が取得した第2出力情報、又は、第2取得部323が変換又は編集した第2出力情報を、第3通信装置301を介してクライアント装置200に送信することにより出力する。第2取得部323が取得した第2出力情報、又は、第2取得部323が変換又は編集した第2出力情報は、第2出力情報に関する情報の一例である。このように、第2取得部323は、第2指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された第2出力情報を取得し、出力制御部324は、第2出力情報に関する情報を出力する。これにより、画像処理システム1は、第1出力情報を適切に管理するためのファイル名を利用者に提案することができ、利用者の利便性を向上させることができる。
【0088】
図4のステップS113では、クライアント装置200の第2処理回路220は、第2通信装置201を介してサーバ装置300から第2出力情報を受信する。
図4のステップS114では、第2処理回路220は、受信した第2出力情報を第2表示装置203に表示する。
図4のステップS114では、第2処理回路220は、利用者から、第2出力情報に対する確認結果として、ファイル生成処理を完了することを指示する終了指示を受け付ける。
【0089】
図8に戻って、ステップS203で確認結果がOK指示を示していなかった場合、即ち確認結果がNG指示及びOK指示の何れでもなかった場合、第1取得部321は、確認結果が終了指示であると判定する。その場合、生成部322は、利用者による確認結果がOK指示であった第1出力情報を含むファイルを生成し、第2出力情報に示されるファイル名を付けて第3記憶装置310に保存する。そして、生成部322は、生成したファイルを、第3通信装置301を介してクライアント装置200に送信することにより出力し(ステップS207)、一連のステップを終了する。なお、クライアント装置200の第2処理回路220は、第2入力装置202を用いて、利用者から第1出力情報及び又は第2出力情報の修正指示を受け付けてもよい。その場合、生成部322は、利用者による修正指示に従って修正した第1出力情報を含むファイルを生成し、且つ/又は、利用者による修正指示に従って修正した第2出力情報に示されるファイル名を付けて第3記憶装置310に保存する。
【0090】
なお、
図4のステップS104において、第1取得部321は、利用者から受け付けた、スキャン画像に含まれる媒体の種類を取得しなくてもよい。その場合、例えば、第1取得部321は、ステップS105においてスキャン画像から認識することにより取得した文字に基づいて、スキャン画像に含まれる媒体の種類を特定する。例えば、サーバ装置300は、媒体の種類毎に、各種類に対応する一又は複数のキーワードを予め第3記憶装置310に記憶しておく。例えば、媒体の種類が請求書である場合、キーワードとして「請求書」、「料金」等が設定される。また、媒体の種類が納品書である場合、キーワードとして「納品書」、「物品」等が設定される。また、媒体の種類がレシートである場合、キーワードとして「レシート」、「商品名」等が設定される。第1取得部321は、第3記憶装置310に記憶されたキーワードを参照し、取得した文字と一致するキーワードに対応する媒体の種類を、スキャン画像に含まれる媒体の種類として特定する。
【0091】
または、第1取得部321は、公知の画像処理技術を利用して、スキャン画像から罫線を抽出する。サーバ装置300は、媒体の種類毎に、各種類の媒体に対応する罫線が配置された画像を予め第3記憶装置310に記憶しておく。第1取得部321は、スキャン画像から抽出した罫線のみを配置した画像と、第3記憶装置310に記憶された各画像との類似度合いを算出し、類似度合いが最も高い画像に対応する種類をスキャン画像に含まれる画像の種類として特定する。類似度は、例えば正規化相互相関値等である。
【0092】
または、第1取得部321は、文字(文字列)又は画像が入力された場合に、媒体の種類を出力するように事前学習された学習モデルにより、媒体の種類を特定してもよい。学習モデルは、例えばニューラルネットワーク、サポートベクターマシン等の教師あり学習により、様々な種類の媒体に含まれる各文字又は様々な種類の媒体が撮像された画像と各媒体の種類とのセットを用いて事前学習され、予め第3記憶装置310に記憶される。第1取得部321は、スキャン画像から認識した文字又はスキャン画像を学習モデルに入力し、学習モデルから出力された媒体の種類を、スキャン画像に含まれる媒体の種類として特定する。
【0093】
これらにより、利用者は、スキャン画像に含まれる媒体の種類を指定する必要がなくなり、画像処理システム1は、利用者の手間を省き、利用者の利便性を向上させることができる。
【0094】
また、第1取得部321は、媒体の種類を取得しなくてもよい。その場合、生成部322は、媒体の種類によらずに予め定められたひな型を用いて、媒体の種類を含まない第1指示構文を生成する。媒体の種類を含まない第1指示構文を用いる場合、媒体の種類を含む第1指示構文を用いる場合と比較して、大規模言語モデルによる必要な項目の抽出精度は低下する可能性がある。しかしながら、この場合も、第1指示構文に、スキャン画像から文字を認識する目的が含まれることにより、大規模言語モデルは、必要な項目を精度良く抽出することができる。即ち、画像処理システム1は、第1指示構文に媒体の種類を含ませない場合、利用者の手間を省きつつスキャン画像から必要な項目を抽出でき、第1指示構文に媒体の種類を含ませる場合、スキャン画像から必要な項目をより高精度に抽出できる。
【0095】
また、スキャン画像がボーンデジタルである場合、ステップS105の処理は省略されてもよい。その場合、第1取得部321は、スキャン画像に含まれる文字と、利用者から受け付けたスキャン画像に含まれる文字を利用する目的と、スキャン画像に含まれる媒体の種類とを取得する。生成部322は、第1取得部321が取得した文字、目的及び媒体の種類を含む第1指示構文を生成する。
【0096】
また、
図4のステップS106の処理は省略され、生成部322は、ひな型を用いずに第1指示構文を生成してもよい。また、
図4のステップS115~S118の処理は省略され、第1取得部321は、利用者からの確認結果を受け付けなくてもよい。また、
図8のステップS201~S202、ステップS204~S205、及び/又は、ステップS206の処理は省略されてもよい。ステップS204~S206の処理が省略される場合、ステップS203の処理も省略される。
【0097】
以下、第1指示構文に、スキャン画像から文字を認識する目的を含ませることの技術的意義について説明する。
【0098】
図10は、スキャン画像から文字を認識する目的を含まない第1指示構文が大規模言語モデルに入力されたときに大規模言語モデルから第1出力情報1000を示す模式図である。
【0099】
図10に示す第1出力情報1000は、
図6(B)に示した第1指示構文610のうち、目的指定文603を含まない第1指示構文が大規模言語モデルに入力されたときに大規模言語モデルから出力された情報である。第1出力情報1000には、店舗情報1001、概要情報1002、購入情報1003、付属情報1004等が含まれている。店舗情報1001には、スキャン画像500の店舗情報501の全て(店舗の名称、住所、電話番号、営業時間)が含まれている。概要情報1002には、スキャン画像500の概要情報502のうち、レシートを発行した日時が含まれていないが、レシートの識別番号及び購入者による支払方法が含まれている。購入情報1003には、スキャン画像500の購入情報503の全て(購入した商品毎の商品名、単価、数量及び小計と、その合計金額と、消費税と、税込金額と、預かり金額と、お釣り)が含まれている。このように、目的を指定した場合の第1出力情報700と比較して、目的を指定していない場合の第1出力情報1000には、経費申請に不要な多数の項目が含まれている。そのため、利用者は、多数の不要項目を指定して、再度、大規模言語モデルから第1出力情報を取得する必要、又は、第1出力情報から多数の不要項目を削除するように第1出力情報を修正する必要がある。
【0100】
画像処理システム1は、スキャン画像から文字を認識する目的を含むように第1指示構文を生成し、大規模言語モデルに入力する。これにより、画像処理システム1は、大規模言語モデルから出力される第1出力情報に、目的と合致しない項目が含まれることを抑制でき、その結果、利用者の手間を省くとともに、ファイル生成処理にかかる処理負荷及び処理時間を低減させることができる。
【0101】
以上詳述したように、画像処理システム1は、媒体が撮像されたスキャン画像から認識された文字に加えて、スキャン画像から文字を認識する目的を含む第1指示構文を大規模言語モデルに入力し、抽出すべき項目を取得する。これにより、画像処理システム1は、スキャン画像から認識した文字から目的と合致する項目を高精度に抽出し、利用者に提供することができる。したがって、画像処理システム1は、スキャン画像から認識した文字を、利用者の作業負担を軽減させつつ、効率良く管理することが可能となった。
【0102】
また、画像処理システム1は、大規模言語モデルを利用することにより、抽出対象項目を事前に設定する必要がなくなる。そのため、画像処理システム1は、媒体内で抽出対象項目が配置されている位置を設定する必要がなくなり、利用者の利便性を向上させることができる。また、画像処理システム1は、抽出対象項目が配置される位置が定まっていない媒体に対しても、抽出対象項目を適切に抽出することができる。一般に、スキャン画像から文字を認識する目的は、業務内容毎に異なり、抽出対象項目は、スキャン画像から文字を認識する目的毎に異なる。したがって、データ入力業務では、業務内容毎に、又は、スキャン画像から文字を認識する目的毎に、抽出対象項目を事前に設定しておく必要がある。画像処理システム1は、スキャン画像から文字を認識する目的を大規模言語モデルに入力することにより、抽出対象項目を、事前に設定しておくことなく、精度良く抽出することができる。
【0103】
図11は、他の実施形態に係るファイル生成処理の動作の一部の例を示すシーケンスである。
【0104】
図11に示すシーケンスは、
図4に示したシーケンスのステップS102~S105の代わりに実行される。
図11に示すシーケンスでは、画像処理システム1は、スキャン画像から文字を認識する目的と、スキャン画像に含まれる媒体の種類とを、大規模言語モデルを利用して取得する。
【0105】
まず、クライアント装置200の第2処理回路220は、第2通信装置201を介してサーバ装置300に、ステップS101で取得したスキャン画像を送信する(ステップS301)。
【0106】
一方、サーバ装置300の第1取得部321は、第3通信装置301を介してクライアント装置200からスキャン画像を受信し、取得する(ステップS302)。
【0107】
次に、第1取得部321は、スキャン画像に対してOCR処理を実行して、スキャン画像から文字を認識し、スキャン画像から認識した文字を取得する(ステップS303)。
【0108】
次に、生成部322は、大規模言語モデルに対して、スキャン画像に含まれる媒体の種類の特定を要求する第3指示構文を生成する(ステップS304)。生成部322は、第1指示構文と同様にして、第1取得部321が取得した文字を含む第3指示構文を生成する。但し、第3指示構文における指令文には、指定したOCR結果から、媒体の種類を特定し、出力する指令が記述される。また、第3指示構文には、種類指定文及び目的指定文が含まれない。第1指示構文が生成される場合と同様に、サーバ装置300は、第3指示構文のひな型を予め第3記憶装置310に記憶しておき、生成部322は、第3記憶装置310に記憶されたひな型に従って、第3指示構文を生成してもよい。
【0109】
次に、第2取得部323は、生成部322が生成した第3指示構文と、その第3指示構文を大規模言語モデルに入力することを要求する要求情報とを、第3通信装置301を介してLLMサーバ装置400に送信する(ステップS305)。
【0110】
一方、LLMサーバ装置400は、サーバ装置300から第3指示構文及び要求情報を受信する。LLMサーバ装置400は、受信した第3指示構文を、LLMサーバ装置400に記憶された大規模言語モデルに入力し、大規模言語モデルから出力された第3出力情報を取得する(ステップS306)。この第3出力情報には、大規模言語モデルによって特定された媒体の種類が含まれる。
【0111】
次に、LLMサーバ装置400は、取得した第3出力情報をサーバ装置300に送信する(ステップS307)。
【0112】
一方、サーバ装置300の第2取得部323は、第3通信装置301を介してLLMサーバ装置400から第3出力情報を受信することにより、媒体の種類を取得する(ステップS308)。これにより、第2取得部323は、生成部322が生成した第3指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された第3出力情報を取得する。
【0113】
次に、生成部322は、大規模言語モデルに対して、スキャン画像から文字を認識する目的について一又は複数の候補の特定を要求する第4指示構文を生成する(ステップS309)。生成部322は、第1指示構文と同様にして、第1取得部321が取得した文字を含む第4指示構文を生成する。但し、第4指示構文における指令文には、指定した種類の媒体に対するOCR結果から、スキャン画像から文字を認識する目的の候補を特定し、出力する指令が記述される。また、第4指示構文には、第2取得部323で取得した媒体の種類を指定する種類指定文が含まれる。一方、第4指示構文には、目的指定文が含まれない。第1指示構文が生成される場合と同様に、サーバ装置300は、第4指示構文のひな型を予め第3記憶装置310に記憶しておき、生成部322は、第3記憶装置310に記憶されたひな型に従って、第4指示構文を生成してもよい。
【0114】
次に、第2取得部323は、生成部322が生成した第4指示構文と、その第4指示構文を大規模言語モデルに入力することを要求する要求情報とを、第3通信装置301を介してLLMサーバ装置400に送信する(ステップS310)。
【0115】
一方、LLMサーバ装置400は、サーバ装置300から第4指示構文及び要求情報を受信する。LLMサーバ装置400は、受信した第4指示構文を、LLMサーバ装置400に記憶された大規模言語モデルに入力し、大規模言語モデルから出力された第4出力情報を取得する(ステップS311)。この第4出力情報には、大規模言語モデルによって特定された、スキャン画像から文字を認識する目的についての一又は複数の候補が含まれる。
【0116】
次に、LLMサーバ装置400は、取得した第4出力情報をサーバ装置300に送信する(ステップS312)。
【0117】
一方、サーバ装置300の第2取得部323は、第3通信装置301を介してLLMサーバ装置400から第4出力情報を受信し、受信した第4出力情報から、スキャン画像から文字を認識する目的の候補を抽出する(ステップS313)。これにより、第2取得部323は、生成部322が生成した第4指示構文を大規模言語モデルに入力し、大規模言語モデルから出力された第4出力情報を取得する。
【0118】
次に、出力制御部324は、第2取得部323が抽出した、スキャン画像から文字を認識する目的の候補を示す情報を、第3通信装置301を介してクライアント装置200に送信する(ステップS314)。
【0119】
一方、クライアント装置200の第2処理回路220は、第2通信装置201を介してサーバ装置300から、スキャン画像から文字を認識する目的の候補を示す情報を受信する(ステップS315)。
【0120】
次に、第2処理回路220は、スキャン画像から文字を認識する目的の候補を、選択可能に第2表示装置203に表示する(ステップS316)。
【0121】
次に、第2処理回路220は、利用者による、選択可能に表示された目的の候補の中から、スキャン画像から文字を認識する目的の選択を受け付ける(ステップS317)。第2処理回路220は、利用者により第2入力装置202を用いて選択された目的の選択を受け付ける。
【0122】
次に、第2処理回路220は、第2通信装置201を介してサーバ装置300に、利用者により選択された目的を示す情報を送信する(ステップS318)。
【0123】
一方、サーバ装置300の第1取得部321は、第3通信装置301を介してクライアント装置200から、利用者により選択された目的を示す情報を受信する(ステップS319)。これにより、第1取得部321は、利用者から受け付けた、スキャン画像から文字を認識する目的を取得する。以降、
図4のステップS106~S118の処理が実行される。ステップS106において、生成部322は、ひな型テーブルから、ステップS308で取得された媒体の種類に対応するひな型を読み出す。ステップS107において、生成部322は、ステップS303で取得された文字、ステップS319で取得されたスキャン画像から文字を認識する目的、及び、ステップS303で取得された媒体の種類を含む第1指示構文を生成する。
【0124】
なお、同一目的及び同一種類の媒体についてファイル生成処理が実行される場合、二回目以降のファイル生成処理においては、ステップS304~S319の処理が省略され、初回に取得又は修正された目的及び媒体の種類を用いて指示構文が生成されてもよい。
【0125】
以上詳述したように、画像処理システム1は、文字を認識する目的及び媒体の種類を、大規模言語モデルを利用して取得する場合も、スキャン画像から認識した文字を、利用者の作業負担を軽減させつつ、効率良く管理することが可能となった。
【0126】
特に、画像処理システム1は、利用者がデータ入力業務に不慣れな場合でも、文字を認識する目的及び媒体の種類を適切に設定することができ、その結果、スキャン画像から認識した文字から、必要な項目を精度良く抽出することが可能となった。
【0127】
図12は、他の実施形態に係るサーバ装置における第3処理回路520の概略構成を示すブロック図である。
【0128】
第3処理回路520は、第3処理回路320の代わりに用いられ、ファイル生成処理等を実行する。第3処理回路320は、第1取得回路521、生成回路522、第2取得回路523、出力制御回路524及び更新回路525等を有する。
【0129】
第1取得回路521は、第1取得部の一例であり、第1取得部321と同様の機能を有する。第1取得回路521は、第3通信装置301からスキャン画像、並びに、スキャン画像から文字を認識する目的、及び、スキャン画像に含まれる媒体の種類を示す情報を受信し、第3記憶装置310に記憶する。また、第1取得回路521は、スキャン画像から文字を認識し、第3記憶装置310に記憶する。また、第1取得回路521は、第3通信装置301から、利用者から受け付けた第1出力情報に対する確認結果を受信し、第3記憶装置310に記憶する。
【0130】
生成回路522は、生成部の一例であり、生成部322と同様の機能を有する。生成回路522は、第3記憶装置310から、スキャン画像から認識された文字、スキャン画像から文字を認識する目的、スキャン画像に含まれる媒体の種類、第1出力情報、及び/又は、第1出力情報に対する確認結果を読み出す。生成回路522は、読み出した各情報に基づいて、第1指示構文及び/又は第2指示構文を生成し、第3記憶装置310に記憶する。
【0131】
第2取得回路523は、第2取得部の一例であり、第2取得部323と同様の機能を有する。第2取得回路523は、第3記憶装置310から第1指示構文及び/又は第2指示構文を読み出し、第3通信装置301を介してLLMサーバ装置400に送信する。第2取得回路523は、第3通信装置301を介してLLMサーバ装置400から第1出力情報及び/又は第2出力情報等を受信し、第3記憶装置310に記憶する。
【0132】
出力制御回路524は、出力制御部の一例であり、出力制御部324と同様の機能を有する。出力制御回路524は、第3記憶装置310から第1出力情報及び/又は第2出力情報等を読み出し、第3通信装置301に出力する。
【0133】
更新回路525は、更新部の一例であり、更新部325と同様の機能を有する。更新回路525は、第3記憶装置310から、利用者から受け付けた第1出力情報に対する確認結果、及び、第1指示構文のひな型を読み出し、読み出した確認結果に基づいてひな型を更新し、第3記憶装置310に記憶する。
【0134】
以上詳述したように、サーバ装置は、第3処理回路520を用いる場合も、スキャン画像から認識した文字を、利用者の作業負担を軽減させつつ、効率良く管理することが可能となった。
【0135】
以上、好適な実施形態について説明してきたが、実施形態はこれらに限定されない。例えば、大規模言語モデルは、LLMサーバ装置400に記憶されるのでなく、サーバ装置300の第3記憶装置310に予め記憶されてもよい。その場合、
図4のステップS108~S111の処理は省略され、第2取得部323は、第1指示構文を、第3記憶装置310に記憶された大規模言語モデルに入力し、大規模言語モデルから出力された第1出力情報を取得する。
【0136】
また、ステップS105~S108、S111、S118の処理は、サーバ装置300でなく、クライアント装置200により実行されてもよい。その場合、クライアント装置200の第2記憶装置210には、第3記憶装置310に記憶される各プログラム、データベース、テーブル、情報等が記憶される。第2処理回路220は、第2記憶装置210に記憶された各プログラムを読み取り、読み取った各プログラムに従って動作することにより、第1取得部、生成部、第2取得部、出力制御部及び更新部として機能する。第2処理回路220の第1取得部、生成部、第2取得部、出力制御部及び更新部は、第3処理回路320の第1取得部321、生成部322、第2取得部323、出力制御部324及び更新部325と同様の機能を有する。
【0137】
ステップS103~S104の処理は省略され、クライアント装置200の第1取得部は、ステップS102において、利用者から受け付けた、スキャン画像から文字を認識する目的、及び、スキャン画像に含まれる媒体の種類を取得する。ステップS108において、クライアント装置200の第2取得部は、各指示構文及び要求情報を、第2通信装置201を介してLLMサーバ装置400に送信する。ステップS111において、クライアント装置200の第2取得部は、第2通信装置201を介してLLMサーバ装置400から各出力情報を受信する。ステップS112~S113の処理は省略される。ステップS114において、クライアント装置200の出力制御部は、各出力情報を第2表示装置203に表示することにより出力する。ステップS116~S117の処理は省略され、
図6のステップS207において、クライアント装置200の生成部は、生成したファイルを第2表示装置203に表示することにより出力する。
【0138】
同様に、
図11に示すファイル生成処理においても、サーバ装置300により実行される各処理は、クライアント装置200により実行されてもよい。
【0139】
これらの場合、大規模言語モデルは、LLMサーバ装置400に記憶されるのでなく、クライアント装置200の第2記憶装置210に予め記憶されてもよい。その場合、クライアント装置200の第2取得部は、各指示構文を、第2記憶装置210に記憶された大規模言語モデルに入力し、大規模言語モデルから出力された各出力情報を取得する。
【0140】
また、ステップS101~S102、S105~S108、S111、S114~S115、S118の処理は、サーバ装置300及びクライアント装置200でなく、画像読取装置100により実行されてもよい。その場合、画像読取装置100の第1記憶装置110には、第3記憶装置310に記憶される各プログラム、データベース、テーブル、情報等が記憶される。第1処理回路120は、第1記憶装置110に記憶された各プログラムを読み取り、読み取った各プログラムに従って動作することにより、第1取得部、生成部、第2取得部、出力制御部及び更新部として機能する。第2処理回路220の第1取得部、生成部、第2取得部、出力制御部及び更新部は、第3処理回路320の第1取得部321、生成部322、第2取得部323、出力制御部324及び更新部325と同様の機能を有する。
【0141】
ステップS101において、画像読取装置100の第1取得部は、撮像装置104が生成したスキャン画像を取得する。ステップS102において、画像読取装置100の第1取得部は、第1入力装置102を用いて利用者から受け付けた、スキャン画像から文字を認識する目的、及び、スキャン画像に含まれる媒体の種類を取得する。ステップS103~S104の処理は省略される。ステップS108において、画像読取装置100の第2取得部は、各指示構文及び要求情報を、第1通信装置101を介してLLMサーバ装置400に送信する。ステップS111において、画像読取装置100の第2取得部は、第1通信装置101を介してLLMサーバ装置400から各出力情報を受信する。ステップS112~S113の処理は省略される。ステップS114において、画像読取装置100の出力制御部は、各出力情報を第1表示装置103に表示することにより出力する。ステップS116~S117の処理は省略され、
図6のステップS207において、画像読取装置100の生成部は、生成したファイルを第1表示装置103に表示することにより出力する。
【0142】
同様に、
図11に示すファイル生成処理においても、クライアント装置200及びサーバ装置300により実行される各処理は、画像読取装置100により実行されてもよい。
【0143】
これらの場合、大規模言語モデルは、LLMサーバ装置400に記憶されるのでなく、画像読取装置100の第1記憶装置110に予め記憶されてもよい。その場合、画像読取装置100の第2取得部は、各指示構文を、第1記憶装置110に記憶された大規模言語モデルに入力し、大規模言語モデルから出力された各出力情報を取得する。
【0144】
また、
図4又は
図11に示すファイル生成処理の各処理を実行する装置の組合せは、任意に設定可能である。即ち、第1取得部、生成部、第2取得部、出力制御部及び更新部のそれぞれを、サーバ装置300、クライアント装置200及び画像読取装置100の何れに配置するかは任意に設定可能である。
【符号の説明】
【0145】
1 画像処理システム、100 画像読取装置、200 クライアント装置、300 サーバ装置、310 第3記憶装置、321 第1取得部、322 生成部、323 第2取得部、324 出力制御部、325 更新部