JP6944281B2 - 情報処理装置、情報処理方法及び情報処理システム - Google Patents

情報処理装置、情報処理方法及び情報処理システム Download PDF

Info

Publication number
JP6944281B2
JP6944281B2 JP2017119890A JP2017119890A JP6944281B2 JP 6944281 B2 JP6944281 B2 JP 6944281B2 JP 2017119890 A JP2017119890 A JP 2017119890A JP 2017119890 A JP2017119890 A JP 2017119890A JP 6944281 B2 JP6944281 B2 JP 6944281B2
Authority
JP
Japan
Prior art keywords
image processing
information
processing device
scan
standard
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
Application number
JP2017119890A
Other languages
English (en)
Other versions
JP2019004429A5 (ja
JP2019004429A (ja
Inventor
宏一 久野
宏一 久野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017119890A priority Critical patent/JP6944281B2/ja
Priority to US16/007,433 priority patent/US10412244B2/en
Publication of JP2019004429A publication Critical patent/JP2019004429A/ja
Publication of JP2019004429A5 publication Critical patent/JP2019004429A5/ja
Application granted granted Critical
Publication of JP6944281B2 publication Critical patent/JP6944281B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00501Tailoring a user interface [UI] to specific requirements
    • H04N1/00509Personalising for a particular user or group of users, e.g. a workgroup or company
    • H04N1/00514Personalising for a particular user or group of users, e.g. a workgroup or company for individual users
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00002Diagnosis, testing or measuring; Detecting, analysing or monitoring not otherwise provided for
    • H04N1/00007Diagnosis, testing or measuring; Detecting, analysing or monitoring not otherwise provided for relating to particular apparatus or devices
    • H04N1/00018Scanning arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00002Diagnosis, testing or measuring; Detecting, analysing or monitoring not otherwise provided for
    • H04N1/00026Methods therefor
    • H04N1/00034Measuring, i.e. determining a quantity by comparison with a standard
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00411Display of information to the user, e.g. menus the display also being used for user input, e.g. touch screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00838Preventing unauthorised reproduction
    • H04N1/0084Determining the necessity for prevention
    • H04N1/00854Recognising an unauthorised user or user-associated action
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/58Edge or detail enhancement; Noise or error suppression, e.g. colour misregistration correction

Description

本発明は、画像処理装置に各種情報を送信する情報処理装置、情報処理方法及び情報処理システムに関する。
情報処理装置のOperating System以下OS上で動作するアプリケーションプログラムがスキャナなどの画像処理装置にアクセスする際には、OSメーカーや標準化団体が定める標準規約を用いて行うことできる。OSメーカーや標準化団体はアプリケーションプログラムからの要求に応じてドライバと呼ばれるプログラムを制御し画像処理装置へのアクセスを実現する。
ドライバには画像処理装置を提供しているベンダーが自ら作り提供するベンダードライバがある。ベンダードライバは標準規約に準拠しているが、独自の処理を盛り込むことが可能である。例えばスキャナの標準規約であるTWAINにおいては機能拡張用にCustom Capability機能があり、ベンダーがベンダードライバにこれを定義することで独自の機能を実装し、アプリケーションプログラムから利用することが可能である。
しかしながら、近年のセキュリティ問題やOSのアップグレード期間の短縮などにより、ベンダードライバではなく、OSメーカーが用意する標準ドライバを使用するケースが増えてきている。標準ドライバでは基本機能のみが実装されておりベンダー固有の独自機能はサポートされない。結果として標準ドライバによる機能不足が懸念されている。
標準ドライバを使いながら機能を拡張する方法はいくつか提案されている。例えば、特許文献1においては、TWAINのスタブデータソースからユーザーインタフェースマネージャを経由し実際のTWAINプロトコルマネージャ経由からきた要求に対して、画像マネージャで画像処理を加えて結果をTWAINプロコルマネージャ経由で変換する処理が提案されている。アプリケーションプログラムから見た実際のデータの経由はTWAINプロトコルに準拠しているが、TWAINの制御外の仕組みをスタブでオーバーラップしているため、OSから見ると標準規約の範囲内での実装ではない。
また特許文献2においては、デバイスドライバとアプリケーションとの間でデバイスドライバに固有の設定情報を授受するための拡張インタフェースをオペレーティングシステムのインタフェースで実現し、前記デバイスドライバの固有の設定情報に基づく設定が可能な設定画面の表示をさせている。こちらの拡張インタフェースも標準規約内で定義されたものでない別のプログラムとなっており、標準プロトコルと標準ドライバだけでの解決策にはなっていない。
このように、機能拡張は標準規約の範囲で納めることができず、標準プロトコルが存在し標準ドライバが提供されている環境においてはベンダーの拡張機能が使えないことがある。機能拡張を利用するためには、ベンダードライバを用いたり、従来技術で説明した技術を用いたりすることで、それが可能となる。
一方、スキャナ等の画像処理装置は、ホストコンピューター等に比べると処理能力が低く、組み込みプログラムであるので処理の柔軟性にも乏しい。そこで画像処理そのものはより柔軟で処理能力も高いホストコンピューター等で実行する傾向にある。
特許第4208278号明細書 特許第4310172号明細書
しかしながら、スキャナ等の画像処理装置で標準的な画像処理を超えた画像処理が施されている場合には、アプリケーションで更に画像処理を施すと、画質が劣化することがある。そのため、アプリケーションは、例えばそれを防止するために、画像処理装置から取得する画像データが既に標準を超える画像処理済みかを知る必要がある。ところが、ベンダードライバを利用すれば、画像処理装置に対する画像処理の指定を取得できるかもしれないが、標準ドライバを用いる場合、それをアプリケーションが知ることができないことがある。そのため、画像処理装置を用いる情報処理装置において、画像処理装置の利用に際して実行する機能を適切に決定できないことがある。
本発明は上記従来例に鑑みて成されたもので、標準的なドライバを利用しつつ、実行する機能を適切に決定することができる情報処理装置、情報処理方法及び情報処理システムを提供することを目的とする。
上記目的を達成するために本発明は以下の構成を有する。
本発明の一側面によれば、情報処理装置のコンピュータに
画像処理装置に第1スキャン要求を送信する送信ステップと、
前記第1スキャン要求により前記画像処理装置によって実行されたスキャンにより生成された画像データを取得する取得ステップと、
前記取得された前記画像データに付随する付随情報が第1の内容であることに基づいて、前記情報処理装置による所定の画像処理の実行をユーザが指示するための所定の領域を表示するように制御し、前記付随情報が前記第1の内容と異なる第2の内容であることに基づいて、前記所定の領域を表示しないように制御する制御ステップとを実行させることを特徴とするプログラムが提供される
本発明の他の側面によれば、情報処理装置であって、
画像処理装置に第1スキャン要求を送信する送信手段と、
前記第1スキャン要求により前記画像処理装置によって実行されたスキャンにより生成された画像データを取得する取得手段と、
前記画像データに付随する付随情報が第1の内容であることに基づいて、前記情報処理装置による所定の画像処理の実行をユーザが指示するための所定の領域を表示するように制御し、前記付随情報が前記第1の内容と異なる第2の内容であることに基づいて、前記所定の領域を表示しないように制御する制御手段とを有することを特徴とする情報処理装置が提供される
本発明のさらに他の側面によれば、画像処理装置と、情報処理装置を含む情報処理システムであって、
前記情報処理装置は、
画像処理装置に第1スキャン要求を送信する送信手段を有し、
前記画像処理装置は、
前記第1スキャン要求によりスキャンを実行するスキャン手段と、
前記スキャンにより生成された画像データに、付随情報として、前記画像処理装置で実行された画像処理の有無に対応する情報を付随させる付随手段と、
前記スキャンにより生成された画像データを前記情報処理装置に送信する送信手段と、を有し、
前記情報処理装置は、さらに、
前記第1スキャン要求により前記画像処理装置によって実行されたスキャンにより生成された画像データを取得する取得手段と、
前記取得手段により取得された前記画像データに付随する前記付随情報が第1の内容であることに基づいて、前記情報処理装置による所定の画像処理の実行をユーザが指示するための所定の領域を表示するように制御し、前記付随情報が前記第1の内容と異なる第2の内容であることに基づいて、前記所定の領域を表示しないように制御する制御手段とを有することを特徴とする情報処理システムが提供される。
本発明によれば、標準的なドライバを利用しつつ、実行する機能を適切に決定することができる。
画像処理装置150と情報処理装置100の構成図 ベンダードライバ401のソフトウェア構成図 標準ドライバ402のソフトウェア構成図 Custom Capabilityを使ったベンダードライバ401のソフトウェア構成図 標準ドライバ402を使う場合のシーケンスチャート ベンダードライバ401を使う場合のシーケンスチャート アプリケーションプログラム200のフローチャート1 原稿台だけの時のユーザーインタフェースを示す図 ADFがある場合のユーザーインタフェースを示す図 両面ADFがある場合のユーザーインタフェースを示す図 アプリケーションプログラム200のフローチャート2 画像処理がある場合のユーザーインタフェースを示す図 アプリケーションプログラム200のフローチャート3 アプリケーションプログラム200のフローチャート4 更新ボタンがある場合のユーザーインタフェースを示す図 画像処理装置150でのスキャン時のフローチャートを示す図 アプリケーションプログラム200でのスキャン制御のフローチャート
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
本実施形態においては、スキャナ等の画像処理装置と、該画像処理装置を用いる情報処理装置を含む情報処理システムについて説明する。このような情報処理装置において、例えば、オペレーティングシステムがアップグレードなどで変更された場合など、ベンダードライバが提供されず、標準ドライバを使用しなければならないことがある。また、画像処理装置のベンダーによってはベンダードライバを提供せず、標準ドライバが利用されることもある。画像処理装置には、たとえばスキャンの都度画像処理の指定をせず、予め指定しておけばその後のスキャンによる画像データについてはその都度指定しなくとも予め指定した画像処理が施されるものがある。この様な画像処理装置を用いて、たとえば古いオペレーティングシステムの下でベンダードライバを用いて画像処理装置に標準を超える画像処理を指定しておき、新たなオペレーティングシステムの導入に伴い標準ドライバを用いて画像処理装置を利用することも考えられる。この場合、標準ドライバでその画像処理装置を利用しても、取得する画像データには指定しておいた画像処理が施されている。しかしながら、その画像データに標準を超える画像処理が施されていることを、標準ドライバを用いる情報処理装置で知ることができない場合がある。この場合、画像処理装置の利用に関する機能を適切に決定できないことがある。
そこで本実施形態では、標準的なドライバを利用しつつ、画像処理装置に関する機能を適切に決定するための技術について詳細に説明する。
<実施形態1>
本実施形態における画像処理装置150と情報処理装置100の構成を、図1を参照して説明する。
●ハードウェア構成
情報処理装置100は入力インタフェース102とCPU103、ROM104、RAM105、外部記憶装置106、出力インタフェース108、表示部107、キーボード101、マウス109、ネットワークインタフェース110を有する。ネットワークインタフェース110はネットワークケーブル190を介して後述するスキャナやスキャナを含む多機能機などの画像処理装置150と接続してある。画像処理装置150は、要求に応じて画像データを読み取り、後述する付随情報と共に要求元の情報処理装置101(あるいはそのアプリケーション)に渡す(送信する)。ROM104には初期化プログラムが入っており、外部記憶装置106にはOS(Operating System)、アプリケーションプログラム200、標準ライブラリ301、ベンダードライバ401、標準ドライバ402、その他各種のデータが保存されている。RAM105は外部記憶装置106に格納される各種プログラムがワークメモリとして使用する。
画像処理装置150はネットワークインタフェース151とRAM152、スキャナエンジン153、ROM154、CPU155を有する。ネットワークインタフェース151はネットワークケーブル190を介して情報処理装置100と接続される。この接続は図のようにケーブルで直接接続しても、ルーターやハブなどを経由して間接的に接続しても問題はない。また、ネットワークケーブル190を介さず、無線によって接続しても問題はない。RAM152はCPU155の主メモリとワークメモリとして用いられ、受信したスキャンジョブを処理するための各種のデータを保存する。スキャンエンジン153はRAM152に保存されたスキャンジョブに基づきスキャンを行う。スキャンエンジン153はスキャンするための光学センサーやセンサーを駆動するモーターなどから構成される。スキャンエンジン153は原稿台に原稿をおいてセンサーを駆動することでスキャンする方法の他に、スキャンする原稿を自動的に送るAuto Document Feeder(以下ADF)がある。またADFにも原稿の片面だけを読む片面ADFと、光学センサーを2つ使い同時に原稿の両面を読み取る両面ADFがある。ここでは例として情報処理装置100と画像処理装置150の処理分担を上記のように示したが、特にこの分担形態限らず他の形態であっても構わない。
●ソフトウェア構成
情報処理装置100におけるソフトウェアの構成を、図2に示す。前述の情報処理装置100は前述のOSで制御されており、その上でアプリケーションプログラム200が動作している。アプリケーションプログラム200は画像処理装置150から画像を取得し保存する機能を持っているものとする。
アプリケーションプログラム200がスキャナなどの画像処理装置150にアクセスする際には、OSメーカーや標準化団体が定める標準規約を用いて行うことできる。アプリケーションプログラム200が標準規約を用いて画像処理装置150にアクセスする際には、標準規約に定義されているApplication Program Interface(以下「標準API300」と略す)を使用する。
アプリケーションプログラム200は画像処理装置150にアクセスするにはOSに含まれている標準ライブラリ301を自分にプログラムに組み込み、その中に定義されている標準API300を呼び出す。標準API300の呼び出しに応じて、OSの標準ライブラリ301は画像処理装置150に対応するドライバをロードする。ドライバはドライバAPI400で求められる機能に応じて、画像処理装置150にアクセスし所望の動作を実現する。ドライバは図2で示すようにベンダーが作成し提供するベンダードライバ401であっても、図3で示すように標準プロトコル600で画像処理装置150にアクセスするOSメーカーが作成しOSに含まれている標準ドライバ402であっても構わない。標準ドライバ402はこの実施例ではOSメーカーになっているが、それ以外の標準規約にのっとったドライバであっても構わない。また、標準API300と標準ドライバ402を一体としてドライバが存在しない場合でもアプリケーションプログラム200からみた場合には同様と考えてよい。
図2に示すベンダードライバ401と、図3に示す標準ドライバ402は、アプリケーションプログラム200から見た場合には、標準的な機能を実装する範囲では差がない。アプリケーションプログラム200が、OS標準で提供されるデバイス制御に対する使いやすさを向上させたり機能アップを実現したりする場合は、図4に示すようにベンダードライバ401とCapabilityを用いることで実現することができる。Capabilityとはたとえばベンダードライバの機種固有の機能等の情報である。図4は基本的に図2と差はないが、アプリケーションプログラム200は、標準API300で定義されたSet Custom Capability340とGet Custom Capability350を使用して、それをサポートするベンダードライバ401に対して影響を及ぼすことができる。例えば、アプリケーションプログラム200が、Get Custom Capability350を使えば、Get DriverCapability and Status351で示すように、画像処理装置150と実際に通信することなくドライバ401内部に持っている画像処理装置150の読み取り可能サイズなどの静的な情報を得る事も可能だし、標準定義を超える細かい情報を取得することも可能である。またSet Custom Capability340をスキャンの直前に使えば、Control Driver Behavior341で示すように、ベンダードライバ401の内部的な動作を変え、この後のスキャン指示を上書きするような指示も可能である。ベンダードライバ401の内部的な動作を変える事に伴って、Control Device Behavior342、Get Device Status352で示すように画像処理装置150そのものに対するステータス取得やコマンド発行を間接的に制御することも可能である。たとえば、Set Custom Capability340によりControl Device Behavior342を画像形成装置150に設定し、その中で輪郭強調を実行するよう設定できる。この設定の後には、画像処理装置150は、画像のスキャンの要求に応じてスキャンした画像データに輪郭強調処理を施す。
ただし、Custom Capabilityは名前の通り、ドライバ別に作成された設定値であり、すべての画像処理装置150で使用できる訳ではないし、使用方法自体もドライバを作成したベンダーでなければわからない。ベンダーはSDKなどの情報でそれらの機能を公開し、デベロッパーに解放したりしているが、ベンダー間で統一されている訳ではない。また標準ドライバ402はベンダードライバ401がサポートしているCustom Capabilityを知らないので、アプリケーションプログラム200がそれらの処理を指定しても、標準ドライバ402からは無視されるか、エラーとされることになる。
●標準ドライバを用いたスキャン処理のフロー
図5は標準ドライバ402を前提としたアプリケーションプログラム200の基本的な動作に関するデータフローである。全体的な流れを記す。まずステップ210でユーザーがアプリケーションプログラム200を起動する。起動されると、アプリケーションプログラム200は、ステップ220で画像処理装置150のリスト取得を行い、見つかった画像処理装置150をリスト表示する。ユーザーは、ステップ230でそのリストからスキャンを行う画像処理装置150を選択する。選択されると、アプリケーションプログラムは画像処理装置150の持つ機能に応じたユーザーインタフェースを生成し表示する。ステップ240でユーザーインタフェースが表示されたら、ユーザーは、スキャンの条件を設定してから、ステップ250でスキャンボタンを押下する。スキャンボタンが押下されたら、アプリケーションプログラム200はスキャンを実行し結果のデータをステップ260でファイルに保存し、ステップ240に戻って再度画像処理装置150の持つ機能に応じたユーザーインタフェースを表示する。ユーザーは、必要な回数だけ、ステップ240→250→260を繰り返してスキャンすることができる。ユーザーが所望の結果を得られたら、ユーザーはステップ270でアプリケーションプログラム200を終了させる。
次にアプリケーションプログラム200からの内部的なシーケンスをみていく。ステップ220で画像処理装置150リスト取得が指示されると、アプリケーションプログラム200は標準ライブラリ301に対して標準API300の1つである画像処理装置150リスト取得要求のGet Device List310を発行する。Get Device List310により、標準ライブラリ301はUSBやNetwork Serviceなどに登録された情報を調べ、必要であれば 標準ドライバ402に対してリスト要求であるEnumerate410を発行して画像処理装置150のリストを生成しアプリケーションプログラム200に返す。
つづいて、ステップ230で画像処理装置150の選択がなされると、アプリケーションプログラム200は該当する画像処理装置150でできるスキャンの情報を取得するために、最初に標準API300の1つである画像処理装置150使用開始を宣言するためのDevice Open320を発行する。Device Open320により、標準ライブラリ301は標準ドライバ402に対してDevice Open420の要求をする。標準ドライバ402は画像処理装置150を占有させるためにDevice Open620の要求をして結果を受け取る。画像処理装置150はDevice Open620を受けると実際がその要求に応えられるかを調べ、可能な場合はOKを返し、次のコマンドの準備を開始する。可能でない場合「ビジー」などのエラーを返すことも可能である。結果は標準ライブラリ301経由でアプリケーションプログラム200に渡される。
画像処理装置150がオープンできたら、続いてアプリケーションプログラム200は画像処理装置150の機能を調べるために標準API300の1つである画像処理装置150機能を調べるGet Capability330を発行する。Get Capability330で取得できるCapabilityは、画像処理装置150で一般的である、解像度、原稿台のサイズ、ADFの有無などの情報を含んでいる。Get Capability330は、そのまま標準ライブラリ301からGet Capability430として標準ドライバ402に、さらにGet Capability630として画像処理装置150まで伝達される。画像処理装置150はGet Capability630に応じて自分の持つ情報をCapabilityとして返し、その情報は最終的にはアプリケーションプログラム200へ伝達される。
ステップ240で、アプリケーションプログラム200は取得された情報(Capability)を基にしてスキャン設定画面のユーザーインタフェースを生成し表示する。ユーザーがスキャン設定のユーザーインタフェースを操作し所望する設定値に変更し、ユーザーインタフェースの「スキャン」ボタンを押下することで、ステップ250のスキャン開始がキックされる。
スキャン開始により、アプリケーションプログラム200は標準API300の1つであるスキャン要求のScan With Setting360を発行する。それに応じて標準ライブラリ301はSet ScanSettings461を発行し、その応答が成功であれば続けてExecute Scan462を発行する。これによりExecute Scan662が画像処理装置150に発行されてスキャン151が実行される。標準ライブラリはExecute Scan462に対する応答が成功であればGet Image File463を標準ドライバ402に発行する。これに応じてスキャンのデータImageFileが取得されアプリケーションプログラム200へ渡される。
データが取得されると、アプリケーションプログラム200は、ステップ260でそのデータをファイルに保存する。保存が成功したら、アプリケーションプログラム200はステップ240のスキャン設定画面のユーザーインタフェースを表示する。ユーザーは所望するスキャンが終わるまで、原稿や設定を何回か変更して、ステップ240からの処理を繰り返す。ユーザーがスキャンを終えたら、ステップ270でアプリケーションプログラム200を終了させる。ステップ270では、画像処理装置150の使用終了を宣言し他のアプリケーションプログラム200が画像処理装置150を使用できるようにするため、標準API300の1つであるDevice Close370を発行する。
●ベンダードライバを用いたスキャン処理のフロー
図6はベンダードライバ401を前提としたアプリケーションプログラム200の基本的な動作に関するデータフローである。相違点は3つある。
まずは、アプリケーションプログラム200が、Get Capability330の後にGet Custom Capability350を呼んでいるところである。この機能はドライバが持つ内部的な機能に関する情報を取得することができる。よってアプリケーションプログラム200は、標準では定義されていない画像処理の有無やスキャンの方法が可能かなどの情報をここで得て、ユーザーインタフェースに反映することもできる。標準では定義されていない画像処理(すなわち標準を超える画像処理)は、たとえば標準ドライバでは対応できない画像処理であり、特に指定がない限り実行されない画像処理である。
さらに、ステップ250のスキャンボタンの押下の後で通常のスキャン動作に入る前にSet Custom Capability340が呼ばれている。これによってGet Custom Capability350で取得されたベンダー固有の処理をベンダードライバ401に伝え、それに応じた動きを行わせることができるようになる。場合によっては、通常の方法で設定された内容を上書きしてしまっても構わない。
最後の違いが実際にスキャンを制御し画像を作る部分である。アプリケーションプログラム200によりScan with Setting360が実行されると、Set Custom Capability340,440での設定に従って、ベンダードライバ401は、標準ドライバ402では実行されない独自のコマンド580の使用やベンダードライバ401による画像処理など、独自処理480を実行する。標準ドライバ402を使っている場合には、スキャン処理および画像処理を行うのは画像処理装置150の中にあるCPU155である。一方、ベンダードライバ401の場合には画像処理装置150の制御は基本的にベンダードライバ401にゆだねられており、ケースによってすべての制御および画像処理を情報処理装置100のCPU103が行っても構わない。よって画像処理装置150では難しい複雑な画像処理もベンダードライバ401を使う場合には可能になる。
●ユーザーインタフェース表示までの標準フロー
図7はユーザーインタフェースをアプリケーションプログラムが表示するまでの標準フローであり、標準ドライバ402、ベンダードライバ401で共通する処理である。アプリケーションプログラムがステップ210で起動されると、ステップ220で画像処理装置リストが取得される。ステップ230で、リストから画像処理装置150選択をすると、ステップ241で、選択された画像処理装置150から標準API300に標準定義されたCapabilityを取得する。そして取得したCapabilityの内容に応じてユーザーインタフェースを構築していく。ここでは標準定義されたCapabilityに「ADFの有無」と「両面ADFか否か」の情報が含まれているものとする。
まず、アプリケーションプログラム200はステップ700でADFの有無を判定する。ADFがない場合には原稿台しかないので、ステップ702では、アプリケーションプログラム200は原稿台810のみ選択可能な図8に示すようなユーザーインタフェースを生成する。ADFがある場合にはさらに、ステップ701で両面ADFか否かを判定し、両面非対応の場合は、ステップ703で、アプリケーションプログラム200は原稿台810とADF811のどちらかが選択可能なラジオボタンを有する、図9に示すようなユーザーインタフェースを表示する。両面対応の場合には、ステップ704で、アプリケーションプログラム200は図9に加えて両面のチェックボックス820を追加した示す図10に示すようなユーザーインタフェースを表示する。なお、図8、図9、図10で示すように画像処理装置150はポップアップによりリストから選択されるので、画像処理装置を選択し直すこともできる。その場合には改めて選択された画像処理装置について上記手順でユーザーインタフェースを表示し直す。また、スキャンボタン850は押下すると、ステップ250のスキャンボタンを押下が発生する。
●スキャン指示に応じたアプリケーション処理
図17はスキャンボタンが押下された時のアプリケーションプログラム200が標準API300のスキャンを呼び出してイメージファイルを取得するまでの処理である。アプリケーションプログラム200はステップ1000においてユーザーインタフェースでADFが選択されているかを識別し、選択されていない場合は1003で「原稿台」を選択する。ステップ1000においてユーザーインタフェースでADFが選択されている場合は、ステップ1001においてユーザーインタフェースで両面が選択されているか識別し、両面が選択されていない場合はステップ1003で「片面ADF」を選択し、両面が選択されていた場合はステップ1004で「両面ADF」を選択する。アプリケーションプログラム200は、選択した設定で標準API300のScan with Settingを呼び出す。選択した設定情報はステップ1005において、ドライバAPI400のSet Scan Settingsで標準ドライバ402に伝達される。設定情報が標準ドライバ402にセットされたらステップ1006でドライバAPI400のExecute Scanを用いてスキャンの開始を指示する。その後、ドライバAPI400のGet Image Fileを呼び出す。このドライバAPI400は、スキャンが完了した時点でアプリケーションプログラム200に結果を返す。アプリケーションプログラムはステップ1008でデータの取得が完了したら続く処理を行う。
アプリケーションプログラム200が標準API300経由で画像データを受け取る際に、例えば画像データがJPEGであればEXIF情報のような付随的な情報を検知することが可能である。EXIFのような付随情報に含まれる情報には、たとえば画像データの記録日時や装置のベンダー名、モデル名、解像度、色空間、スキャンの設定情報、Custom Renderedタグなどがある。Custom Renderedタグは、画像処理装置において実行される機能を示し、例えば画像処理装置で遂行された画像処理(あるいは実行された機能)の有無を示す。アプリケーションプログラム200がJPEGを要求し、画像処理装置150がJPEG画像データを生成して標準ドライバ402に送信する場合には、標準ライブラリ301は画像処理装置150が生成したJPEGをそのままアプリケーションプログラム200に渡す。アプリケーションプログラム200はJPEGのEXIF情報から知りえた画像処理装置150の特性などを基準に、アプリケーションプログラム200でサポートするべき処理を決めることが可能である。例えばアプリケーションプログラム200は、画像処理装置150が生成したJPEGに埋め込まれたEXIF情報で汎用的に定義されているCustomRenderedタグを使って、取得したJPEGデータに対して画像処理が可能かを判断することが可能である。
●画像処理装置によるスキャン結果の生成処理
図16は画像処理装置150がスキャン結果を生成する時のフローである。画像処理装置150が標準ドライバ402から標準プロトコル600を経由してスキャン要求をステップ900で受け取ったら、ステップ901でその要求に対してEXIF情報を出力するか否かを判定する。例えば特定のOSからの要求である場合のみ出力するとか、ファイルフォーマットの指定に応じて出力するとか、自分がこの後の機能に対応する機種であるか否かなどで判断してもよい。ステップ901でEXIF情報を出力すると決定したら、ステップ902で、タグに影響する特定の処理、たとえばスキャンした画像データに対して、追加的な処理に耐えられないような画像処理を施すか否かを識別する。ここでは特定の処理として輪郭強調を行ったか否かを判定している。ドライバからの輪郭強調処理の指定は、たとえばベンダードライバ401であれば、独自コマンドにより行われる。一方、標準ドライバ402であれば、標準機能ではないので通常してされない。画像処理装置150が輪郭強調をかけて画像補正した後にアプリケーションプログラム200で再び輪郭強調をかけると輪郭強調が利きすぎて画像が乱れるおそれがあるので、ステップ902で輪郭強調がオンであると判定した場合には画像処理装置150は追加したEXIF情報に対してCustom Renderedタグを追加し、その値を1(Custom)にする。ステップ902で輪郭強調がオフであると判定した場合には画像処理装置150は追加したEXIF情報に対してCustom Renderedタグを追加し、その値を0(Normal)にする。
EXIFにおけるCustomRenderedタグは、特殊な画像処理をしていることを示しており、その値が1の場合にはこれ以上の画像処理を禁止するフラグである。アプリケーションプログラム200は、CustomRenderedタグに0がセットされてきている画像処理装置150からのスキャン結果(画像データ)については、自分が画像処理をすることが可能と判断し、独自の画像処理を適用することが可能である。一方、アプリケーションプログラム200は、CustomRenderedタグが1にセットされたている画像処理装置150からの画像データについては、既に画像処理をかけられていると判断し、その後の独自の画像処理を禁止し、画像処理のユーザー選択も不可とする。もしCustomRenderedタグそのものがない場合には、アプリケーションプログラム200が画像処理をかけてよいかどうか不明なため、べつの方法で該当画像処理装置150のスキャン画像ファイルに画像処理をしてよいかを判定するか、判定方法がない場合には画像処理ができないものとして処理する。
●アプリケーションによるスキャン画像データの受信処理
図11を用いてアプリケーションプログラム200での実装を説明する。アプリケーションプログラム200は、図7の標準API300のCapabilityによる処理を行った後に、続けて図11のステップ710に示すように標準API300でデータを取得する。この時のスキャン設定は任意のサイズや解像度で構わない。必要なのは画像ではなくデータの付随情報であるので、スキャンでエラーにならない最小サイズのスキャンで構わない。もちろん特定の設定でスキャンを行った場合だけ所望の情報が埋め込まれるようにしてもよいし、付随情報を画像そのものに埋め込んでも問題はない。EXIF情報を見る場合はJPEGを指定することだけが必要だが、JPEG以外でもなんらかの付随的な情報が取得できるなら、そのフォーマットでも構わない。
図11ではJPEGのタグからEXIF情報を取得するために、ステップ711でアプリケーションプログラム200はJPEGのヘッダーを取得する。つづいてステップ712でアプリケーションプログラム200は、EXIFタグの中にCustomRenderedタグが存在するかをチェックする。存在しない場合は、この画像を処理してよいかいけないか不明な為、安全のため画像処理である「輪郭強調」を指定するためのコントロールはユーザーインタフェースに表示しないものとする。CustomRenderedタグが存在する場合には、ステップ713でアプリケーションプログラム200はその値をチェックする。CustomRenderedタグの値が1であれば画像処理装置150が画像処理を禁止しているため、アプリケーションプログラム200は画像処理である「輪郭強調」処理の指定はユーザーインタフェースに表示しない。CustomRenderedタグの値が0であれば情報処理装置100側での画像処理を許しているとして、ステップ714でアプリケーションプログラム200はユーザーインフェースに「輪郭強調」の指定を追加する。
図12は標準API300のCapabilityにより図10のユーザーインタフェースが作成されている状態で、図11のステップ714の処理によりアプリケーションプログラム200が輪郭強調830を追加したユーザーインタフェースである。もちろん図10に限らず、図8、図9においても、ステップ714の処理によってアプリケーションプログラム200は「輪郭強調」が追加されたユーザーインタフェースを作成しうる。ユーザーインタフェースには、複数の画像処理装置から一つを選択するための選択部800のほか、原稿台やADF、両面スキャンといった画像処理装置150やドライバから取得した機能を選択する選択部、またCustomRenderedタグに基づいて決定した輪郭強調機能の選択部830を含む。
●アプリケーションの起動から終了までの処理フロー
図13はアプリケーションプログラム200の起動から終了までのフローチャートである。まずステップ210で、アプリケーションプログラム200が起動されると、ステップ220でアプリケーションプログラム200は標準API300を使用して画像処理装置150リストを取得し、それを表示して、ユーザーに選択させる。ステップ230でユーザーが画像処理装置150を選択すると、アプリケーションプログラム200は標準API300を使用して画像処理装置150をオープンし、標準API300を使用して画像処理装置150のCapabilityを取得する(ステップ720)。さらにステップ721で、アプリケーションプログラム200は標準API300を使って標準の方法でスキャンを行い、データを受け取りその中にある付随情報をつかってアプリケーションプログラム200が可能な処理を判定する。本例の付随情報とは、具体的には、図16で説明したように、画像処理装置150が画像データに添付して返すCustom Renderedタグの値を指す。
ステップ720とステップ721で受け取った情報をベースに、ステップ240でアプリケーションプログラム200はユーザーインタフェース(例えば図10或いは図12に示す)を生成して表示し、ユーザーからの入力を受け付ける。例えばCustomRenderedタグが1であれば、そのユーザーインタフェースでは輪郭協調の設定は受け付けず、0であれば受け付ける。ステップ250でユーザーがユーザーインタフェースの中の「スキャン」ボタンを押下したら、アプリケーションプログラム200はユーザーインタフェースに設定された値に基づいて標準API300を使った標準的な方法で画像処理装置150からデータを受け取る。そして、ユーザーインタフェースにおいてユーザーが「輪郭強調」を指定していたら、ステップ715でアプリケーションプログラム200は画像処理をデータに対して実施する。ユーザーが「輪郭強調」を指定していなかったり指定自体ができなかったりしていた場合には、データはそのままとなる。ステップ260でアプリケーションプログラム200はデータを保存してスキャン動作を終了する。ユーザーは必要に応じて、ステップ240のユーザーインタフェースの設定からステップ260のスキャンデータの保存までを繰り返しても良い。ユーザーは所望するスキャンが全て終了したら、ステップ270で終了を選択することでアプリケーションプログラム200は動作を完了する。
以上のようにして、本実施形態では、画像処理装置で標準を超える処理が行われたことを、標準ドライバを用いていてもアプリケーションは知ることができる。標準を超える処理は例えば輪郭強調を含むが、もちろん他の標準外の処理であってもよい。例えば画像の反転や回転、ぼかし、ノイズ添加、ノイズ除去、アンシャープマスク、カスタムフィルタ、特殊効果、色補正など、標準ではない処理であればどのような画像処理も候補になり得る。そしてそのよう標準ではない画像処理が実施済みであることをCustomRenderedタグの値によりアプリケーションは知ることができるので、アプリケーションは適切な対応を行うことでき、スキャナ等の画像処理装置における画像処理と、アプリケーションによる画像処理とを両立できる。
<実施形態2>
上記実施形態では、図13の方法は画像処理装置150選択毎にユーザーが意図しない画像処理装置150の特性を知るためのスキャン動作を行うため、ユーザーインタフェースが表示されるまでに時間がかかってしまう。前述のCustomRenderedタグは画像処理装置150側での画像処理を変更するような指示するようなオプションがなければ常に同じ値がセットされるという特徴がある。本実施形態では、この特性を利用することで、前回取得した情報を画像処理装置の識別情報と関連付けて保存し、画像処理装置150選択時に該当画像処理装置150と同じ画像処理装置150があったら保存してある情報(登録情報と呼ぶ)を使用することにより2回目以降の画像処理装置150選択を高速にすることができる。ただしその場合には、画像処理装置150選択情報がユーザー同じ名前で別の特性を持つ画像処理装置150にリプレースされた場合などに正しい登録情報に更新することが難しくなる。画像処理装置150のファームウェアなどがアップデートされ機能が変わった場合なども同様である。なお本実施形態は、図13を図14に、図12を図15に置き替える点で相違するが、他の点は実施形態1と同じであり、相違点のみを説明する。
●アプリケーションの起動から終了までの処理フロー(第二の例)
図14は画像処理装置150の情報が変わった場合でもユーザーが対応できるように、意図的な「画像処理装置150に関する情報更新」が行えるアプリケーションプログラム200のフローチャートである。画像処理装置単位で更新をさせる方法も考えられるが、図14では一括して画像処理装置150を登録・更新できるものとして実装している。アプリケーションプログラム200は起動後に自分のプリファレンスファイルを参照し前回取得した画像処理装置150の登録情報があるかを、ステップ750で判定する。初回起動時には画像処理装置150の登録情報はないのでステップ750の結果は「ない」になる。「ない」場合には、アプリケーションプログラム200は画像処理装置150のリスト取得をステップ220で行うが、その結果をそのままユーザーに提示するのではなく、その画像処理装置150の持つCapabilityを取得し登録情報に保持する。よって、標準API300の画像処理装置150のリストにおいてリストアップされていても、他の情報処理装置100が使用中などで画像処理装置150にアクセスできない場合は、通信エラーとなって登録できない場合がある。
アプリケーションプログラム200は、ステップ220で得た画像処理装置150のリストを順番に登録していくために最初の画像処理装置150を、ステップ760で内部的に選択する。画像処理装置150が選択されたら、ステップ720でアプリケーションプログラム200は標準API300で標準定義のCapabilityを取得する。さらにステップ721でアプリケーションプログラム200は標準API300で、選択した画像処理装置にスキャンを行わせて画像データを取得し、付随する情報(たとえばCustom Renderedタグ)を得る。この2つは図13のステップ720とステップ721と同じである。情報取得に成功したら、ステップ732でアプリケーションプログラム200はこの情報を画像処理装置150の登録情報に追加もしくは更新する。そしてステップ761でアプリケーションプログラム200は次の画像処理装置150を選択し、ステップ720からの処理を繰り返す。ステップ762でアプリケーションプログラム200は画像処理装置150がこれ以上なくなったら処理を画像処理装置150の選択に戻す。
一方ステップ750で登録情報があると判定した場合には、ステップ230で画像処理装置を選択させる。画像処理装置150の選択がされた際には、選択された画像処理装置の登録情報が取得済みであることが保証されている。そこで、画像処理装置150の選択時には、アプリケーションプログラム200は、ステップ730においてステップ732で保存されていた標準API300で取得された標準定義のCapabilityを取り出し、ステップ731においてステップ732で保存されていた標準API300取得されたデータから取得された情報を取り出し、それをベースにステップ240で図15に示すユーザーインタフェースを表示する。
画像処理装置150の機能アップ、同一名称のリプレース、画像処理装置150の追加などが行われた場合にはユーザーは図14のステップ220から開始される画像処理装置150の登録情報を更新する必要がある。図15はそのための更新ボタン850を追加したユーザーインタフェースである。ステップ751では、ユーザーが更新を指示するための指示部である更新ボタン850を押下したかどうかを判定し、押された場合には画像処理装置150の登録情報更新指示がきたものとしてステップ220から開始される一連の処理を行う。アプリケーションプログラム200はこの事により毎回同じ画像処理装置150で情報を取得するためのスキャンをすることなく、画像処理装置150の追加・更新を行った場合にも対応できるものとなる。
さらにステップ751では、更新ボタン850の押下の受け付けに加えて、選択された画像処理装置150が保存された登録情報と同じものを適用してよいかアプリケーションプログラム200が判断してもよい。この場合にも、ステップ751により異なると判断した場合に、ステップ220に分岐して画像処理装置150の登録情報更新を行う。同一の画像処理装置150かどうかの判定は、画像処理装置150のモデルID、ファームのバージョン、シリアル番号、UUID番号などを、単独もしくは組み合わせて判断する事が可能である。アプリケーションプログラムが、更新の必要ありと判断した場合には、内部的にステップ220からの処理を呼び出し処理させて、該当する画像処理装置150の正しいユーザーインタフェースを表示する。ステップ250以下は図13と同様である。
以上の手順により、画像処理装置を選択する都度、画像処理装置から機能情報を取得し、また、標準でない画像処理を行ったから否かを示す非標準画像処理情報(たとえばCustom Renderedタグ)を取得する。いったん取得すると、それを画像処理装置情報として登録しておく。それにより、画像処理装置の選択の都度、上記情報を取得する必要がなくなり、処理の迅速化および画像処理装置の負荷の軽減を図ることができる。さらに、実施形態1と同様に、選択した画像処理装置により取得した画像データに対して画像処理を行ってよいか否かを、用いるドライバが標準ドライバであるかベンダードライバであるかに関わらずアプリケーションは知ることができる。
[その他の実施例]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路例えば、ASICによっても実現可能である。
200 アプリケーションプログラム、301 標準ライブラリ、401 ベンダードライバ、402 標準ドライバ、150 画像処理装置

Claims (14)

  1. 情報処理装置のコンピュータに
    画像処理装置に第1スキャン要求を送信する送信ステップと、
    前記第1スキャン要求により前記画像処理装置によって実行されたスキャンにより生成された画像データを取得する取得ステップと、
    前記取得された前記画像データに付随する付随情報が第1の内容であることに基づいて、前記情報処理装置による所定の画像処理の実行をユーザが指示するための所定の領域を表示するように制御し、前記付随情報が前記第1の内容と異なる第2の内容であることに基づいて、前記所定の領域を表示しないように制御する制御ステップとを実行させることを特徴とするプログラム
  2. 請求項1に記載のプログラムであって、
    前記画像処理装置が、前記画像データに画像処理を実行していない場合、前記付随情報は前記第1の内容であり、前記画像処理装置が、前記画像データに画像処理を実行している場合、前記付随情報は前記第2の内容であることを特徴とするプログラム。
  3. 請求項1又は2に記載のプログラムであって、
    前記第1スキャン要求は、前記情報処理装置のオペレーティングシステムのメーカーによって定められた標準に基づく標準ドライバを介して前記画像処理装置に送信されることを特徴とするプログラム。
  4. 請求項3に記載のプログラムであって、
    前記画像データおよび前記付随情報は、前記標準ドライバを介して取得されることを特徴とするプログラム。
  5. 請求項1乃至4のいずれか一項に記載のプログラムであって、
    前記画像処理装置のケーパビリティに関する情報を取得するケーパビリティ取得ステップと、
    前記第1スキャン要求と異なる第2スキャン要求のための設定画面を表示する表示ステップと、をさらに実行させ、
    前記取得された前記画像処理装置のケーパビリティに関する情報に基づいて、前記画像処理装置に送信される第2スキャン要求のための設定画面の内容が制御されることを特徴とするプログラム。
  6. 請求項3又は請求項4に従属する請求項5に記載のプログラムであって、
    前記画像処理装置のケーパビリティに関する情報は、前記標準ドライバを介して取得されることを特徴とするプログラム。
  7. 請求項1乃至6のいずれか一項に記載のプログラムであって、
    前記第1スキャン要求により実行されるスキャンは、最小サイズのスキャンであることを特徴とすることを特徴とするプログラム。
  8. 請求項1乃至7のいずれか一項に記載のプログラムであって、
    前記付随情報が前記第1の内容であることに基づいて、前記第1スキャン要求と異なる第2スキャン要求のための設定画面において前記所定の領域を表示するように制御し、前記付随情報が前記第2の内容であることに基づいて、前記設定画面において前記所定の領域を表示しないように制御することを特徴とするプログラム。
  9. 請求項1乃至8のいずれか一項に記載のプログラムであって、
    前記所定の画像処理は、輪郭強調であることを特徴とするプログラム。
  10. 請求項1乃至9のいずれか一項に記載のプログラムであって、
    前記第1スキャン要求と異なる第2スキャン要求を送信する要求送信ステップと、
    前記第2スキャン要求により前記画像処理装置によって実行されたスキャンにより生成された画像データを取得するデータ取得ステップと、
    前記所定の領域を表示するよう制御されており、前記所定の領域により前記所定の画像処理の実行が前記ユーザにより指示されている場合、前記画像データに前記所定の画像処理を実行する実行ステップと、をさらに実行させることを特徴とするプログラム。
  11. 請求項1乃至10のいずれか一項に記載のプログラムであって、
    前記画像データは、JPEGデータであって、
    前記付随情報は、EXIF情報であることを特徴とするプログラム。
  12. 請求項1乃至11のいずれか一項に記載のプログラムであって、
    アプリケーションプログラムであることを特徴とするプログラム。
  13. 情報処理装置であって、
    画像処理装置に第1スキャン要求を送信する送信手段と、
    前記第1スキャン要求により前記画像処理装置によって実行されたスキャンにより生成された画像データを取得する取得手段と、
    前記画像データに付随する付随情報が第1の内容であることに基づいて、前記情報処理装置による所定の画像処理の実行をユーザが指示するための所定の領域を表示するように制御し、前記付随情報が前記第1の内容と異なる第2の内容であることに基づいて、前記所定の領域を表示しないように制御する制御手段とを有することを特徴とする情報処理装置。
  14. 画像処理装置と、情報処理装置を含む情報処理システムであって
    記情報処理装置は、
    画像処理装置に第1スキャン要求を送信する送信手段を有し、
    前記画像処理装置は、
    前記第1スキャン要求によりスキャンを実行するスキャン手段と、
    前記スキャンにより生成された画像データに、付随情報として、前記画像処理装置で実行された画像処理の有無に対応する情報を付随させる付随手段と、
    前記スキャンにより生成された画像データを前記情報処理装置に送信する送信手段と、を有し、
    前記情報処理装置は、さらに、
    前記第1スキャン要求により前記画像処理装置によって実行されたスキャンにより生成された画像データを取得する取得手段と、
    前記取得手段により取得された前記画像データに付随する前記付随情報が第1の内容であることに基づいて、前記情報処理装置による所定の画像処理の実行をユーザが指示するための所定の領域を表示するように制御し、前記付随情報が前記第1の内容と異なる第2の内容であることに基づいて、前記所定の領域を表示しないように制御する制御手段とを有することを特徴とする情報処理システム。
JP2017119890A 2017-06-19 2017-06-19 情報処理装置、情報処理方法及び情報処理システム Active JP6944281B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017119890A JP6944281B2 (ja) 2017-06-19 2017-06-19 情報処理装置、情報処理方法及び情報処理システム
US16/007,433 US10412244B2 (en) 2017-06-19 2018-06-13 Information processing apparatus, computer-readable medium and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017119890A JP6944281B2 (ja) 2017-06-19 2017-06-19 情報処理装置、情報処理方法及び情報処理システム

Publications (3)

Publication Number Publication Date
JP2019004429A JP2019004429A (ja) 2019-01-10
JP2019004429A5 JP2019004429A5 (ja) 2020-08-06
JP6944281B2 true JP6944281B2 (ja) 2021-10-06

Family

ID=64658292

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017119890A Active JP6944281B2 (ja) 2017-06-19 2017-06-19 情報処理装置、情報処理方法及び情報処理システム

Country Status (2)

Country Link
US (1) US10412244B2 (ja)
JP (1) JP6944281B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020126319A (ja) * 2019-02-01 2020-08-20 ブラザー工業株式会社 サポートプログラム、情報処理装置、および印刷方法
JP2021136569A (ja) * 2020-02-27 2021-09-13 ブラザー工業株式会社 プログラムおよびスキャンシステム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6003093A (en) 1996-12-19 1999-12-14 Canon Kabushiki Kaisha Architecture for image processing application
JP2004023569A (ja) * 2002-06-18 2004-01-22 Fuji Xerox Co Ltd 画像出力システム
JP4310172B2 (ja) 2003-11-12 2009-08-05 キヤノン株式会社 情報処理装置、方法、システム、制御プログラム
JP4118797B2 (ja) * 2003-12-16 2008-07-16 株式会社リコー インターネットファクシミリ装置
JP2006248217A (ja) * 2005-02-09 2006-09-21 Canon Inc 情報処理装置及び情報処理方法並びにプログラム
CN101682698A (zh) * 2007-06-28 2010-03-24 富士通株式会社 改善低照度环境中的拍摄图像的亮度的电子设备
JP5121595B2 (ja) * 2008-06-10 2013-01-16 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、記憶媒体及びプログラム
US20100223340A1 (en) * 2009-02-27 2010-09-02 Rob Pope System for remotely scanning a document
US8798404B2 (en) * 2010-05-26 2014-08-05 Hin Leong Tan Making available to a user machine editable text extracted from an image
JP2012253514A (ja) * 2011-06-01 2012-12-20 Canon Inc 画像入力システム、サーバ装置、サーバ装置の制御方法、及び制御プログラム
JP6118187B2 (ja) * 2013-06-12 2017-04-19 キヤノン株式会社 印刷装置、印刷装置の制御方法、およびプログラム
JP6732508B2 (ja) 2016-04-15 2020-07-29 キヤノン株式会社 データを保存するシステム、サーバー、方法、及びプログラム

Also Published As

Publication number Publication date
US10412244B2 (en) 2019-09-10
US20180367685A1 (en) 2018-12-20
JP2019004429A (ja) 2019-01-10

Similar Documents

Publication Publication Date Title
US11662963B2 (en) Control method for acquiring data
US10503382B2 (en) Device and information processing method
JP5811708B2 (ja) 画像処理システム、画像処理方法、中継装置、及び、中継プログラム。
KR101556220B1 (ko) 호스트 장치 및 그의 제어 방법 그리고 이에 제어되는 화상독취장치
US8634098B2 (en) Image processing system and image processing apparatus and method
US10585631B2 (en) Portable multi-function printing extension computing device
US10866795B2 (en) Information processing apparatus and information display method
JP6944281B2 (ja) 情報処理装置、情報処理方法及び情報処理システム
EP2770425A2 (en) Image processing apparatus and control method
US9128407B2 (en) Image forming device and computer-readable storage medium
US8881135B2 (en) Information processing apparatus for associating event information in an image input device with an application program that operates according to the event information
US10394507B2 (en) Control method for communication terminal and storage medium
JP6244937B2 (ja) 画像形成装置、画像形成システムおよびプログラム
JP2019174958A (ja) 通信装置のためのコンピュータプログラム及び通信装置
US10694055B2 (en) Information processing device and program for remote browser operation
JP3864412B2 (ja) 画像読み取り装置の制御方法及びプログラム
JP6204281B2 (ja) 画像形成装置、画像形成方法及び画像形成プログラム
US10244139B2 (en) Information processing apparatus, information processing method and computer-readable recording medium for executing an output process of document data by an image processing apparatus that does not have an application of the information processing apparatus
US11785151B2 (en) Information processing apparatus, flow execution method, and non-transitory computer-readable storage medium for controlling executions of multiple functions
JP6975414B2 (ja) プログラム及び携帯端末
US20190138253A1 (en) Image forming apparatus and recording medium suitable for printing process
US20190297218A1 (en) Medium storing application program executable by information processing apparatus
JP5935921B2 (ja) クライアント端末、クライアント端末の制御方法及び画像入力制御用プログラム
JP2020057854A (ja) 複合機及び画像記録装置
JP2018014008A (ja) 情報処理装置、プログラム及び制御方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200615

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200615

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210329

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210527

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210813

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210910

R151 Written notification of patent or utility model registration

Ref document number: 6944281

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151