IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特開2022-187945画像処理システム、画像処理方法及びプログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022187945
(43)【公開日】2022-12-20
(54)【発明の名称】画像処理システム、画像処理方法及びプログラム
(51)【国際特許分類】
   H04N 1/00 20060101AFI20221213BHJP
   H04N 1/21 20060101ALI20221213BHJP
   G06V 30/194 20220101ALI20221213BHJP
   G06T 7/00 20170101ALI20221213BHJP
【FI】
H04N1/00 Z
H04N1/21
G06K9/66
G06T7/00 350C
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2021096222
(22)【出願日】2021-06-08
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【弁理士】
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100124442
【弁理士】
【氏名又は名称】黒岩 創吾
(72)【発明者】
【氏名】八木 優一
(72)【発明者】
【氏名】若林 美月
【テーマコード(参考)】
5B064
5C062
5C073
5L096
【Fターム(参考)】
5B064AA01
5B064BA01
5B064CA08
5B064CA09
5B064DA27
5B064EA18
5B064EA19
5B064EA20
5C062AA05
5C062AB02
5C062AB17
5C062AC58
5C062AF02
5C062AF14
5C073AB12
5C073AB17
5L096BA17
5L096EA37
5L096EA39
5L096HA11
5L096JA03
5L096MA07
(57)【要約】
【課題】 ユーザによって、文書を分類するためのキーワードが入力されることなく、スキャンした原稿の画像データを振り分け、ユーザの手間を減らすことを目的とする。
【解決手段】 本発明の画像処理システムは、原稿の画像を読みとって画像データを生成する読取手段と、生成した画像データの文字を認識し、文字情報を取得する文字認識手段と、前記文字情報から特徴情報を抽出する抽出手段と、前記特徴情報を用いて前記画像データをクラスタリングするクラスタリング手段とクラスタリングよって生成されたクラスタごとに特定の名称を決定する名称決定手段と、前記クラスタリング手段によるクラスタリング結果と、前記名称決定手段によって決定された前記特定の名称に基づいて、前記画像データの送信先を決定する送信先決定手段と、前記送信先決定手段が決定した送信先に前記画像データを送信する送信手段とを有することを特徴とする。
【選択図】 図5
【特許請求の範囲】
【請求項1】
原稿の画像を読みとって画像データを生成する読取手段と、
前記読取手段が生成した画像データの文字を認識し、文字情報を取得する文字認識手段と、
前記文字情報から特徴情報を抽出する抽出手段と、
前記特徴情報を用いて前記画像データをクラスタリングするクラスタリング手段と
前記クラスタリング手段によるクラスタリングよって生成されたクラスタごとに特定の名称を決定する名称決定手段と、
前記クラスタリング手段によるクラスタリング結果と、前記名称決定手段によって決定された前記特定の名称に基づいて、前記画像データの送信先を決定する送信先決定手段と、
前記送信先決定手段が決定した送信先に前記画像データを送信する送信手段とを有することを特徴とする画像処理システム。
【請求項2】
前記送信手段が送信する画像データのファイル名を決定するファイル名決定手段をさらに有し、
前記ファイル名決定手段は、前記クラスタリング手段によるクラスタリング結果と、前記名称決定手段によって決定された前記特定の名称に基づいて、前記画像データのファイル名を決定することを特徴とする請求項1に記載の画像処理システム。
【請求項3】
前記クラスタリング手段は、前記特徴情報に基づいて分類先のクラスタを決定し、
前記送信先決定手段は、前記決定されたクラスタに対応づけて決定された特定の名称に基づいて、前記画像データの送信先を決定することを特徴とする請求項1または2に記載の画像処理システム。
【請求項4】
前記名称決定手段は、前記クラスタごとにユーザから入力された名称を特定の名称として決定することを特徴とする請求項1乃至3の何れか1項に記載の画像処理システム。
【請求項5】
前記クラスタリング手段は、機械学習処理を実行することによって、前記特徴情報を用いて前記画像データをクラスタリングすることを特徴とする請求項1乃至4の何れか1項に記載の画像処理システム。
【請求項6】
前記送信先決定手段は、前記クラスタリング手段によるクラスタリング結果と、前記名称決定手段によって決定された前記特定の名称に基づいて、前記画像データの送信先であるフォルダを決定することを特徴とする請求項1乃至5の何れか1項に記載の画像処理システム。
【請求項7】
原稿の画像を読みとって画像データを生成する読取工程と、
前記読取工程で生成した画像データの文字を認識し、文字情報を取得する文字認識工程と、
前記文字情報から特徴情報を抽出する抽出工程と、
前記特徴情報を用いて前記画像データをクラスタリングするクラスタリング工程と
前記クラスタリング工程によるクラスタリングよって生成されたクラスタごとに特定の名称を決定する名称決定工程と、
前記クラスタリング工程によるクラスタリング結果と、前記名称決定工程によって決定された前記特定の名称に基づいて、前記画像データの送信先を決定する送信先決定工程と、
前記送信先決定工程で決定された送信先に前記画像データを送信する送信工程とを有することを特徴とする画像処理方法。
【請求項8】
請求項1乃至6の何れか1項に記載の画像処理システムの各手段をコンピュータが実行するためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理システム、画像処理方法及びプログラムに関する。
【背景技術】
【0002】
特許文献1には、文書から読み取られた文字列が予め設定されたキーワードに該当する時に、そのキーワードに対応した文書種類を判別し、該当する文書種類に関する特定名称を電子データのファイル名として自動で付与することが記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2008-299778号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1では、予めキーワードを設定しておく必要があり、大変な労力が必要になっていた。また、ユーザに設定されたキーワードが含まれない文書の文書種類を判別することができないといった問題も生じていた。
【0005】
本発明は上記課題を鑑みてなされたものであり、ユーザによって、文書を分類するためのキーワードが入力されることなく、スキャンした原稿の画像データを振り分け、ユーザの手間を減らすことを目的とする。
【課題を解決するための手段】
【0006】
本発明の画像処理システムは、原稿の画像を読みとって画像データを生成する読取手段と、前記読取手段が生成した画像データの文字を認識し、文字情報を取得する文字認識手段と、前記文字情報から特徴情報を抽出する抽出手段と、前記特徴情報を用いて前記画像データをクラスタリングするクラスタリング手段と前記クラスタリング手段によるクラスタリングよって生成されたクラスタごとに特定の名称を決定する名称決定手段と、前記クラスタリング手段によるクラスタリング結果と、前記名称決定手段によって決定された前記特定の名称に基づいて、前記画像データの送信先を決定する送信先決定手段と、前記送信先決定手段が決定した送信先に前記画像データを送信する送信手段とを有することを特徴とする。
【発明の効果】
【0007】
ユーザによって、文書を分類するためのキーワードが入力されることなく、スキャンした原稿の画像データを振り分け、ユーザの手間を減らすことができる。
【図面の簡単な説明】
【0008】
図1】システム構成の一例を示す図
図2】画像処理装置101のハードウェア構成の一例を示す図
図3】機械学習サーバ102のハードウェア構成の一例を示す図
図4】画像処理装置101、機械学習サーバ102とデータサーバ105のソフトウェア構成の一例を示す図
図5】準備動作の処理の一例を示すフローチャート
図6】単語出現数のデータの一例を示す図
図7】クラスタリング結果の一例を示す図
図8】文書分類情報の一例を示す図
図9】特定名称設定画面の一例を示す図
図10】文書分類送信の処理の一例を示すフローチャート
図11】文書の一例を示す図
図12】準備動作の処理の一例を示すフローチャート
図13】文書の一例を示す図
図14】特定名称指定画面の一例を示す図
図15】画像処理装置101、機械学習サーバ102とデータサーバ105のソフトウェア構成の一例を示す図
図16】機械学習部1514における学習モデルを用いた入出力の構造の一例を示す図
図17】入力データの構成の一例を示す図
図18】原稿の一例と推定結果の一例を示す図
図19】学習フェーズと推定フェーズの処理の一例を示すフローチャート
図20】UI表示の一例を示す図
図21】UI表示の処理の一例を示すフローチャート
図22】UI表示の遷移の一例を示す図
図23】スキャンジョブを実行する際の処理の一例を示すフローチャート
【発明を実施するための形態】
【0009】
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例0010】
<システム構成図>
図1は、システム構成の一例を示す図である。図1の画像処理システムはプリンタ、複合機、FAXなどの画像処理装置101、機械学習サーバ102、データサーバ105、画像処理装置101に対するプリントデータの送信等を行う汎用コンピュータ103で構成されている。これらの機器は、有線LAN等のネットワーク104によって接続されている。データサーバ105は、機械学習サーバにおいて機械学習を行うために使用される学習データを外部機器から収集して機械学習サーバ102へ提供する役割を持っている。
【0011】
画像処理装置101は随時、生成された学習済みモデルを機械学習サーバから受信して特定のAI機能を実現可能になっている。また、機械学習サーバ102は、特定のAI機能実現するための学習済みモデルの学習に必要な学習データをデータサーバ105や画像処理装置101、汎用コンピュータ103等外部機器から受信する。そして、その一部または全部を用いて学習処理を行うことが可能である。
【0012】
図2は、画像処理装置101のハードウェア構成の一例を示す図である。画像処理装置101は、使用するユーザが各種の操作を行うための操作部140と、操作部140からの指示に従って画像情報を読み取るスキャナ部10と、画像データを用紙に印刷するプリンタ部20とを有する。
【0013】
スキャナ部10は、スキャナ部10を制御するCPUや原稿読取を行うための図示しない照明ランプや走査ミラーなどを有する。プリンタ部20は、プリンタ部の制御を行うCPUや画像形成や定着を行うための図示しない感光体ドラムや定着器を有する。
【0014】
また、画像処理装置101は、スキャナ部10や、プリンタ部20、LAN104や、公衆回線(WAN)3001、無線LAN106と接続されている画像処理装置の動作を統括的に制御するコントローラ1200とを備える。
【0015】
<画像処理装置-コントローラ構成>
図2を用いてコントローラ1200の内部について詳細に説明する。コントローラ1200は、LAN104を介してLAN上の汎用コンピュータ103から受信した印刷ジョブに含まれるPDLコードをビットマップイメージに展開するラスタイメージプロセッサ(RIP)1260を有する。また、コントローラ1200は、スキャナ部10から入力された画像データに対し補正、加工、編集を行うスキャナ画像処理部1280を有する。また、コントローラ1200は、プリンタ部20で出力(印刷)される画像データに対して補正、解像度変換等を行うプリンタ画像処理部1290と、画像データの回転を行う画像回転部1230とを有する。
【0016】
また、コントローラ1200は、多値画像データはJPEG、2値画像データはJBIG、MMR、又はMHの圧縮伸張処理を行う画像圧縮部1240を有する。また、コントローラ1200は、スキャナ部10及びプリンタ部20とコントローラ1200を接続して画像データの同期系/非同期系の変換を行うデバイスI/F1220を有する。更に、これらを互いに接続して画像データを高速で転送する画像バス1212を備えている。
【0017】
また、コントローラ1200は画像処理装置101を統括的に制御する制御部としてのCPU1201を有する。また、コントローラ1200は、CPU1201が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもあるRAM1202を有する。また、コントローラ1200は、操作部140とのインターフェース部1206を介して、操作部140に表示する画像データを操作部140に対して出力する。また操作部I/F1206は操作部140から本画像処理装置を使用するユーザが入力した情報をCPU1201に伝える役割を有する。また、コントローラ1200は、LAN104に接続され、汎用コンピュータ103やLAN104上の図示しないその他のコンピュータ端末との通信(送受信)を行うネットワーク部1210を有する。また、公衆回線3001に接続され、図示しない外部のファクシミリ装置とのデータの通信(送受信)を行うモデム部1211を有する。また、無線LAN106により外部の端末と接続する為の無線通信IF1270を備える。また、コントローラ1200は、CPU1201が実行するブートプログラムが格納されているROM1203と、システムソフトウェア、画像データ、ソフトウェアカウンタ値などを格納するハードディスクドライブ(HDD)1204を備える。また、スキャナ部10及びプリンタ部20と夫々通信を行う内部通信I/F1208と、これらを互いに接続するシステムバス1207とを備える。
【0018】
コントローラ1200は、システムバス1207及び画像バス1212を接続しデータ構造を変換するバスブリッジとして機能するImageBusI/F1205とを備える。
【0019】
コントローラ1200は、印刷やコピージョブ実行時の、ユーザ名や印刷部数、カラー印刷等、出力属性情報等をジョブ実行時の履歴をジョブログ情報としてHDD1204あるいはRAM1202に記録管理している。
【0020】
GPU1291はデータをより多く並列処理することで効率的な演算を行うことができるので、ディープラーニングのような学習モデルを用いて複数回に渡り学習を行う場合にはGPU1291で処理を行うことが有効である。
【0021】
<機械学習サーバ>
図3は、機械学習サーバ102のハードウェア構成の一例を示す図である。
【0022】
それぞれシステムバス1207で相互に接続されているCPU1301、RAM1302、ROM1303、HDD1304、ネットワーク部1310、IO部1305、GPU1306を有するように構成される。
【0023】
CPU1301は、OS(Operating System)やアプリケーションソフトなどのプログラムをHDD1304から読み出して実行することで種々の機能を提供する。RAM1302はCPU1301がプログラムを実行する際のシステムワークメモリである。ROM1303はBIOS(Basic Input Output System)やOSを起動するためのプログラム、設定ファイルを記憶している。HDD1304はハードディスクドライブであって、システムソフトウェアなどが記憶されている。ネットワーク部1310はLAN104に接続され、画像処理装置101などの外部機器と通信(送受信)を行う。IO部1305はマルチタッチセンサ等を備えた液晶ディスプレイ入出力デバイスとから構成する図示しない操作部との情報を入出力するインターフェースである。操作部にはプログラムが指示する画面情報に基づき所定の解像度や色数等で所定の情報が描画される。例えば、GUI(Graphical User Interface)画面を形成し、操作に必要な各種ウィンドウやデータ等が表示される。
【0024】
GPU1306はGPU1291と同様である。機械学習サーバ102による処理にはCPU1301に加えてGPU1306を用いる。機械学習サーバ102の処理はCPU1301またはGPU1306のみにより演算が行われても良い。
【0025】
画像処理装置101のGPU1291との使い分けについて記載する。ネットワークの通信やGPUの処理に要する負荷、画像処理装置101の省電力モード等に応じてGPUの計算資源を有効活用がされるようになっている。例えば、画像処理装置101が省電力モードに移行する場合、積極的に機械学習サーバ102側のGPUを活用できるようになっている。
【0026】
<本発明のシステムにおけるソフトウェア構成>
図4は、画像処理装置101、機械学習サーバ102とデータサーバ105のソフトウェア構成の一例を示す図である。図に示したソフトウェア構成を実現するためのプログラムは、その構成要素ごとにストレージに格納されており、RAMによみだされてCPUにて実行されるものである。例えば、画像処理装置101では、HDD1204に格納されていてRAM1202に読みだされてCPU1201にて実行されるものである。機械学習サーバ102や、データサーバ105も同様である。
【0027】
図示のソフトウェア構成は、以下の機能を実現するものである。例えば、画像処理装置101が原稿を読み取って生成した電子データから特徴を抽出し、クラスタリングする。そして、文書分類を行う準備動作と、新たに読み取った電子データのクラスタリング結果を用いて準備動作で分類したカテゴリに分類し特定名称を設定する機能である。
【0028】
画像処理装置101のソフトウェアは、データ記憶部402、JOB制御部403、UI表示部401、画像読み取り部404、特定名称付与部405、文書分類特定部406から構成される。
【0029】
機械学習サーバ102のソフトウェアは、特徴量抽出部413、機械学習部414、クラスタリング解析部415、サーバデータ記憶部416から構成される。データサーバ105においては、データ収集・提供部410とデータ記憶部412とから構成される。
【0030】
UI表示部401は、図2に示す操作部I/F1206を介して操作部140に備える画面に対してユーザからの操作設定を受け付けやその操作受付画面の提供をする。特定名称付与部405が用いる名称をユーザに入力させる機能的役割を有している。
【0031】
データ記憶部402は、図2に示したハードウェア構成におけるRAM1202やHDD1204に対して、電子データなど、画像処理装置101が入出力を行うデータの記録を行う機能的役割を有する。
【0032】
JOB制御部403は、ユーザの指示に基づきコピーやファックス、プリント、スキャン画像送信等の画像処理装置101の基本機能の実行や基本機能の実行に伴い他のソフト構成要素間の指示やデータの送受信を中心的に行う機能的役割を有する。画像読み取り部404から受け取った画像データをOCRで文字データを含む電子データに変換する機能を有する。なお、画像データのOCRによる変換は、機械学習サーバ102、データサーバ105で行ってもよい。
【0033】
画像読み取り部404は、JOB制御部403の指示に基づきコピーやスキャン機能を実行する制御を行う場合に図2示したスキャナ10により原稿を光学的に読み取る動作を行う機能的役割を有している。
【0034】
特定名称付与部405は、JOB制御部403から受け取った電子データに付与する特定名称を決定する機能的役割を有する。特定名称付与部405は文書分類特定部406に電子データを渡し電子データの文書分類結果としてクラスタ識別IDを受け取る。受けったクラスタ識別IDに対応する文字列をJOB制御部に渡す。また、UI表示部401からクラスタリング解析部415で作成済みの文書分類情報に含まれる各カテゴリに対応する特定名称の入力を受け付け、データ記憶部402に記憶する役割を有する。
【0035】
文書分類特定部406は、クラスタリング解析部415で作成済みの文書識別情報を用いて電子データの文書を分類しカテゴリを返す機能的役割を有する。
【0036】
データサーバ105は、データ収集・提供部410とデータ記憶部412とから構成される。
【0037】
データ収集・提供部410は、機械学習サーバ102において学習するための学習データの収集と提供を行う機能的役割を有している。本発明のシステムにおいては画像処理装置101から電子データの受信を行って、機械学習サーバ102へ提供する機能的役割を有している。また、収集先は、画像処理装置101の他の画像処理装置、汎用コンピュータ103や他のデータサーバから収集してもよく、目的の機械学習をさせるために必要なデータの収集が可能になっている。データ記憶部412は、収集した学習データの記録管理を行う機能的役割を有している。
【0038】
機械学習サーバ102は、特徴量抽出部413、機械学習部414、クラスタリング解析部415、データ記憶部412から構成される。機械学習サーバ102は、図2に示したハードウェアリソースであるGPU1306やCPU1301を使用して各処理を実行する。
【0039】
特徴量抽出部413は、学習用データである複数の電子データのそれぞれから特徴情報を抽出し、抽出した特徴情報を用いて各学習用データをベクトル化する。特徴量抽出部は、形態素情報、品詞情報、構文・意味情報、文字・単語N-gram、任意の単語、句読点の数、および、過去形の単語の数などのうちの1つまたは複数を特徴情報として抽出する。これらの情報はベクトルの素性となる。各素性のスコアは二値でもよいし、出現数やTf-idf(Term Frequency-Inverse Document Frequency)値等でもよい。また、特徴量抽出部413は、辞書等を利用することで同類語を同一素性として扱ってもよいし、Tf-idf値にしきい値を設けてノイズとなり得る素性を除去し、ベクトルの次元を圧縮してもよい。
【0040】
機械学習部414は、特徴量抽出部413によって抽出された特徴量情報に基づき、類似した特徴情報を有する学習用データを同一のクラスタに分類する。具体的には、機械学習部414は、Repeated Bisection法、K-means法またはLDA(Latent Dirichlet Allocation)法などの手法を用いることで、ベクトル表現された電子データをクラス分けする。例えば、機械学習部414は特徴情報の出現頻度が類似する学習用データを同一のクラスタに分類する。機械学習部414は、クラスタを識別するためのクラスタ識別IDを各クラスタに付与し、クラスタリング結果を作成する。
【0041】
クラスタリング解析部415は、特徴量抽出部413によって抽出された特徴量情報と機械学習部414によって作成されたクラスタリング結果に基づき、文書分類情報を作成する。文書分類情報は、電子データに対応する特徴量情報の素性からキーワードとなる単語を抽出し、クラスタごとにまとめられている。なお、抽出するキーワードは素性のスコアによる一定のしきい値を設けて数を絞ってもよい。
【0042】
サーバデータ記憶部416は、データサーバ105から受信したデータや生成された学習データを図3に示すRAM1302やHDD1304へ一時記録を行う。
【0043】
<第1の実施例>
以下、本発明を実施するための第1の実施例について図面を用いて説明する。
【0044】
図5に示すフローチャートを参照して、画像処理装置の文書分類を行うための準備処理についての動作を説明する。図5は、準備動作の処理の一例を示すフローチャートである。
【0045】
まず、S501でJOB制御部403は、ユーザからUI表示部401を経由して文書分類準備処理実行の指示を受け、学習用の電子データを作成する。電子データを作成する単位は、画像読み取り部404が読み取る原稿1ページごとでもよいし、ユーザが指定したページ単位でもよい。学習用の電子データ作成完了後、データ収集・提供部410に送信する。
【0046】
S502で特徴量抽出部413は、データサーバ105のデータ記憶部412から複数の学習用の電子データを取得し、電子データから特徴情報を抽出する。特徴情報の抽出は、前述した方法を用いて、例えば、図6(a)、(b)に示すような電子データごとに単語と出現数を表したデータを生成する。図6は単語出現数のデータの一例を示す図である。
【0047】
S503で機械学習部414は、機械学習処理を実行し、特徴量抽出部413が生成した特徴情報を用いてクラスタリングする。クラスタリングは、前述した方法を用いて、例えば、図7に示すようなクラスタ識別IDと分類した電子データを対応付けたクラスタリング結果を生成する。
【0048】
図7は、クラスタリング結果の一例を示す図である。
【0049】
S504でクラスタリング解析部415は、機械学習部414が生成したクラスタリング結果を用いてクラスタリング解析を実行する。クラスタリング解析によって、例えば、図8に示すようなクラスタ識別IDに対応した1つ、または複数のキーワードを対応付けた文書分類情報が生成される。図8は、文書分類情報の一例を示す図である。
【0050】
文書分類情報に載せるキーワードの選定は、予め決められた数分を同じクラスタ識別IDに属する文書群から出現数が高いキーワードで選定する方法がある。さらに、辞書等を利用することで同類語を同一キーワードとして扱ってもよいし、Tf-idf値にしきい値を設けてノイズとなり得るキーワードを除去した上で選定を行ってもよい。文書分類情報には後述する特定名称を付与するための領域が用意されている。文書分類情報の生成完了後、データ収集・提供部410に送信する。
【0051】
図8のテーブルは上述したようにクラスタリング解析部415がクラスタリング解析を行うことで、複数のキーワードが一つのクラスタとして作成されて、それぞれのクラスタに識別IDが対応づけられる。さらに、そのクラスタ識別IDごとに、ユーザが特定名称を指定することができる。
【0052】
図8のテーブルの作り方は、上記のようであってもいいが、ユーザが複数キーワードをクラスタに分けて入力し、そのクラスタごとに特定名称を指定するようにしてもよい。
【0053】
S505で特定名称付与部405は、データサーバ105のデータ記憶部412から文書分類情報を取得し、操作部140に特定名称設定画面を表示し、ユーザから特定名称の入力を受け付け、文書分類情報を更新する。ユーザからの入力受付画面では、例えば、図9に示すような画面からクラスタ識別IDを選択して、図示しない特定名称画面でユーザが入力した名称を文書分類情報に登録する。更新した文書分類情報はデータ記憶部402に記憶する。図9は、特定名称設定画面の一例を示す図である。
【0054】
次に、図10に示すフローチャートを参照して、画像処理装置の文書分類送信実行についての動作を説明する。図10は、文書分類送信の処理の一例を示す図である。
【0055】
まず、S1001でJOB制御部403は、ユーザからUI表示部401を経由して文書送信ジョブの指示を受け、ジョブ実行を開始する。送信ジョブは、例えば、指定されたメールアドレスに電子データを送信するEメール送信や指定されたファイルサーバのフォルダに電子データを送信するファイル送信である。
【0056】
S1002でJOB制御部403は、スキャナに原稿を読み取らせ、画像データを生成する。
【0057】
S1003でJOB制御部403は、特定名称付与部405に画像データを渡し、さらに、特定名称付与部405は、文書分類特定部406に電子データを渡す。文書分類特定部406は、データ記憶部402に記憶されている文書分類情報のクラスタ識別IDごとのキーワードが画像データに含まれるか否かを判定する。なお、画像データに文字が含まれるか否かの判定は、画像データに文字認識処理を実行し、画像データの文字を認識し、文字情報を取得することによって行われる。画像データにキーワードが含まれる場合はS1004に進み、含まれない場合はS1006に進む。つまり、ここではあらかじめ生成された各クラスタのうちのどのクラスタに分類されうるかを判定している。
【0058】
図11は文書の一例を示す図である。例えば、図8の文書分類情報を使用して、図11の文書(a)に含まれる文字は、クラスタ識別ID1のキーワード「問診」「症状」「病院」と、クラスタ識別ID2のキーワード「病院」に一致する。図11の文書(b)に含まれる文字は、クラスタ識別ID1のキーワード「病院」と、クラスタ識別ID2のキーワード「見積」「病院」「御中」「金額」に一致する。
【0059】
S1004で文書分類特定部406は最もキーワードに一致するスコアの高かったクラスタ識別IDを特定名称付与部405に通知し、特定名称付与部405はクラスタ識別IDに対応する特定名称をJOB制御部403に通知する。つまり。一番スコアの高かったクラスタを分類先のクラスタとして扱う。
【0060】
例えば、クラスタ識別ID1と2のキーワードに一致する図11の文書(a)の場合、それぞれのキーワードに一致する数をスコアとして扱い、一致する数の多いクラスタ識別ID1の特定名称が通知される。スコアは、単純な一致数ではなく、図示しないキーワードの出現数に基づきキーワード毎に重みづけをして算出してもよい。なお、特定名称が未登録の場合は操作部140に特定名称設定画面を表示し、ユーザから特定名称の入力を受け付け、文書分類情報を更新する。ユーザからの入力受付画面では、例えば、図9に示すような画面からクラスタ識別IDを選択して、図示しない特定名称画面でユーザが入力した名称を文書分類情報に登録する。更新した文書分類情報はデータ記憶部402に記憶する。
【0061】
S1005でJOB制御部403は通知された特定名称を用いて送信ジョブを実行し、フローチャートを終了する。例えば、Eメール送信を実行する場合は、送信するファイル名に特定名称を付与し、図11の文書(a)の場合は、「受付業務_20201126_0001.pdf」といったファイル名に決定する。ファイルサーバへの送信を実行する場合は、送信先のフォルダに特定名称をフォルダ名にしたフォルダを作成し、そのフォルダにファイルを送信する。このように、ファイルサーバにファイルを送信するときは、特定名称とクラスタリング結果に基づいて送信先が決定される。この時に送信されるファイルのファイル名においても、特定名称が使用されてよい。
【0062】
S1006で文書分類特定部406は特定名称付与部405を経由してJOB制御部403に結果を通知する。JOB制御部403は通知を受け、操作部140に図示しないジョブ継続確認画面を表示し、ユーザからの指示を受ける。ユーザからジョブ継続の指示を受けた場合はS1008に進み、ジョブ中止の指示を受けた場合はジョブ実行を中止しフローチャートを終了する。
【0063】
S1008でJOB制御部403は特定名称を用いずに送信ジョブを実行し、フローチャートを終了する。
【0064】
以上の実施例により、ユーザの手を介さず、クラスタリング手法を用いて読み取った原稿から文書の分類に用いる文書分類情報を生成することが可能となった。
【実施例0065】
以下、本発明を実施するための第2の実施例について図面を用いて説明する。
【0066】
第1の実施例は機械学習サーバ102の特徴量抽出部413、機械学習部414、クラスタリング解析部415を用いて文書分類情報を生成したが、第2の実施例ではそれら機械学習の手法は用いず、予め決められたルールに基づいて文書分類情報を生成する。
【0067】
図12に示すフローチャートを参照して、画像処理装置の文書分類を行うための準備処理についての動作を説明する。図12は、準備動作の処理の一例を示すフローチャートである。
【0068】
まず、S1201でJOB制御部403は、ユーザからUI表示部401を経由して文書分類準備処理実行の指示を受け、操作部140に特定名称設定画面を表示し、ユーザから特定名称の入力を受ける。ユーザからの入力受付画面では、第1の実施例と同様に、例えば、図9に示すような画面からクラスタ識別IDを選択して、図示しない特定名称画面でユーザが入力した名称を含む文書分類情報としてデータ記憶部402に記憶する。文書分類情報は特定名称の他に、図8に示した情報で構成される。この時点ではキーワードは何も設定されていないので空欄となる。
【0069】
S1202でJOB制御部403は、ユーザからUI表示部401を経由して原稿読み取り開始指示を受け、学習用の電子データを作成する。電子データを作成する単位は、画像読み取り部404が読み取る原稿1ページごとでもよいし、ユーザが指定したページ単位でもよい。
【0070】
S1203でJOB制御部403は、電子データの特定の領域から一定の大きさの文字列をキーワードとして抽出する。例えば、図13の文書(a)(b)に示すように電子データの上下部の領域から一定の大きさの文字列を抽出する。図13は文書の一例を示す図である。
【0071】
S1204でJOB制御部403は操作部140に分類先の特定名称指定画面を表示し、ユーザに読み取った原稿の分類先の指定を受ける。例えば、図14に示すような画面で、原稿のキーワードを表示し、ユーザから分類先の指摘を受ける。図14は、特定名称指定画面の一例を示す図である。
【0072】
さらに、この画面ではキーワードを編集可能とすることで、例えば図13の文書(a)の「AAAA病院」のようにキーワードのノイズとなる部分「AAAA」を削除できるようにすることで、分類の精度が向上する。
【0073】
S1205でJOB制御部403は文書分類情報の中のユーザが指定したクラスタ識別IDにキーワードを登録する。更新した文書分類情報はデータ記憶部402に記憶する。
【0074】
S1206でJOB制御部403は全ての原稿の処理が完了したかを確認し、完了していない場合はS1202に戻り、完了した場合はフローチャートを終了する。
【0075】
文書分類情報を用いた文書分類送信の実行動作は、図10に示すフローチャート動作と同じになる。
【0076】
以上の実施例により、読み取った原稿からキーワードを抽出し、ユーザに分類先の指示を受ける分類学習処理を実行することで、ユーザが予めキーワードを全て把握しておく必要がなく、文書分類情報を生成することが可能となった。
【実施例0077】
受信したFAXの原稿データに含まれる送信元の文字情報をOCR(OpticalCharacter Recognition)を利用して読み取り、その結果に応じて適切な格納先に振り分ける技術が知られている。しかしながら、そのような技術において格納先の振り分け方法がOCRによる文字情報に限定されてしまうため、例えば格納先を示す送信元の文字情報が取得できない場合は適切に振り分けることができない。よって、本実施例では、格納先を示す送信元の文字情報が無い場合に対しても受信FAXの格納先を自動で決定することを目的とする。
【0078】
本発明のシステムの特徴としては、画像処理装置101で読みとった原稿データをデータサーバ105に収集しそのデータを機械学習サーバ102で学習して学習モデルを生成する。画像処理装置101側では、機械学習サーバ102からロードした受信FAXの振り分け先を推定する学習モデルを活用したAI機能を備えている。このようなシステム構成で受信FAXの振り分けを行うことで、受信FAXの中からユーザが必要なものを効率的に選択することが可能になっている。
【0079】
<本発明のシステムにおけるソフトウェア構成>
図15は、画像処理装置101、機械学習サーバ102とデータサーバ105のソフトウェア構成の一例を示す図である。図に示したソフトウェア構成を実現するためのプログラムは、その構成要素ごとにストレージに格納されており、RAMによみだされてCPUにて実行されるものである。例えば、画像処理装置101では、HDD1204に格納されていてRAM1202に読みだされてCPU1201にて実行されるものである。機械学習サーバ102や、図示していないデータサーバ105も同様である。
【0080】
図示のソフトウェア構成は、本発明のシステムにおいて画像処理装置101の読み取った学習データを用いて、受信FAXの宛先の推定処理を行う機能を実現可能にするためのものである。
【0081】
図15において構成要素の機能的役割を示す。画像処理装置101のソフトウェアは、データ記憶部1502、JOB制御部1503、UI表示部1501、画像読み取り部1504、推定処理部1505から構成される。機械学習サーバ102のソフトウェアは、学習データ生成部1513、機械学習部1514、データ記憶部1515から構成される。データサーバ105においては、データ収集・提供部1510とデータ記憶部1512とから構成される。
【0082】
データ記憶部1502は、図2に示したハードウェア構成におけるRAM1202やHDD1204に対して、画像データや学習データ、学習モデル等の画像処理装置101が入出力を行うデータの記録を行う機能的役割を有する。
【0083】
JOB制御部1503は、ユーザの指示に基づきコピーやFAX、プリント等の画像処理装置101の基本機能の実行や基本機能の実行に伴い他のソフト構成要素間の指示やデータの送受信を中心的に行う機能的役割を有する。
【0084】
UI表示部1501は、図2に示す操作部I/F1206を介して操作部140に備える画面に対してユーザからの操作設定を受け付けやその操作受付画面の提供を行う。また、推定処理部1505による推定結果等のユーザへのメッセージを通知するための通知画面を表示する機能的役割を有している。
【0085】
画像読み取り部1504は、JOB制御部1503の指示に基づきコピーやスキャン機能を実行する制御を行う場合に図2示したスキャナ10により原稿を光学的に読み取る動作を行う機能的役割を有している。
【0086】
推定処理部1505は、図2に示したCPU1201やGPU1291により実行されるものであり、画像処理装置101が入出力を行うデータに対してAI機能を実現するための推定処理や分類処理等を行う機能的役割がある。この推定処理は、JOB制御部1503の指示に基づき処理が行われて、その推定処理部1505の結果出力は、JOB制御部1503に送信されUI表示部に通知メッセージの表示を行う等、ユーザに対してフィードバックを行うことが可能になっている。
【0087】
データサーバ105においては、データ収集・提供部1510とデータ記憶部1512とから構成される。
【0088】
データ収集・提供部1510は、機械学習サーバ102において学習するための学習データの収集と提供を行う機能的役割を有している。本発明のシステムにおいては画像処理装置101から画像処理装置101の操作情報を含む学習データの受信を行って、機械学習サーバ102へ提供する機能的役割を有している。また、収集先は、画像処理装置101の他の画像処理装置、汎用コンピュータ103や他のデータサーバから収集してもよく、目的の機械学習をさせるために必要なデータの収集が可能になっている。データ記憶部1512は、収集した学習データの記録管理を行う機能的役割を有している。
【0089】
機械学習サーバ102のソフトウェアは、学習データ生成部1513、機械学習部1514、データ記憶部1515から構成される。
【0090】
データ記憶部1515は、データサーバ105から受信したデータや生成された学習データ、機械学習部1514における学習済みモデルを図3に示すRAM1302やHDD1304へ一時記録を行う。
【0091】
機械学習部1514は、学習データ生成部1513によって生成された学習データを入力として、図2に示したハードウェアリソースであるGPU1306やCPU1301と図5に示す学習モデルによる学習方法を活用して機械学習を行う。
【0092】
<学習モデルの概念図>
図16は、機械学習部1514における学習モデルを用いた入出力の構造の一例を示す図である。また、図16はニューラルネットワークを用いた学習モデルを例に図示している。また、本発明のシステムの特徴を説明するための一例としてこのニューラルネットワークにより、受信したFAXから得られる画像データの特徴により格納先のフォルダを予測するための学習モデルの生成に関わる、学習データXを示している。学習データXとしては、宛先の原稿の特徴と完全一致する原稿A、宛先の原稿の特徴と部分一致する原稿B、宛先の原稿の特徴と不一致な原稿C、またそれぞれの原稿における画像データの特徴である。
【0093】
機械学習の具体的なアルゴリズムとしては、ニューラルネットの他、最近傍法、ナイーブベイズ法、決定木、サポートベクターマシンなどが挙げられる。また、ニューラルネットワークを利用して、学習するための特徴量、結合重み付け係数を自ら生成する深層学習(ディープラーニング)も挙げられる。適宜、上記アルゴリズムのうち利用できるものを用いて本実施形態に適用することができる。
【0094】
学習モデルは、誤差検出部と、更新部と、を備えてもよい。誤差検出部は、入力層に入力される入力データX(2)に応じてニューラルネットワークの出力層から出力される出力データY(4)と、教師データTとの誤差を得る。そして、損失関数を用いて、ニューラルネットワークからの出力データと教師データとの誤差を表す損失(L)を計算するようにしてもよい。
【0095】
更新部は、誤差検出部で得られた損失(L)に基づいて、その損失が小さくなるように、ニューラルネットワークのノード間の結合重み付け係数等を更新する。この更新部は、例えば、誤差逆伝播法を用いて、結合重み付け係数等を更新する。誤差逆伝播法は、上記の誤差が小さくなるように、各ニューラルネットワークのノード間の結合重み付け係数等を調整する手法である。
【0096】
学習モデル(W)は「正解値が既知の入力データ」と「正解値」をセットにした学習データを多数用意し、この正解値に対応する入力データを入力した場合の出力が正解値に極力近づくように学習モデル(W)内の重み付け係数を調整する。これにより精度の高い学習モデル(W)を得ることができる。これを学習工程と呼び、学習工程を経て調整された学習モデルを学習済モデルと呼ぶ。用意する教師データ(「正解値が既知の入力データ」と「正解値」のセット)は、例えば以下のようなものとする。
1. A部門宛の原稿であることを期待値とする教師データ
入力データ(X):過去に実際にA部門宛に受信した原稿データ
期待値(T):A(A部門宛)=1、B(B部門宛)=0、C(C部門宛)=0、D(該当部門なし)=0
2.B部門宛の原稿であることを期待値とする教師データ
入力データ(X):過去に実際にB部門宛に受信した原稿データ
期待値(T):A(A部門宛)=0、B(B部門宛)=1、C(C部門宛)=0、D(該当部門なし)=0
3. C部門宛の原稿であることを期待値とする教師データ
入力データ(X):過去に実際にC部門宛に受信した原稿データ
期待値(T):A(A部門宛)=0、B(B部門宛)=0、C(C部門宛)=1、D(該当部門なし)=0
4.該当部門がないことを期待値とする教師データ
入力データ(X):過去に受信した実績のない原稿データ
期待値(T):A(A部門宛)=0、B(B部門宛)=0、C(C部門宛)=0、D(該当部門なし)=1
期待値(T)とは「正解値が既知の入力データ」を入力した場合の「正解値」を示す出力(Y)の値である。
【0097】
各教師データの入力データ(X)を入力し算出された出力(Y)と期待値(T)とを所定の損失関数に従い損失(L)を求める。
【0098】
本実施例での損失関数は
1.A部門宛の原稿であることを期待値とする教師データの場合
損失(L)= 1-「出力(Y)の1の推定確率」
2.B部門宛の原稿であることを期待値とする教師データの場合
損失(L)= 1-「出力(Y)の2の推定確率」
3.C部門宛の原稿であることを期待値とする教師データの場合
損失(L)= 1-「出力(Y)の3の推定確率」
4.該当部門がないことを期待値とする教師データの場合
損失(L)= 1-「出力(Y)の4の推定確率」
とする。
【0099】
この損失(L)が0に近づくように中間層の学習モデル(W)の各層間の重み付け調整する。
【0100】
この調整を行った学習モデル(W)を学習済みモデルとし機械学習部1514にこのモデルを実装する。
【0101】
<原稿の構成例>
図17は、入力データの構成の一例を示す図である。本実施例では受信FAXがアンケート用紙類である場合にA部門宛フォルダ、出張申請用紙類である場合にB部門宛フォルダ、注文用紙類である場合にC部門宛フォルダに格納することを例に説明する。格納先の判定に必要な、各用紙類から抽出される画像データの特徴は例えば以下が考えられる。
1.アンケート用紙類(格納先:A部門宛フォルダ)
〔1〕質問項目の欄
〔2〕選択肢の欄
〔3〕自由記述欄
2. 出張申請用紙類(格納先:B部門宛フォルダ)
〔1〕押印欄
〔2〕日程記入欄
〔3〕詳細欄のフォーマット
3.注文用紙類(格納先:C部門宛フォルダ)
〔1〕注文票のフォーマット
〔2〕納期の記入欄
〔3〕納入先
入力される原稿のタイプは大きく3種類に分けられる。宛先の原稿の特徴と完全一致する原稿、宛先の原稿の特徴と部分一致する原稿、宛先の原稿の特徴と不一致な原稿である。
【0102】
図18は原稿の一例と推定結果の一例を示す図である。
【0103】
図18(a)はそれらが混ざった原稿の構成例、図18(b)では学習済みモデルを用いた推定結果の一例とその正誤を示している。原稿の内容としては、No.1はA部門宛原稿、No.2はB部門宛原稿、No.3はB部門宛原稿、No.4はC部門宛原稿、No.5はどの部門にも該当しない原稿となっている。また、No.6はC部門宛原稿、No.7はA部門宛原稿、No.8はA部門宛原稿、No.9はC部門宛原稿、No.10はどの部門にも該当しない原稿(迷惑FAX)である。そして、それぞれに対して前述の各用紙類から抽出される特徴の有無を示している。画像データの特徴の抽出は前記機械学習部が行い、それに基づいた宛先の推定を行う。しかし、特徴の有無だけでは正確に判別ができない原稿も想定される。例えばNo.5のようなA部門宛原稿のもつ特徴と類似していながら実際には格納先に該当するフォルダがない原稿や、No.6のようなA部門宛とC部門宛の両方の原稿の特徴をもつが実際にはC部門宛の原稿である。これらについては学習を重ねることにより推定の精度を向上させることができる。
【0104】
図23のフローチャートを用いて、スキャン系のジョブの流れを説明する。図23はスキャンジョブを実行する際の処理の一例を示すフローチャートである。なおスキャン系のジョブとはコピーやスキャンBOX等のスキャナを用いたジョブ全般のことである。
【0105】
JOB制御部1503は、ユーザからスキャン系のジョブの開始を操作部が受け付けたか否かを判定する(S2301)。操作を受け付けていない場合、操作を受け付けるまで待機をする。操作を受け付けた場合、S2302に遷移する。スキャナ10はADFもしくは原稿台ガラスに設置された原稿を読み取る(S2302)。JOB制御部1503は、スキャナ10がすべての原稿の読取が終了したか否かを判定する(S2303)。すべて読み取っていない場合、すべての原稿の読み取りが終わるまで処理を繰り返す。すべての原稿を読み取ったあと、JOB制御部1503は読みとったデータをデータ記憶部に保存する(S2304)。読み取りデータを保存したあと、学習処理を行う(S2305)。学習処理の詳細は後述する。
【0106】
学習処理を実施した後、推定処理部1505はページ順の誤りを判定するための推定処理を行う(S2306)。推定処理の詳細は後述する推定処理終了後、読み取り後の処理(プリント、データ保存、データ送信等)を実行し処理を終了する。
【0107】
図19のフローチャートを用いて、機械学習部1514と推定処理部1505の処理の流れを説明する。図19は学習フェーズと推定フェーズの処理の一例を示すフローチャートである。
【0108】
機械学習部1514は学習データが更新されたかどうかを一定期間毎に確認する。本実施例ではユーザの使用環境に設置された画像処理装置に対し、ユーザがスキャン系ジョブおよび格納先のフォルダの設定を行った際の画像データと格納先のフォルダの組み合わせのことを学習データとしている。更新されていると判断したタイミングで、学習フェーズを開始する。まず、学習データを受信する(S1901)。学習データとは前述した原稿データである。その後、受信したデータを機械学習する(S1902)。その後、機械学習が終わったかどうか判断する(S1903)。終わっていない場合にはS1902を繰り返す。終わっている場合には学習済みモデルの更新を推定処理部1505へ通知する(S1904)。その後、学習済みモデルの送信要求があるかどうか判断する(S1905)。無い場合にはS1905を繰り返し行い推定処理部1505からの送信要求を待つ。送信要求がある場合には学習済みモデルを推定処理装置へ送信する(S1906)。
【0109】
推定処理部1505はJOB制御部1503がFAXを受信したか否かを監視する(S1907)。FAXを受信した場合、推定処理部1505は機械学習部1514へ学習済みモデルの送信要求を行い、学習済みモデルを受信する(S1908)。推定処理部1505は受信したFAXの画像データと学習済みモデルから受信FAXの内容を推定する(S1909)。推定処理部1505は宛先の推定結果により、受信FAXの格納先に該当するフォルダがあるか否かを判定する(S1910)。該当するフォルダがある場合は、そのフォルダに受信FAXを格納し(S1911)、該当するフォルダがない場合は受信FAXを未分類フォルダもしくは迷惑FAXフォルダに格納する(S1912)。
【0110】
受信したFAXの格納先に該当するフォルダの有無の判断は推定処理部1505によって算出される、受信したFAXの格納先として挙げられるフォルダに該当する確率に基づいて行うこととし、その条件はユーザが予め設定できるようにしてもよい。
【0111】
図20はUI表示の一例を示す図である。ユーザはUI表示により所望のフォルダを選択することができ(図20(a))、選択したフォルダに格納されたファイルに対し、印刷設定、ファイルの表示、フォルダ移動、ファイル削除などといった操作を選択することができるものとする。また、フォルダ内に格納された受信FAXを表示する際は、図20(b)のように受信日時に加え、推定処理部により算出した受信FAXが格納先のフォルダに該当する確率を示してもよい。
【0112】
また、受信FAXに対してユーザが行った操作のうち、例えばフォルダ移動やファイル削除といった、誤った推定結果に基づく操作であると考えられるものは、受信FAXの画像データとユーザが行った操作を学習済みモデルへフィードバックできるものとする。
【0113】
図21は、UI表示の処理の一例を示すフローチャートである。JOB制御部1503は操作部140において受信FAXのUI表示(S2101)に対し、ユーザにより受信FAXに対する操作が行われたか否かを監視する(S2102)。ユーザによる受信FAXに対する操作が行われなかった場合、受信FAXのUI表示を継続する。受信FAXに対する操作が行われた場合、推定処理部1505はユーザの操作が受信FAXの格納先の推定結果が誤っていることに基づくか否かを判定する(S2103)。このとき、推定結果が誤っていることに基づく操作は例えば前述のフォルダ移動やファイル削除を表す。推定結果が誤っていると判定された場合、機械学習部1514へ学習データとして送信をする(S2104)。機械学習部1514における機械学習の方法は前述の学習フェーズと同様である。
【0114】
受信FAXの画像データとユーザが行った操作を学習済みモデルへフィードバックするか否かはユーザが判断してもよい。推定処理部1505が推定結果から、受信FAXの格納先に該当するフォルダが存在しないと判断し、受信FAXを未分類フォルダに格納した場の例を、図22を用いて説明する。
【0115】
図22は、UI表示の遷移の一例を示す図である。本来、A部門宛である受信FAXが誤った推定結果により未分類フォルダに格納されていた場合、ユーザは未分類フォルダを選択し(図22(a))、格納されたファイルを確認する。そして、フォルダ移動を選択し(図22(b))、移動先を指定することができる(図22(c)、(d))。推定処理部1505が受信FAXに対するユーザの操作が、推定結果が誤っていることに基づいていると判断した場合、受信FAXの画像データと移動先のフォルダを新たに学習するか否かを問う画面をUI表示する(図22(e))。ユーザが新たに学習することを選択した場合に限り、学習済モデルへのフィードバックを行う。
【0116】
上記処理を実行することによって、格納先を示す送信元の文字情報が無い場合に対しても受信FAXの格納先を自動で決定することができる。
【0117】
<その他の実施の形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0118】
101 画像処理装置
102 機械学習サーバ
105 データサーバ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23