JP5968497B2 - 制御方法、システム及びプログラム - Google Patents

制御方法、システム及びプログラム Download PDF

Info

Publication number
JP5968497B2
JP5968497B2 JP2015094891A JP2015094891A JP5968497B2 JP 5968497 B2 JP5968497 B2 JP 5968497B2 JP 2015094891 A JP2015094891 A JP 2015094891A JP 2015094891 A JP2015094891 A JP 2015094891A JP 5968497 B2 JP5968497 B2 JP 5968497B2
Authority
JP
Japan
Prior art keywords
edge extraction
cores
execution
processing
edge
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
JP2015094891A
Other languages
English (en)
Other versions
JP2015181016A (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 JP2015094891A priority Critical patent/JP5968497B2/ja
Publication of JP2015181016A publication Critical patent/JP2015181016A/ja
Application granted granted Critical
Publication of JP5968497B2 publication Critical patent/JP5968497B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、制御方法、システム及びプログラムに関する。
従来から図形を描画するために図形が持つ座標情報等から図形の輪郭情報(エッジ情報とも呼ぶ)を抽出し、輪郭情報に基づいて画像を形成するレンダリング手法は一般に広く利用されている(例えば、特許文献1参照)。輪郭情報は直線で表現されるが直線を表現するための手法としてDDAアルゴリズムが知られている(非特許文献1参照)。
図1は、従来のレンダラの処理の一例を示す図である。ここでは入力図形をバンドに分割して処理を行っている。グラフィックス処理を実行するにあたり、このようなシステムで問題となるのは、多くのグラフィックスオブジェクトが入力された場合にレンダリング速度の低下が発生することである。そこで図1にあるようにバンドで分割された場合の処理では、それぞれのバンドに対して独立した処理単位(スレッド)を割り当てることで処理速度の向上を試みるものが提案されている(特許文献2)。
特開平4−170686号公報 特開2003−51019号公報
David Rogers,"Procedural Elements for Computer Graphics"McGraw−Hill Education
図形のエッジを抽出するエッジ抽出処理を実行するコアの数によらず、エッジ抽出処理のアルゴリズムを同一とすると、コアの数によっては、処理効率が低下することがある。
本発明はこのような問題点に鑑みなされたもので、エッジ抽出処理を高速化することを目的とする。
そこで、本発明は、図形のエッジを抽出するエッジ抽出処理を実行するシステムが行う制御方法であって、前記システム内の第1の数のコアで第1のエッジ抽出処理アルゴリズムに従うエッジ抽出処理を実行する第1の実行工程と、前記第1の数とは異なる前記システム内の第2の数のコアで前記第1のエッジ抽出アルゴリズムとは異なる第2のエッジ抽出処理アルゴリズムに従うエッジ抽出処理を実行する第2の実行工程と、前記システム内の利用可能なコアの数を取得する取得工程と、前記取得されたコアの数に基づいて、前記第1の実行工程と前記第2の実行工程のうちの1つを、実行すべき実行工程として選択する選択工程と、を有することを特徴とする
本発明によれば、エッジ抽出処理を高速化することが出来る。
従来のレンダラの処理の一例を示す図である。 画像処理装置のハードウェア構成の一例を示す図である。 図形ごとに処理の単位(スレッド)を割り当てた一例を示す図である。 各図形においてエッジ抽出処理を各々独立に適用した場合の概念図である。 画像処理装置のソフトウェア構成(システム構成)等の一例を示す図である。 三角形の図形に対してエッジ抽出処理を行う様子を示した図である。 スキャンラインの処理の一例を示すフローチャートである。 「エッジ抽出処理」と、抽出されたエッジのデータをマージする処理「データ合成」と、におけるデータの流れを説明するための図である。 PDL処理とエッジ抽出処理(合成処理を含む)とにおいてどのように時間が短縮されるかを説明した図である。 実施形態1の構成について適用するコア数を増やしていった場合の性能の変化を示した図である。 コア数が8の場合のプログラム内部スレッドの活動状況を示した図である。 「データ受け取り」の処理にボトルネックが発生していることを説明するための図である。 「データ受け取り」の処理を多段の(複数の)処理に分けることを説明するための図である。 システム側から通知された利用可能なコア数に応じて、選択する処理を切り替える一例を示す図である。 実施形態2の構成を適用した場合の、コア数に対する、性能の変化をグラフで示した図である。 コア数に応じて処理フローが切り替わるシステムの構成の一例を示す図である。
以下、本発明の実施形態について図面に基づいて説明する。
<実施形態1>
図2は、画像処理装置のハードウェア構成の一例を示す図である。
図2において、CPU101は、ROM103又はハードディスク111からRAM102にロードされたOSや一般アプリケーション等のプログラムを実行し、後述するソフトウェアの機能及びフローチャートの処理を実現する。
RAM102は、CPU101の主メモリ、ワークエリア等として機能する。キーボードコントローラ(KBC)105は、キーボード109や不図示のポインティングデバイスからのキー入力を制御する。CRTコントローラ(CRTC)106は、CRTディスプレイ110の表示を制御する。ディスクコントローラ(DKC)107は、ブートプログラム、種々のアプリケーション、フォントデータ、ユーザファイル等を記憶するハードディスク(HD)111やフレキシブルディスク(FD)等とのアクセスを制御する。PRTC108は、接続されたプリンタ107との間の信号の交換を制御する。NC112は、ネットワークに接続されて、ネットワークに接続された他の機器との通信制御処理を実行する。
なお、本実施形態では、以下に示す画像処理装置の機能は、ソフトウェアにより実現されるものと説明するが、各機能を専用のハードウェアで画像処理装置に実装するようにしても良い。
なお、本実施形態のCPU101は、マルチコアのCPUであるものとする。画像処理装置が、複数のCPUを有していても良い。
本実施形態のレンダラは、図3にあるように図形ごとに処理の単位(スレッド)を割り当てる。図形の位置はページ上に配置(絶対座標上)されているが、それぞれは個別の相対座標にマップされ(図形の外接矩形の左上の点を原点に持つ相対座標に変換され)、各領域においてエッジ抽出処理を行うことが出来る。
図4は、各図形においてエッジ抽出処理を各々独立に適用した場合の概念図である。ページ上の図形ごとにエッジ抽出処理を実施する様子を示している。図形ごとに抽出されたエッジ情報は再度ページ上の座標にマップされ合成処理がなされる。それぞれの処理は各々依存性がないために独立に実行することが出来る。つまり、図形のデータが入力された後、各図形のエッジ抽出の処理、及び各抽出処理後のデータをマージする処理(データ合成)それぞれについて複数のスレッドを割り当てることが可能である。スレッドの処理はそれを実行するユニット(CPUコア)にマップされ各コアが時間独立に処理を実行することで、並列で動作することが出来る。
更には、本実施形態のレンダラではコアの割り振りを決定するに際し、各データの分析した結果(例えば、PDL関連情報)に基づいて割り当てを決定するコア管理機構を有し、制御に基づいて並列処理を行う。システム上利用可能なコア数が多い場合に、処理の効率を更に高める目的で、PDLデータの受け取り処理の部分においては各図形の基本情報であるPDL関連情報を抽出する。そして、レンダラは、ベクタライズ等の処理を後段のパイプライン処理にマップすることでデータ処理の負荷分散を図るよう構成されており、コア数が増大した場合でもスケーラブルに性能が向上する。
並列処理構造を持つRIPシステムの基本構成を説明する。
図5は、画像処理装置のソフトウェア構成(システム構成)等の一例を示す図である。図にあるようにPDLデータは、描画インターフェースを経由して、RIPシステム側に受け渡される。RIPシステム側では「データ受け取り」の処理ブロックが図形、文字、画像等のPDLオブジェクトを受け取り、不図示の内部スプーラに適時データを蓄えた後に後段の処理ユニットにデータを流すよう構成されている。PDLオブジェクトが図形等であった場合は、「データ受け取り」は、図5にあるエッジ抽出処理(スレッド)にデータを受け渡す。一方、PDLオブジェクトがイメージであった場合は、「データ受け取り」は、画像処理(スレッド)にデータを受け渡す。図形がページに複数存在する場合は、それぞれに対してエッジ抽出処理が割り当てられる。それぞれのエッジ抽出処理で抽出されたエッジデータは、適宜後段のデータ合成処理(スレッド)に渡され、ページ上に合成(重ね合わせの処理)がなされると同時にタイル状のデータにフォーマットされた上でスプーラにRIP中間データとして書き出される。タイル上にフォーマットされたRIP中間データは更に後段のタイル処理(スレッド)により各タイルにおいてピクセルの展開処理が行われる。それぞれのタイルの処理は、時間独立で実行がなされる。
図6は、三角形の図形に対してエッジ抽出処理を行う様子を示した図である。図中、水平方向右を示す矢印はスキャンラインであって、三角形の外接矩形の上から下へ順にスキャン走査を行うよう構成されている。図6では3ライン目のスキャンが行われており、辺AB及び辺AC上のエッジ(2つ)が抽出されている。
図7は、スキャンラインの処理の一例を示すフローチャートである。
まず、ステップS11では、「エッジ抽出処理」は、入力された図形のデータについて初期化処理を行う。この処理の中では、「エッジ抽出処理」は、スキャンの範囲等を決定し後段の処理が実行出来るよう、ループ数のパラメータ群をセットする。
次にステップS12において、「エッジ抽出処理」は、スキャンラインのY方向へのループ処理を開始する。ステップS13では、「エッジ抽出処理」は、現在のスキャンラインにかかる図形(図形の輪郭を形成する辺のデータ)を拾い出し、かつ、スキャンライン上に存在するエッジ情報(カレントのエッジデータリスト)を、更新する必要があるか否かを判断する。「エッジ抽出処理」は、もし更新の必要がなければステップS17へ進むが更新の必要があれば、ステップS14へ進む。
ステップS14では、「エッジ抽出処理」は、カレントのエッジデータリストに対して、エッジを追加又は削除の判断を行う。「エッジ抽出処理」は、図形の輪郭にスキャンラインがかかった場合等、エッジを追加する場合は、ステップS15にて追加すべきデータをX方向へ昇順となるように追加する。ここで追加されたデータはノードと呼ばれ、それぞれがリスト上に連結されている。一方で、図形の輪郭からスキャンラインが外れた場合等、エッジデータを削除する場合は、「エッジ抽出処理」は、ステップS16に進み、エッジデータリストから該当するデータを削除する。
ステップS17は、カレントのスキャンラインにおけるX方向のエッジ情報を抽出するための処理である。ステップS18では、「エッジ抽出処理」は、エッジデータリスト上の各ノードに順次アクセスしていく。エッジ情報は、カレント(Y値)のスキャンラインにおけるデータ値(DA)を線分の傾き等の情報から更新するよう構成されており、データの更新処理はステップS19にて、実行される。ステップS20の処理は、Xループのためのカウンタ減算処理である。ステップS21では、「エッジ抽出処理」は、X方向ループの終了有無を判定する。ステップS17からステップ21mではX方向のループであったが、ステップS12からステップS22まではY方向のループであり、これら二重のループにて平面上の図形の輪郭情報(エッジ情報)を抽出するよう構成されている。
図8は、図5(基本システム概説図)の処理の中で、「エッジ抽出処理」と、抽出されたエッジのデータをマージする処理「データ合成」と、におけるデータの流れを説明するための図である。図8にあるように図形1、2のデータは実体としては図形の種類を表す図形種情報とそれを構成する座標データとの群で構成されている。これらデータは「エッジ抽出処理」、即ち、先に説明した図7にある処理フローによりエッジデータが抽出される。図形1と図形2とにはそれぞれ独立した別々のスレッドで処理がなされるために同時に2つの図形のエッジデータが抽出される。この処理は図8ではスレッド1、スレッド2として表現されている。これらの処理の過程において不図示である色情報抽出処理により図形の輪郭の中の塗り情報が同時に抽出される。スレッド3ではスレッド1及びスレッド2により抽出されたエッジデータ及び色情報から「データ合成」によってデータの合成処理が行われる。例えば、図形2が赤の単色(不透明)で塗られており図形1が青の単色(不透明)で塗られていて、図形1が図形2の上に描画されている場合、重なりの部分は上層の色である青が塗られることになる。この状態では色情報は2つ(即ち、青と赤)が保存される。一方でスレッド3が処理の対象とする領域(図8の例では矩形タイル)においては図形1と図形2との領域におけるエッジデータの合成(例えば重なった結果で不要になったエッジは消去される)が行われる。
本実施形態の処理方式では、重なりの状況によって、領域に関して保持すべき色情報の数が増えることもある。例えば図形1が赤の単色(不透明)で塗られており、図形2が青の単色(透過)で塗られている場合で、かつ、図形2が図形1の上に重なっている場合は透過合成の計算により重なっている領域の色が計算される。例えば、青と赤とを合成すると紫となるため、スレッド3の処理においては赤、青、紫の色情報が保持される。
図9のグラフは、PDL処理とエッジ抽出(合成処理を含む)処理とにおいてどのように時間が短縮されるかを説明した図である。CPUが1つのコアしか持たない場合は複数のスレッドを立ち上げても各スレッドの処理は時分割で処理されるだけであるため処理の高速化を図ることは実質的には出来ない。図9における処理時間のグラフのうち、PDL処理の時間とは図5でいう所の「PDLインタプリタ」と「データ受け取り」との処理に関する時間がこれに該当し、エッジ抽出の時間は図5でいう所の「エッジ抽出処理」、「データ合成処理」がこれに該当する。
このグラフの例では、CPU1コアのシステムでは1ページ分の処理時間はトータルで700ms必要であって、その内訳は、PDL処理に160msを要し、その後のエッジ抽出処理には540ms要していることになる。
これを同様にCPU2コアのシステムで実行した場合は、PDL処理とエッジ抽出処理とをそれぞれ独立して動作出来るために、1ページ分のPDL図形の処理が完了する前にエッジ抽出処理を開始することが出来る。例えば端的には最初の図形PDL処理から渡された時点からエッジ抽出処理を開始しても良いし、一定時間、複数の図形を蓄えてから処理を開始しても良い。図9の例ではPDL処理を開始後、10ms経過した時点でエッジ抽出処理を開始している。その後はエッジ抽出処理が進むにつれてPDL処理が必要なデータを同時に生成していくことになる。加えてエッジ抽出処理は2つの処理群に分けられて処理が行われる。このケースではコアが2つ同時に動作するためにエッジ抽出処理全体の処理が加速される。PDL処理が動作している間はどちらかのコアでPDL処理とエッジ抽出処理とが時分割で行われるが、もう一方のコアはエッジ抽出処理だけを担当する(或いは時々に役割を交代することも可能である)ため、総合すると全体の処理を短縮することが出来る。
<実施形態2>
図10は、実施形態1の構成について適用するコア数を増やしていった場合の性能の変化を示した図である。図10にあるようにCPU1コア時の1ページの処理時間が700msであった場合、CPU2コアの場合は370ms(1.9倍高速)、CPU4コアの場合は200ms(3.5倍高速)、CPU8コアの場合は180ms(3.9倍高速)となった。つまり実施形態1の構成によりコア数に応じてパフォーマンス(RIP処理速度)を向上出来るようになった。
ここで更にコア数を増やしていった場合のことも勘案し、コア数が増えた場合の内部処理状況の分析を行った。
図11は、コア数が8の場合のプログラム内部スレッドの活動状況を示した図である。図11のグラフは、スレッド・アクティビティのグラフである。図11中に黒帯が記録されている所はCPUの各コアがスレッドの処理を実行していた領域を示しており、空白の領域はコアがアイドル(休止)している領域を示している。このグラフが示すようにコア番号の8,7,6に関しては図中10の円で示されるようにコアが動いていない領域(時間帯)がかなり多くあることが読み取れる。同条件の(データ負荷が同じ)場合でCPUコアが4つで動作している場合を分析すると、このような状態は観察されない。
この状況を分析した所、図12でいうところの「データ受け取り」の処理にボトルネックが発生していることが判明した。データ受け取りの部分では受け取った図形が直線データだけで構成されている場合は直ちにデータを受け取れるが、曲線データであった場合は、ベクタライズと呼ばれる直線化処理を行っている。通常は十分に高速処理出来る処理も、曲線を持つ図形が多く入力されると、この処理に時間がかかり、その結果、後段のエッジ抽出処理へのデータ入力が間に合わなくなってくる。データを受け取れないエッジ抽出処理は処理を開始出来ずにアイドル時間でデータを待機する状態となってしまう。
したがって、実施形態2では、「データ受け取り」処理を図13の(b)にあるように多段の処理ブロックを構成することで全体のパフォーマンスを更に改善する。図13の(b)中、PDLオブジェクトは、描画インターフェースを経由してデータ受け取り処理に渡されるが、そこでは最初にベクタライズ必要の有無が判断される。その後、必要な場合のみ図形にマーキングが施され、データリスト1にスプールが行われる。データリスト1は、第一のデータ保持部の一例である。
実施形態2の提案では、図13の(b)にあるように、ベクタライズ処理自体は後段の別スレッドのタスクにより「処理1」を実行する時間とは別の独立した時間(独立時間)で実行される。後段のベクタライズ処理ではデータリスト1のデータのうち、ベクタライズが必要なデータが適宜ピックアップされ、ベクタライズ処理が行われる(この動作は図にあるように適宜、複数スレッドで行っても良い)。ベクタライズされたデータはデータリスト2に格納され、後段のエッジ抽出処理に適宜渡される。つまり、マーキングを施されなかったデータリスト1に保持されている図形が後段のエッジ抽出処理に渡されると共に、データリスト2に保持されている図形が後段のエッジ抽出処理に渡される。データリスト2は、第二のデータ保持部の一例である。
図13(a)中のグラフからわかるように、このような構成をとることでCPUコア数が8となった場合でもエッジ抽出処理へのデータ供給が途切れず、その結果常に並列で動作が可能となり全体のパフォーマンスを向上させることが出来る。
ここで図13の(b)にて説明したように「データ受け取り」に多段の処理ブロックを適用すると8コアの場合に処理パフォーマンスが向上することが判明したが逆にこれを4コアの場合に適用するとどうなるかについて簡単に説明する。図13(a)中のグラフにあるように8コアの処理時にはデータ受け取りの処理時間のオーバーヘッドとして35ms(20ms+15ms)を消費している。これを4コアの場合に適用しても4コアの場合は、そもそもエッジ抽出処理の部分で4つのコアがフルに稼働しているため並列処理度が向上することはない。つまりデータを供給する側に工夫をしてもシステムのパフォーマンスの向上は得られないということになる。このため4コアの場合には図13の(b)にあるような多段構成の処理系は適用しない方が良いということになる。以上のことから、実施形態2ではコア数が4、又は8という状況に応じて提供する処理アルゴリズムを切り替えるよう構成する。
図14は、システム側から通知された利用可能なコア数に応じて、選択する処理を切り替える一例を示す図である。即ちコア数が4までの場合は図中左にあるように実施形態1の構成をとり、8コア以上の場合は右ブロックにあるようにデータ受け取りの処理を図13の(b)にあるように多段構成とした処理アルゴリズムで処理するよう構成する。なお、4は、所定の数の一例である。
図15は、実施形態2の構成を適用した場合の、コア数に対する、性能の変化をグラフで示した図である。図にあるようにCPU1コア時の1ページの処理時間が700msであった場合、CPU2コアの場合は370ms(1.9倍高速)、CPU4コアの場合は200ms(3.5倍高速)、CPU8コアの場合は135ms(5.2倍高速)となる。つまり、実施形態2の構成によりコア数に応じたパフォーマンス(RIP処理速度)を引き出すことが出来る。
<実施形態3>
実施形態2では、コア数は8までのケースについて説明したが勿論CPUのコア数に制限があるわけではない。また8コアのケースにおける多段構成とした処理部は図5中のデータ受け取り処理を挙げたが同様の効果が挙げられる箇所があればそれらは別の箇所の処理でも良く特に処理箇所に依存しているものではない。8コア以上のケースを考えた場合、更にエッジ抽出に要する時間は短縮されることが想定される。その場合にはデータ受け取りの処理を更に高速に行えるように新規の処理フローを導入しても良いが、供給側のデータを十分に積み上げてから処理を開始するように開始しても良い。コア数が増えることによってデータを処理していく処理ユニットにおいて入力と出力量とのバランスの調整が必要となるがそれらは実験的に求めても良いし理論的なモデル又は予測に基づいても良い。コア数が増えることにより各ブロックの処理自体を違う方法で実現しても良い。
図16は、コア数に応じて処理フローが切り替わるシステムの構成の一例を示す図である。ここでは切り替えが行われる各処理フローにおいて、それぞれが共通で用いる機能ブロックをモジュール化し、プログラムサイズを最小化する構成を示している。また想定される別のシナリオとしては、処理負荷が重くないページが多く入力されてきた場合等には、例えばコア数が4の場合にはCPUコア自体にアイドル時間が多く発生することも考えられる。そのような状態のときにはスプーラ内に処理済みのページが十分に蓄積され、その結果、エンジン出力速度をキープする上で、当面の間、ページの加速処理を行う必要がない場合も考えられる。そのような場合を想定して調停機能(コア数に応じてアイドル時間の調整を行うようなシステム)を設けるようにしても良い。
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
以上、上述した各実施形態によれば、図形がどのように配置されていてもそれぞれに対して均等にコアを割り当てることが出来るようになるため、処理効率を向上(データ転送の無駄の削減、及びコア待機時間の削減)することが出来る。この結果、グラフィックスが多く含まれるような処理負荷の高いページが入力された場合でも効果的にレンダリング速度を高速化出来る。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
なお、上述した構成は、プリンタ装置、ディスプレイ等の表示装置、画像出力デバイス等に利用することが出来る。

Claims (11)

  1. 図形のエッジを抽出するエッジ抽出処理を実行するシステムが行う制御方法であって、
    前記システム内の第1の数のコアで第1のエッジ抽出処理アルゴリズムに従うエッジ抽出処理を実行する第1の実行工程と、
    前記第1の数とは異なる前記システム内の第2の数のコアで前記第1のエッジ抽出アルゴリズムとは異なる第2のエッジ抽出処理アルゴリズムに従うエッジ抽出処理を実行する第2の実行工程と、
    前記システム内の利用可能なコアの数を取得する取得工程と、
    前記取得されたコアの数に基づいて、前記第1の実行工程と前記第2の実行工程のうちの1つを、実行すべき実行工程として選択する選択工程と、
    を有することを特徴とする制御方法。
  2. 前記選択工程は、前記取得されたコアの数が前記第1の数であれば前記第1の実行工程を選択することを特徴とする請求項1に記載の制御方法。
  3. 前記選択工程は、前記取得されたコアの数が前記第2の数であれば前記第2の実行工程を選択することを特徴とする請求項1又は2に記載の制御方法。
  4. 前記選択された実行工程によって実行されたエッジ抽出処理で抽出されたエッジの情報に基づいて印刷処理を行う印刷工程を有することを特徴とする請求項1乃至3の何れか1項に記載の制御方法。
  5. 前記第1のエッジ抽出アルゴリズムの第1の実行プログラムと、前記第2のエッジ抽出アルゴリズムの第2の実行プログラムとを記憶する記憶工程を有し、
    前記第1の実行プログラムと前記第2の実行プログラムとで共通する処理の部分は共用モジュール化されていることを特徴とする請求項1乃至4の何れか1項に記載の制御方法。
  6. 図形のエッジを抽出するエッジ抽出処理を実行するシステムであって、
    前記システム内の第1の数のコアで第1のエッジ抽出処理アルゴリズムに従うエッジ抽出処理を実行する第1の実行手段と、
    前記第1の数とは異なる前記システム内の第2の数のコアで前記第1のエッジ抽出アルゴリズムとは異なる第2のエッジ抽出処理アルゴリズムに従うエッジ抽出処理を実行する第2の実行手段と、
    前記システム内の利用可能なコアの数を取得する取得手段と、
    前記取得されたコアの数に基づいて、前記第1の実行手段と前記第2の実行手段のうちの1つを、エッジ抽出処理を実行すべき実行手段として選択する選択手段と、
    を有することを特徴とするシステム。
  7. 前記選択手段は、前記取得されたコアの数が前記第1の数であれば前記第1の実行手段を選択することを特徴とする請求項6に記載のシステム。
  8. 前記選択手段は、前記取得されたコアの数が前記第2の数であれば前記第2の実行手段を選択することを特徴とする請求項6又は7に記載のシステム。
  9. 前記選択された実行手段によって実行されたエッジ抽出処理で抽出されたエッジの情報に基づいて印刷処理を行う印刷手段を有することを特徴とする請求項6乃至8の何れか1項に記載のシステム。
  10. 前記第1のエッジ抽出アルゴリズムの第1の実行プログラムと、前記第2のエッジ抽出アルゴリズムの第2の実行プログラムとを記憶する記憶手段を有し、
    前記第1の実行プログラムと前記第2の実行プログラムとで共通する処理の部分は共用モジュール化されていることを特徴とする請求項6乃至9の何れか1項に記載のシステム。
  11. 請求項6乃至10の何れか1項に記載のシステムの各手段としてコンピュータを機能させるためのプログラム。
JP2015094891A 2015-05-07 2015-05-07 制御方法、システム及びプログラム Active JP5968497B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015094891A JP5968497B2 (ja) 2015-05-07 2015-05-07 制御方法、システム及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015094891A JP5968497B2 (ja) 2015-05-07 2015-05-07 制御方法、システム及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011048654A Division JP5744574B2 (ja) 2011-03-07 2011-03-07 画像処理装置、画像処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2015181016A JP2015181016A (ja) 2015-10-15
JP5968497B2 true JP5968497B2 (ja) 2016-08-10

Family

ID=54329228

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015094891A Active JP5968497B2 (ja) 2015-05-07 2015-05-07 制御方法、システム及びプログラム

Country Status (1)

Country Link
JP (1) JP5968497B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6385406B2 (ja) * 2016-09-21 2018-09-05 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04170686A (ja) * 1990-11-05 1992-06-18 Canon Inc 画像処理装置
JPH05324844A (ja) * 1992-05-25 1993-12-10 Seiko Epson Corp 図形出力装置
EP0600204A3 (en) * 1992-11-30 1994-07-27 Ibm Method and apparatus for rendering primitives with multiple processors.
JP2003051019A (ja) * 2001-08-08 2003-02-21 Canon Inc 画像処理装置、画像処理方法、画像処理プログラム及び記憶媒体
JP2008276407A (ja) * 2007-04-26 2008-11-13 Canon Inc 画像処理装置及びその方法

Also Published As

Publication number Publication date
JP2015181016A (ja) 2015-10-15

Similar Documents

Publication Publication Date Title
JP5744574B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP5956770B2 (ja) タイルベースのグラフィックスシステム及びこのようなシステムの動作方法
US10922868B2 (en) Split frame rendering
US20170148371A1 (en) Method, apparatus and system for dithering an image
KR102346119B1 (ko) 입력 인덱스 스트림 내 프리미티브의 식별
US10762401B2 (en) Image processing apparatus controlling the order of storing decompressed data, and method thereof
JP5706754B2 (ja) データ処理装置及びデータ処理方法
US20160189417A1 (en) Method, apparatus and system for rendering an image
US9542127B2 (en) Image processing method and image processing apparatus
JP2015532989A (ja) 中央プロセッサ、およびグラフィックプロセッサ用ハイブリッドエンジン
KR101869939B1 (ko) 멀티-쓰레딩을 사용하는 그래픽 처리를 위한 방법 및 장치
JP6195342B2 (ja) 情報処理装置およびメモリアクセス制御方法
JP2007535267A (ja) 画像処理装置及び方法
JP5968497B2 (ja) 制御方法、システム及びプログラム
JP4690723B2 (ja) 画像片とサーキュラーアドレッシング構成を使用する画像データ処理方法及び装置
US20130342549A1 (en) Apparatus and method for processing rendering data
JP5245713B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP7014173B2 (ja) 分散処理システム
JP2006099579A (ja) 情報処理装置及び情報処理方法
JP2010218130A (ja) 描画制御装置
CN114756377A (zh) 处理器、指令处理方法、芯片、计算机设备及存储介质
JP5146270B2 (ja) 正規化相関処理装置
JP2019191896A (ja) 情報処理装置、情報処理方法およびコンピュータプログラム
JP2019194816A (ja) 画像処理装置、画像処理方法およびコンピュータプログラム
JP2015026332A (ja) 情報処理装置、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160329

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160405

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: 20160607

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160705

R151 Written notification of patent or utility model registration

Ref document number: 5968497

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151