JP2023082472A - 情報処理装置、画像ファイルのデータ構造、情報処理システム、およびプログラム - Google Patents
情報処理装置、画像ファイルのデータ構造、情報処理システム、およびプログラム Download PDFInfo
- Publication number
- JP2023082472A JP2023082472A JP2021196278A JP2021196278A JP2023082472A JP 2023082472 A JP2023082472 A JP 2023082472A JP 2021196278 A JP2021196278 A JP 2021196278A JP 2021196278 A JP2021196278 A JP 2021196278A JP 2023082472 A JP2023082472 A JP 2023082472A
- Authority
- JP
- Japan
- Prior art keywords
- image
- area
- expressed
- format
- information processing
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/80—2D [Two Dimensional] animation, e.g. using sprites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20092—Interactive image processing based on input by user
- G06T2207/20104—Interactive definition of region of interest [ROI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/32—Image data format
Abstract
【課題】単一の画像記述形式で表現した画像に比べて、ユーザの意図する画質の画像を生成できるようにする。
【解決手段】情報処理装置としての管理サーバ10は、制御部11を備え、制御部11では、領域区分部104が、画像に含まれるオブジェクトの画像の態様に応じて、オブジェクトの画像を、ラスタ形式で表現すべき領域と、ベクタ形式で表現すべき領域とに区分し、形式変換部105が、オブジェクトの画像が、ラスタ形式で表現されている場合には、ベクタ形式で表現すべき領域の画像をベクタ形式に変換し、ベクタ形式で表現されている場合には、ラスタ形式で表現すべき領域の画像をラスタ形式に変換し、画像生成部106が、ラスタ形式で表現された領域の画像とベクタ形式で表現された領域の画像とを含むオブジェクトの画像を生成する。
【選択図】図3
【解決手段】情報処理装置としての管理サーバ10は、制御部11を備え、制御部11では、領域区分部104が、画像に含まれるオブジェクトの画像の態様に応じて、オブジェクトの画像を、ラスタ形式で表現すべき領域と、ベクタ形式で表現すべき領域とに区分し、形式変換部105が、オブジェクトの画像が、ラスタ形式で表現されている場合には、ベクタ形式で表現すべき領域の画像をベクタ形式に変換し、ベクタ形式で表現されている場合には、ラスタ形式で表現すべき領域の画像をラスタ形式に変換し、画像生成部106が、ラスタ形式で表現された領域の画像とベクタ形式で表現された領域の画像とを含むオブジェクトの画像を生成する。
【選択図】図3
Description
本発明は、情報処理装置、画像ファイルのデータ構造、情報処理システム、およびプログラムに関する。
従来、画像記述形式は複数存在するが、どの画像記述形式を用いて画像を表現するかについては、写真、図形、イラスト、テキスト等で構成されるページ単位、またはページに含まれるオブジェクトの単位で行われていた(例えば、特許文献1)。
しかしながら、画像記述形式ごとに長所と短所とがあるため、例えば、ラスタ形式で画像を表現する場合の長所と、ベクタ形式で画像を表現する場合の長所とを併せ持つようなオブジェクトの画像を生成することができず、ユーザが意図する画質の画像を生成することは困難であった。
本発明の目的は、単一の画像記述形式で表現した画像に比べて、ユーザの意図する画質の画像を生成できるようにすることにある。
請求項1に記載された発明は、プロセッサを備え、前記プロセッサは、画像に含まれる第1のオブジェクトの画像の態様に応じて、当該第1のオブジェクトの画像を、ラスタ形式で表現すべき第1の領域と、ベクタ形式で表現すべき第2の領域とに区分し、前記第1のオブジェクトの画像が、前記ラスタ形式で表現されている場合には、前記第2の領域の画像を前記ベクタ形式に変換し、前記ベクタ形式で表現されている場合には、前記第1の領域の画像を前記ラスタ形式に変換し、前記第1の領域の画像と前記第2の領域の画像とを含む第2のオブジェクトの画像を生成することを特徴とする、情報処理装置である。
請求項2に記載された発明は、前記プロセッサは、前記第1のオブジェクトの画像のエッジを検出する処理の結果に基づいて、前記第1の領域と前記第2の領域とに区分することを特徴とする、請求項1に記載の情報処理装置である。
請求項3に記載された発明は、前記プロセッサは、前記エッジを検出する処理として、空間周波数の検出、膨張処理、収縮処理、およびラプラシアンフィルタのうちいずれか1以上の手法を用いた処理の結果に基づいて、前記第1の領域と前記第2の領域とに区分することを特徴とする、請求項2に記載の情報処理装置である。
請求項4に記載された発明は、前記プロセッサは、機械学習モデルを用いて前記エッジを検出する処理を行うことを特徴とする、請求項2に記載の情報処理装置である。
請求項5に記載された発明は、前記プロセッサは、前記第1のオブジェクトの画像が前記ラスタ形式で表現されている場合、当該第1のオブジェクトの画像をベクタ形式に変換し、再び前記ラスタ形式に変換した第3のオブジェクトの画像を生成し、前記第1のオブジェクトの画像と前記第3のオブジェクトの画像との違いに基づいて、当該第1のオブジェクトの画像を前記第1の領域と前記第2の領域とに区分することを特徴とする、請求項1に記載の情報処理装置である。
請求項6に記載された発明は、前記プロセッサは、前記第3のオブジェクトの画像と前記第1のオブジェクトの画像との違いとして、特徴量の違いに基づいて、前記第1の領域と前記第2の領域とに区分することを特徴とする、請求項5に記載の情報処理装置である。
請求項7に記載された発明は、前記プロセッサは、ユーザにより指定された画像および当該画像に含まれる領域に基づいて、前記第1のオブジェクトの画像を特定し、前記第1の領域と前記第2の領域とに区分することを特徴とする、請求項1に記載の情報処理装置である。
請求項8に記載された発明は、前記第2の領域が、前記ユーザの操作による編集の候補となる領域として区分されることを特徴とする、請求項7に記載の情報処理装置である。
請求項9に記載された発明は、前記ユーザの操作による編集が、動画化するための編集であることを特徴とする、請求項8に記載の情報処理装置である。
請求項10に記載された発明は、前記プロセッサは、前記第1の領域の画像と、前記第2の領域の画像とを合成することで前記第2のオブジェクトの画像を生成することを特徴とする、請求項1に記載の情報処理装置である。
請求項11に記載された発明は、前記プロセッサは、下書きとなる前記第1の領域の画像に、前記第2の領域の画像を上書きして合成することで前記第2のオブジェクトの画像を生成することを特徴とする、請求項10に記載の情報処理装置である。
請求項12に記載された発明は、情報処理装置で処理される画像ファイルのデータ構造において、前記画像ファイルに含まれるオブジェクトの画像のうち第1の領域の画像をラスタ形式で表現した第1のデータと、当該オブジェクトの画像のうち第2の領域の画像をベクタ形式で表現した第2のデータとを含み、前記画像ファイルが使用された場合、前記第1の領域の画像と、前記第2の領域の画像とが合成された画像を表示する処理を実行することを特徴とする、画像ファイルのデータ構造である。
請求項13に記載された発明は、前記第2のデータは、前記第1のデータを変換したデータであることを特徴とする、請求項12に記載の画像ファイルのデータ構造である。
請求項14に記載された発明は、プロセッサを備え、前記プロセッサは、画像に含まれる第1のオブジェクトの画像を指定するための第1の入力操作を受け付け、前記第1のオブジェクトの画像のうち、ラスタ形式で表現すべき第1の領域と、ベクタ形式で表現すべき第2の領域との少なくとも一方を指定するための第2の入力操作を受け付け、受け付けた前記第1の入力操作および前記第2の入力操作の内容に基づいて、前記ラスタ形式で表現された前記第1の領域の画像と、前記ベクタ形式で表現された前記第2の領域の画像とを含む第2のオブジェクトの画像が生成されると、当該第2のオブジェクトの画像を表示する制御を行うことを特徴とする、情報処理装置である。
請求項15に記載された発明は、前記第1の入力操作および前記第2の入力操作が、予め定められたアプリケーションソフトウェアを用いて行われることを特徴とする、請求項14に記載の情報処理装置である。
請求項16に記載された発明は、前記第2の入力操作が、動画化する領域を指定するための入力操作であることを特徴とする、請求項15に記載の情報処理装置である。
請求項17に記載された発明は、画像に含まれる第1のオブジェクトの画像を指定するための第1の入力操作を受け付ける第1受付手段と、前記第1のオブジェクトの画像のうちラスタ形式で表現すべき第1の領域と、ベクタ形式で表現すべき第2の領域とベクタ形式で表現する領域との少なくとも一方を指定するための第2の入力操作を受け付ける第2受付手段と、前記第1の入力操作および前記第2の入力操作の内容に基づいて、前記第1の領域の画像と前記第2の領域の画像とを含む第2のオブジェクトの画像を生成する生成手段と、前記第2のオブジェクトの画像を表示する表示手段と、を有することを特徴とする、情報処理システムである。
請求項18に記載された発明は、コンピュータに、画像に含まれる第1のオブジェクトの画像の態様に応じて、当該第1のオブジェクトの画像を、ラスタ形式で表現すべき第1の領域と、ベクタ形式で表現すべき第2の領域とに区分する機能と、前記第1のオブジェクトの画像が、前記ラスタ形式で表現されている場合には、前記第2の領域の画像を前記ベクタ形式に変換し、前記ベクタ形式で表現されている場合には、前記第1の領域の画像を前記ラスタ形式に変換する機能と、前記第1の領域の画像と前記第2の領域の画像とを含む第2のオブジェクトの画像を生成する機能と、を実現させるためのプログラムである。
請求項2に記載された発明は、前記プロセッサは、前記第1のオブジェクトの画像のエッジを検出する処理の結果に基づいて、前記第1の領域と前記第2の領域とに区分することを特徴とする、請求項1に記載の情報処理装置である。
請求項3に記載された発明は、前記プロセッサは、前記エッジを検出する処理として、空間周波数の検出、膨張処理、収縮処理、およびラプラシアンフィルタのうちいずれか1以上の手法を用いた処理の結果に基づいて、前記第1の領域と前記第2の領域とに区分することを特徴とする、請求項2に記載の情報処理装置である。
請求項4に記載された発明は、前記プロセッサは、機械学習モデルを用いて前記エッジを検出する処理を行うことを特徴とする、請求項2に記載の情報処理装置である。
請求項5に記載された発明は、前記プロセッサは、前記第1のオブジェクトの画像が前記ラスタ形式で表現されている場合、当該第1のオブジェクトの画像をベクタ形式に変換し、再び前記ラスタ形式に変換した第3のオブジェクトの画像を生成し、前記第1のオブジェクトの画像と前記第3のオブジェクトの画像との違いに基づいて、当該第1のオブジェクトの画像を前記第1の領域と前記第2の領域とに区分することを特徴とする、請求項1に記載の情報処理装置である。
請求項6に記載された発明は、前記プロセッサは、前記第3のオブジェクトの画像と前記第1のオブジェクトの画像との違いとして、特徴量の違いに基づいて、前記第1の領域と前記第2の領域とに区分することを特徴とする、請求項5に記載の情報処理装置である。
請求項7に記載された発明は、前記プロセッサは、ユーザにより指定された画像および当該画像に含まれる領域に基づいて、前記第1のオブジェクトの画像を特定し、前記第1の領域と前記第2の領域とに区分することを特徴とする、請求項1に記載の情報処理装置である。
請求項8に記載された発明は、前記第2の領域が、前記ユーザの操作による編集の候補となる領域として区分されることを特徴とする、請求項7に記載の情報処理装置である。
請求項9に記載された発明は、前記ユーザの操作による編集が、動画化するための編集であることを特徴とする、請求項8に記載の情報処理装置である。
請求項10に記載された発明は、前記プロセッサは、前記第1の領域の画像と、前記第2の領域の画像とを合成することで前記第2のオブジェクトの画像を生成することを特徴とする、請求項1に記載の情報処理装置である。
請求項11に記載された発明は、前記プロセッサは、下書きとなる前記第1の領域の画像に、前記第2の領域の画像を上書きして合成することで前記第2のオブジェクトの画像を生成することを特徴とする、請求項10に記載の情報処理装置である。
請求項12に記載された発明は、情報処理装置で処理される画像ファイルのデータ構造において、前記画像ファイルに含まれるオブジェクトの画像のうち第1の領域の画像をラスタ形式で表現した第1のデータと、当該オブジェクトの画像のうち第2の領域の画像をベクタ形式で表現した第2のデータとを含み、前記画像ファイルが使用された場合、前記第1の領域の画像と、前記第2の領域の画像とが合成された画像を表示する処理を実行することを特徴とする、画像ファイルのデータ構造である。
請求項13に記載された発明は、前記第2のデータは、前記第1のデータを変換したデータであることを特徴とする、請求項12に記載の画像ファイルのデータ構造である。
請求項14に記載された発明は、プロセッサを備え、前記プロセッサは、画像に含まれる第1のオブジェクトの画像を指定するための第1の入力操作を受け付け、前記第1のオブジェクトの画像のうち、ラスタ形式で表現すべき第1の領域と、ベクタ形式で表現すべき第2の領域との少なくとも一方を指定するための第2の入力操作を受け付け、受け付けた前記第1の入力操作および前記第2の入力操作の内容に基づいて、前記ラスタ形式で表現された前記第1の領域の画像と、前記ベクタ形式で表現された前記第2の領域の画像とを含む第2のオブジェクトの画像が生成されると、当該第2のオブジェクトの画像を表示する制御を行うことを特徴とする、情報処理装置である。
請求項15に記載された発明は、前記第1の入力操作および前記第2の入力操作が、予め定められたアプリケーションソフトウェアを用いて行われることを特徴とする、請求項14に記載の情報処理装置である。
請求項16に記載された発明は、前記第2の入力操作が、動画化する領域を指定するための入力操作であることを特徴とする、請求項15に記載の情報処理装置である。
請求項17に記載された発明は、画像に含まれる第1のオブジェクトの画像を指定するための第1の入力操作を受け付ける第1受付手段と、前記第1のオブジェクトの画像のうちラスタ形式で表現すべき第1の領域と、ベクタ形式で表現すべき第2の領域とベクタ形式で表現する領域との少なくとも一方を指定するための第2の入力操作を受け付ける第2受付手段と、前記第1の入力操作および前記第2の入力操作の内容に基づいて、前記第1の領域の画像と前記第2の領域の画像とを含む第2のオブジェクトの画像を生成する生成手段と、前記第2のオブジェクトの画像を表示する表示手段と、を有することを特徴とする、情報処理システムである。
請求項18に記載された発明は、コンピュータに、画像に含まれる第1のオブジェクトの画像の態様に応じて、当該第1のオブジェクトの画像を、ラスタ形式で表現すべき第1の領域と、ベクタ形式で表現すべき第2の領域とに区分する機能と、前記第1のオブジェクトの画像が、前記ラスタ形式で表現されている場合には、前記第2の領域の画像を前記ベクタ形式に変換し、前記ベクタ形式で表現されている場合には、前記第1の領域の画像を前記ラスタ形式に変換する機能と、前記第1の領域の画像と前記第2の領域の画像とを含む第2のオブジェクトの画像を生成する機能と、を実現させるためのプログラムである。
請求項1の本発明によれば、ラスタ形式単独またはベクタ形式単独で表現されたオブジェクトよりも、データ量の増大が抑制され、かつ、意図する画質が維持されたオブジェクトを生成可能とする情報処理装置を提供できる。
請求項2の本発明によれば、エッジを検出する処理を行うことで、エッジの表現に適したベクタ形式で表現すべき領域を特定することが可能となる。
請求項3の本発明によれば、エッジを検出する処理として、空間周波数の検出、膨張処理、収縮処理、およびラプラシアンフィルタのうちいずれか1以上の手法を用いた処理を行うことで、エッジの表現に適したベクタ形式で表現すべき領域を特定することが可能となる。
請求項4の本発明によれば、エッジを検出する処理として、機械学習モデルを用いた処理を行うことで、エッジの表現に適したベクタ形式で表現すべき領域を特定することが可能となる。
請求項5の本発明によれば、ラスタ形式の第1のオブジェクトの画像をベクタ形式に変換した後、再びラスタ形式に変換することで生成される第3のオブジェクトの画像と、第1のオブジェクトの画像とを比較し、違いが大きい領域は、ラスタ形式で表現すべき領域とすることができ、違いが小さい領域は、ベクタ形式で表現すべき領域とすることができる。
請求項6の本発明によれば、ラスタ形式の第1のオブジェクトの画像をベクタ形式に変換した後、再びラスタ形式に変換することで生成される第3のオブジェクトの画像と、第1のオブジェクトの画像とを比較し、特徴量の違いが大きい領域は、ラスタ形式で表現すべき領域とすることができ、特徴量の違いが小さい領域は、ベクタ形式で表現すべき領域とすることができる。
請求項7の本発明によれば、画像に含まれる第1のオブジェクトの画像を特定する処理と、第1の領域と第2の領域とを区分する処理とに、ユーザの意思を反映させることが可能となる。
請求項8の本発明によれば、データ量の増大を抑制しながら、第1のオブジェクトの画像の一部の領域を容易に編集することが可能となる。
請求項9の本発明によれば、データ量の増大を抑制しながら、第1のオブジェクトの画像の一部の領域を動画化させることが可能となる。
請求項10の本発明によれば、ユーザは、特別な操作を行うことなく、ラスタ形式で表現された第1の領域の画像と、ベクタ形式で表現された第2の領域の画像とが合成されたオブジェクトの画像を生成することが可能となる。
請求項11の本発明によれば、ユーザは、特別な操作を行うことなく、下書きとなるラスタ形式で表現された第1の領域の画像に、ベクタ形式で表現された第2の領域の画像を上書きすることで合成されたオブジェクトの画像を生成することが可能となる。
請求項12の本発明によれば、ラスタ形式単独またはベクタ形式単独で表現されたオブジェクトよりも、データ量の増大が抑制され、かつ、意図する画質が維持されたオブジェクトを生成する処理を情報処理装置に実行させることができる。
請求項13の本発明によれば、ラスタ形式単独またはベクタ形式単独で表現されたオブジェクトよりも、データ量の増大が抑制され、かつ、意図する画質が維持されたオブジェクトを生成する処理を情報処理装置に実行させることができる。
請求項14の本発明によれば、ラスタ形式単独またはベクタ形式単独で表現されたオブジェクトよりも、データ量の増大が抑制され、かつ、意図する画質が維持されたオブジェクトを生成可能とする情報処理装置を提供できる。
請求項15の本発明によれば、アプリケーションソフトウェアを用いた入力操作の内容に基づいて、画像に含まれる第1のオブジェクトの画像を特定する処理と、第1の領域と第2の領域とを区分する処理とが可能となる。
請求項16の本発明によれば、アプリケーションソフトウェアを用いた入力操作の内容に基づいて、動画化する領域を区分する処理が可能となる。
請求項17の本発明によれば、ラスタ形式単独またはベクタ形式単独で表現されたオブジェクトよりも、データ量の増大が抑制され、かつ、意図する画質が維持されたオブジェクトを生成可能とする情報処理システムを提供できる。
請求項18の本発明によれば、ラスタ形式単独またはベクタ形式単独で表現されたオブジェクトよりも、データ量の増大が抑制され、かつ、意図する画質が維持されたオブジェクトを生成可能とするプログラムを提供できる。
請求項2の本発明によれば、エッジを検出する処理を行うことで、エッジの表現に適したベクタ形式で表現すべき領域を特定することが可能となる。
請求項3の本発明によれば、エッジを検出する処理として、空間周波数の検出、膨張処理、収縮処理、およびラプラシアンフィルタのうちいずれか1以上の手法を用いた処理を行うことで、エッジの表現に適したベクタ形式で表現すべき領域を特定することが可能となる。
請求項4の本発明によれば、エッジを検出する処理として、機械学習モデルを用いた処理を行うことで、エッジの表現に適したベクタ形式で表現すべき領域を特定することが可能となる。
請求項5の本発明によれば、ラスタ形式の第1のオブジェクトの画像をベクタ形式に変換した後、再びラスタ形式に変換することで生成される第3のオブジェクトの画像と、第1のオブジェクトの画像とを比較し、違いが大きい領域は、ラスタ形式で表現すべき領域とすることができ、違いが小さい領域は、ベクタ形式で表現すべき領域とすることができる。
請求項6の本発明によれば、ラスタ形式の第1のオブジェクトの画像をベクタ形式に変換した後、再びラスタ形式に変換することで生成される第3のオブジェクトの画像と、第1のオブジェクトの画像とを比較し、特徴量の違いが大きい領域は、ラスタ形式で表現すべき領域とすることができ、特徴量の違いが小さい領域は、ベクタ形式で表現すべき領域とすることができる。
請求項7の本発明によれば、画像に含まれる第1のオブジェクトの画像を特定する処理と、第1の領域と第2の領域とを区分する処理とに、ユーザの意思を反映させることが可能となる。
請求項8の本発明によれば、データ量の増大を抑制しながら、第1のオブジェクトの画像の一部の領域を容易に編集することが可能となる。
請求項9の本発明によれば、データ量の増大を抑制しながら、第1のオブジェクトの画像の一部の領域を動画化させることが可能となる。
請求項10の本発明によれば、ユーザは、特別な操作を行うことなく、ラスタ形式で表現された第1の領域の画像と、ベクタ形式で表現された第2の領域の画像とが合成されたオブジェクトの画像を生成することが可能となる。
請求項11の本発明によれば、ユーザは、特別な操作を行うことなく、下書きとなるラスタ形式で表現された第1の領域の画像に、ベクタ形式で表現された第2の領域の画像を上書きすることで合成されたオブジェクトの画像を生成することが可能となる。
請求項12の本発明によれば、ラスタ形式単独またはベクタ形式単独で表現されたオブジェクトよりも、データ量の増大が抑制され、かつ、意図する画質が維持されたオブジェクトを生成する処理を情報処理装置に実行させることができる。
請求項13の本発明によれば、ラスタ形式単独またはベクタ形式単独で表現されたオブジェクトよりも、データ量の増大が抑制され、かつ、意図する画質が維持されたオブジェクトを生成する処理を情報処理装置に実行させることができる。
請求項14の本発明によれば、ラスタ形式単独またはベクタ形式単独で表現されたオブジェクトよりも、データ量の増大が抑制され、かつ、意図する画質が維持されたオブジェクトを生成可能とする情報処理装置を提供できる。
請求項15の本発明によれば、アプリケーションソフトウェアを用いた入力操作の内容に基づいて、画像に含まれる第1のオブジェクトの画像を特定する処理と、第1の領域と第2の領域とを区分する処理とが可能となる。
請求項16の本発明によれば、アプリケーションソフトウェアを用いた入力操作の内容に基づいて、動画化する領域を区分する処理が可能となる。
請求項17の本発明によれば、ラスタ形式単独またはベクタ形式単独で表現されたオブジェクトよりも、データ量の増大が抑制され、かつ、意図する画質が維持されたオブジェクトを生成可能とする情報処理システムを提供できる。
請求項18の本発明によれば、ラスタ形式単独またはベクタ形式単独で表現されたオブジェクトよりも、データ量の増大が抑制され、かつ、意図する画質が維持されたオブジェクトを生成可能とするプログラムを提供できる。
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
(情報処理システムの構成)
図1は、本実施の形態が適用される情報処理システム1の全体構成の一例を示す図である。
情報処理システム1は、管理サーバ10と、ユーザ端末30とがネットワーク90を介して接続されることにより構成されている。ネットワーク90は、例えば、LAN(Local Area Network)、インターネット等である。
(情報処理システムの構成)
図1は、本実施の形態が適用される情報処理システム1の全体構成の一例を示す図である。
情報処理システム1は、管理サーバ10と、ユーザ端末30とがネットワーク90を介して接続されることにより構成されている。ネットワーク90は、例えば、LAN(Local Area Network)、インターネット等である。
管理サーバ10は、情報処理システム1を管理するサーバとしての情報処理装置である。管理サーバ10は、例えば、ページ全体の画像に含まれるオブジェクトの画像の態様に応じて、そのオブジェクトの画像を、ラスタ形式で表現すべき領域と、ベクタ形式で表現すべき領域とに区分する。また、管理サーバ10は、ページ全体の画像に含まれる1以上のオブジェクトの画像のうち、画像処理の対象となるオブジェクトの画像がラスタ形式で表現されている場合には、このうちベクタ形式で表現すべき領域の画像をベクタ形式の表現に変換する。また、管理サーバ10は、画像処理の対象となるオブジェクトの画像がベクタ形式で表現されている場合には、このうちラスタ形式で表現すべき領域をラスタ形式に変換する。そして、管理サーバ10は、ラスタ形式で表現された領域と、ベクタ形式で表現された領域とを含むオブジェクトの画像を生成する。管理サーバ10によるこれらの処理の詳細については後述する。なお、本明細書において、「画像」という表現には、「画像のデータ」が含まれるものとする。
ここで、「ラスタ形式」は、濃度が違う画素や様々な色の画素によって画像を表現する画像記述形式であり、写真やグラフィックのように複雑な陰影を表現する際に多く用いられる。ラスタ形式の画像は、BMP、JPEG、TIFF、GIF、PNG等のファイル形式で保存される。ラスタ形式は、色や階調の再現性を得意とするが、画像に含まれる線や境界を示すエッジの領域の再現性に課題があるとされている。
また、「ベクタ形式」は、ベクトルデータによって画像を表現する画像記述形式である。「ベクトルデータ」は、座標値およぶ属性情報により、点、線、多角形等を表現したデータである。ベクタ形式の画像は、SVG、PDF、HTML等のファイル形式で保存される。なお、本実施の形態では、ベクタ形式の画像はSVGのファイル形式で保存される。イラストやグラフィックデータをベクタ形式で表現した場合、ラスタ形式で表現するよりもデータ量を抑えることができるが、色や階調の再現性に課題があるとされている。
ユーザ端末30は、ユーザが操作するパーソナルコンピュータ、タブレット端末、スマートフォン等の情報処理装置である。ユーザ端末30は、画像処理の対象となるオブジェクトの画像を含むページを指定するための入力操作を受け付ける。また、ユーザ端末30は、指定したページ全体の画像のうち、画像処理の対象となるオブジェクトの画像を指定するための入力操作を受け付ける。
また、ユーザ端末30は、指定したオブジェクトの画像のうち、ラスタ形式で表現すべき領域とベクタ形式で表現すべき領域との少なくとも一方を指定するための入力操作を受け付ける。そして、入力操作の内容に基づいて、ラスタ形式で表現された領域と、ベクタ形式で表現された領域とを含むオブジェクトの画像が管理サーバ10にて生成されると、ユーザ端末30は、そのオブジェクトの画像を取得して表示する。なお、ユーザ端末30によるこれらの処理の詳細については後述する。
なお、上述した情報処理システム1を構成する管理サーバ10およびユーザ端末30の各々の機能は一例であり、情報処理システム1全体として上述の機能を備えていればよい。このため、上述の機能のうち一部または全部を情報処理システム1内で分担してもよいし協働してもよい。すなわち、管理サーバ10の機能の一部または全部をユーザ端末30の機能としてもよいし、ユーザ端末30の機能の一部または全部を管理サーバ10の機能としてもよい。さらに、情報処理システム1を構成する管理サーバ10およびユーザ端末30の各々の機能の一部または全部を、図示せぬ他のサーバ等に移譲してもよい。これにより、情報処理システム1全体としての処理が促進され、また、処理を補完し合うことも可能となる。
(管理サーバのハードウェア構成)
図2は、管理サーバ10のハードウェア構成を示す図である。
管理サーバ10は、制御部11と、メモリ12と、記憶部13と、通信部14と、操作部15と、表示部16とを有している。これらの各部は、データバス、アドレスバス、PCI(Peripheral Component Interconnect)バス等で接続されている。
図2は、管理サーバ10のハードウェア構成を示す図である。
管理サーバ10は、制御部11と、メモリ12と、記憶部13と、通信部14と、操作部15と、表示部16とを有している。これらの各部は、データバス、アドレスバス、PCI(Peripheral Component Interconnect)バス等で接続されている。
制御部11は、OS(基本ソフトウェア)やアプリケーションソフトウェア(応用ソフトウェア)等の各種ソフトウェアの実行を通じて管理サーバ10の機能の制御を行うプロセッサである。制御部11は、例えばCPU(Central Processing Unit)で構成される。メモリ12は、各種ソフトウェアやその実行に用いるデータ等を記憶する記憶領域であり、演算に際して作業エリアとして用いられる。メモリ12は、例えばRAM(Random Access Memory)等で構成される。
記憶部13は、各種ソフトウェアに対する入力データや各種ソフトウェアからの出力データ等を記憶する記憶領域である。記憶部13は、例えばプログラムや各種設定データなどの記憶に用いられるHDD(Hard Disk Drive)やSSD(Solid State Drive)、半導体メモリ等で構成される。記憶部13には、各種情報を記憶するデータベースとして、例えば、静止画像および動画像が記憶された画像DB801等が格納されている。
通信部14は、ネットワーク90を介してユーザ端末30および外部との間でデータの送受信を行う。操作部15は、例えばキーボード、マウス、機械式のボタン、スイッチで構成され、入力操作を受け付ける。操作部15には、表示部16と一体的にタッチパネルを構成するタッチセンサも含まれる。表示部16は、例えば情報の表示に用いられる液晶ディスプレイや有機EL(=Electro Luminescence)ディスプレイで構成され、画像やテキストのデータなどを表示する。
(ユーザ端末のハードウェア構成)
ユーザ端末30のハードウェア構成は、図2に示す管理サーバ10のハードウェア構成と同様の構成を備えている。このため、ユーザ端末30のハードウェア構成の図示および説明を省略する。
ユーザ端末30のハードウェア構成は、図2に示す管理サーバ10のハードウェア構成と同様の構成を備えている。このため、ユーザ端末30のハードウェア構成の図示および説明を省略する。
(管理サーバの制御部の機能構成)
図3は、管理サーバ10の制御部11の機能構成を示す図である。
管理サーバ10の制御部11では、情報取得部101と、オブジェクト特定部102と、エッジ検出部103と、領域区分部104と、形式変換部105と、画像生成部106と、送信制御部107とが機能する。
図3は、管理サーバ10の制御部11の機能構成を示す図である。
管理サーバ10の制御部11では、情報取得部101と、オブジェクト特定部102と、エッジ検出部103と、領域区分部104と、形式変換部105と、画像生成部106と、送信制御部107とが機能する。
情報取得部101は、各種情報を取得する。例えば、情報取得部101は、ユーザ端末30から送信されてきた、ユーザにより指定された情報(以下、「指定情報」と呼ぶ。)を取得する。指定情報には、例えば、画像処理の対象として指定されたページに関する情報や、指定されたページのうち画像処理の対象として指定されたオブジェクトに関する情報等が含まれる。
このうち、画像処理の対象として指定されたページに関する情報には、画像処理の対象として指定されたページ全体の画像のデータ、または、画像処理の対象として指定されたページ全体の画像のデータにアクセスするための情報が含まれる。また、指定情報には、指定されたオブジェクトのうち、ラスタ形式で表現すべきとして指定された領域に関する情報、ベクタ形式で表現すべきとして指定された領域に関する情報が含まれる。
オブジェクト特定部102は、画像処理の対象として指定されたページ全体の画像に含まれる1以上のオブジェクトの中から画像処理の対象となるオブジェクトを特定する。例えば、オブジェクト特定部102は、情報取得部101により取得された指定情報に基づいて、1以上のオブジェクトの中から画像処理の対象となるオブジェクトを特定する。この場合、オブジェクト特定部102は、指定情報に含まれる、画像処理の対象として指定されたページに関する情報、およびそのページに含まれる1以上のオブジェクトの中から画像処理の対象として指定されたオブジェクトに関する情報に基づいて、画像処理の対象となるオブジェクトを特定する。
また、例えば、情報取得部101により指定情報が取得されない場合には、オブジェクト特定部102は、ページ全体の画像を解析した結果に基づいて、その画像に含まれる1以上のオブジェクトの中から画像処理の対象の候補となるオブジェクトを抽出する。画像処理の対象の候補として抽出された1以上のオブジェクトは、選択して指定可能な態様でユーザ端末30の表示部に表示される。そして、画像処理の対象となるオブジェクトが指定されると、その指定に関する情報を少なくとも含む指定情報が、管理サーバ10からユーザ端末30に向けて送信される。
エッジ検出部103は、オブジェクト特定部102により画像処理の対象として特定されたオブジェクトの画像からエッジを検出する。なお、エッジ検出部103がエッジを検出する際に用いる手法は特に限定されず、例えば、空間周波数を検出する処理、膨張処理および収縮処理、ラプラシアンフィルタを用いた処理等によってエッジを検出する。
このうち、空間周波数を検出する処理によってエッジを検出する場合、エッジ検出部103は、空間周波数が高い領域をベクタ形式で表現し、それ以外の非エッジ領域をラスタ形式で表現する。また、膨張処理および収縮処理によってエッジを検出する場合、エッジ検出部103は、膨張処理によって二値画像の白色領域を増やし、収縮処理によって白色領域を減らすことでエッジを検出する。例えば、RGBカラーモデルの赤(Red)、緑(Green)、および青(Blue)の各々について、n×n(nは通常3または5)の膨張処理と、n×nの収縮処理とを行い、その差(絶対値)をとる。また、ラプラシアンフィルタとは、二次微分を利用してオブジェクトの画像からエッジを検出する空間フィルタのことをいう。さらに、エッジ検出部103は、機械学習モデルを用いてエッジを検出する処理を行ってもよい。
領域区分部104は、オブジェクト特定部102により画像処理の対象として特定されたオブジェクトの態様に応じて、そのオブジェクトの画像を、ラスタ形式で表現すべき領域と、ベクタ形式で表現すべき領域とに区分する。具体的には、領域区分部104は、エッジ検出部103によるエッジの検出結果に基づいて、ラスタ形式で表現すべき領域と、ベクタ形式で表現すべき領域とに区分する。例えば、領域区分部104は、エッジの領域については、ベクタ形式で表現すべき領域として区分し、エッジ以外の非エッジ領域については、ラスタ形式で表現すべき領域として区分する。
また、領域区分部104は、オブジェクト特定部102により画像処理の対象として特定されたオブジェクトの態様に応じて、そのオブジェクトの画像を、編集の候補となる領域と、編集の候補とならない領域とに区分することもできる。この場合、領域区分部104は、例えば、ベクタ形式で表現すべき領域として区分された領域を、編集の候補となる領域とし、ラスタ形式で表現すべき領域として区分された領域を、編集の候補とならない領域とすることもできる。なお、「編集」とは、例えば、動画化するための編集等が挙げられる。
また、領域区分部104は、後述する形式変換部105による変換処理の結果に基づいて、オブジェクトの画像を、ラスタ形式で表現すべき領域と、ベクタ形式で表現すべき領域とに区分することもできる。この場合、まず、形式変換部105が、ラスタ形式で表現されていたオブジェクトの画像をベクタ形式に変換し、その後、再びラスタ形式に変換する。そして、領域区分部104が、変換前後のラスタ形式の画像を比較し、その違いに基づいて、オブジェクトの画像を、ラスタ形式で表現すべき領域と、ベクタ形式で表現すべき領域とに区分する。
変換前後のラスタ形式の画像を比較する手法を用いた場合、変換前後のラスタ形式の画像の違いが大きい領域はラスタ形式で表現すべき領域とし、変換前後のラスタ形式の画像の違いが小さい領域はベクタ形式で表現すべき領域とすることができる。なお、ここでいう「違い」としては、例えば、画像の特徴量の違いが挙げられる。この場合、例えば、領域区分部104は、特徴量の差を評価する関数として予め定められたものに基づいて、ブジェクトの画像を、ラスタ形式で表現すべき領域と、ベクタ形式で表現すべき領域とに区分する。
形式変換部105は、画像(静止画像、動画像)の一部または全部の記述形式を変換する。例えば、形式変換部105は、画像処理の対象として指定されたオブジェクトの画像が、ラスタ形式で表現されている場合にはベクタ形式に変換し、ベクタ形式で表現されている場合にはラスタ形式に変換する。また、例えば、形式変換部105は、ラスタ形式で表現されたオブジェクトの画像のうち、ベクタ形式で表現すべき領域の画像をベクタ形式の表現に変換し、ベクタ形式で表現されたオブジェクトの画像のうち、ラスタ形式で表現すべき領域の画像をラスタ形式の表現に変換する。
形式変換部105は、例えば以下のような手法を用いて、ラスタ形式で表現されたオブジェクトの画像をベクタ形式に変換する。すなわち、形式変換部105は、ラスタ形式で表現されたオブジェクトの画像の減色、色の分割、色の階層の分離、色の階層ごとの輪郭や点の抽出、色の階層ごとのベクトルデータの生成、画像の描画、色の階層の統合、描画時の欠損部分の補正等の処理を行う。
形式変換部105によるこれらの処理のうち、ラスタ形式で表現されたオブジェクトの画像を減色する処理では、例えば、ベクトル量子化、中央値分割法(メディアンカット)、K平均法(K-means)等のアルゴリズムを用いられる。ベクトル量子化は、複数の画素またはそれに対応するものをまとめて1つの符号に写像することで画像を減色する手法である。また、中央値分割法(メディアンカット)は、RGBカラーモデルの画素を、3次元の直方体内の座標として考えて、その直方体を、画素数が同じになるように中央値(メディアン)で分割していく手法である。また、K平均法(K-means)は、代表色に基づいて各画素を複数のグループに分割し、そのグループごとの画素データの平均色を代表色に置き換える処理を代表色の変化がなくなるまで繰り返すことで画像を減色する手法である。
また、形式変換部105は、ラスタ形式で表現されたオブジェクトの画像をベクタ形式に変換した後、再びラスタ形式に変換することもできるし、ベクタ形式で表現されたオブジェクトの画像をラスタ形式に変換した後、再びベクタ形式に変換することもできる。なお、形式変換部105は、画像記述形式を変換する際、マスクデータを生成してもよいし、生成しなくてもよい。
画像生成部106は、形式変換部105による変換処理の結果に基づいて、ラスタ形式で表現された領域とベクタ形式で表現された領域とを含むオブジェクトの画像を生成する。例えば、画像生成部106は、ラスタ形式で表現された領域の画像と、ベクタ形式で表現された領域の画像とを合成することで、ラスタ形式で表現された領域とベクタ形式で表現された領域とを含むオブジェクトの画像を生成する。具体的には、例えば、画像生成部106は、下書きとなるラスタ形式で表現された領域の画像に、ベクタ形式で表現された領域の画像を上書きして合成することで、ラスタ形式で表現された領域とベクタ形式で表現された領域とを含むオブジェクトの画像を生成する。なお、画像生成部106により生成される画像の具体例については、図10を参照して後述する。
また、画像生成部106は、例えばベクタ形式で表現された領域の画像が、編集によって動画化されている場合には、下書きとなるラスタ形式で表現された領域の画像に、ベクタ形式で表現された領域の動画像を上書きして合成することで、ラスタ形式で表現された領域と、少なくとも一部が動画化された、ベクタ形式で表現された領域とを含むオブジェクトの画像を生成する。
送信制御部107は、オブジェクト特定部102により特定された、画像処理の対象となるオブジェクトに関する情報を、ユーザ端末30に向けて送信する制御を行う。また、送信制御部107は、画像生成部106により生成された、ラスタ形式で表現された領域とベクタ形式で表現された領域とを含むオブジェクトの画像を、ユーザ端末30に向けて送信する制御を行う。
(ユーザ端末の制御部の機能構成)
図4は、ユーザ端末30の制御部の機能構成を示す図である。
ユーザ端末30の制御部では、入力受付部301と、送信制御部302と、情報取得部303と、表示制御部304とが機能する。
図4は、ユーザ端末30の制御部の機能構成を示す図である。
ユーザ端末30の制御部では、入力受付部301と、送信制御部302と、情報取得部303と、表示制御部304とが機能する。
入力受付部301は、第1受付手段または第2受付手段として、ユーザの入力操作を受け付ける。例えば、入力受付部301は、画像処理の対象となるページを指定するための入力操作を受け付ける。また、例えば、入力受付部301は、指定されたページに含まれる、画像処理の対象となるオブジェクトを指定するための入力操作を受け付ける。また、例えば、入力受付部301は、指定されたオブジェクトの画像のうち、ラスタ形式で表現すべき領域を指定するための入力操作を受け付ける。
また、例えば、入力受付部301は、指定されたオブジェクトの画像のうち、ベクタ形式で表現すべき領域を指定するための入力操作を受け付ける。また、例えば、入力受付部301は、画像処理の対象として特定されたオブジェクトの画像のうち、動画化する領域を指定するため入力操作を受け付ける。具体的には、入力受付部301は、画像処理の対象として特定されたオブジェクトの画像のうち、ベクタ形式で表現すべきと区分された領域の画像を、動画化する領域として指定するための入力操作を受け付ける。
ユーザ端末30に対する入力操作は、例えば、ユーザ端末30にインストールされた専用のアプリケーションソフトウェアを起動することで表示部に表示されるユーザインターフェースを介して行われてもよいし、専用のウェブサイトにアクセスすることで表示部に表示されるユーザインターフェースを介して行われてもよい。
送信制御部302は、入力受付部301により受け付けられた入力操作の内容を、管理サーバ10に向けて送信する制御を行う。具体的には、例えば、送信制御部302は、受け付けられた入力操作の内容としての指定情報を、管理サーバ10に向けて送信する制御を行う。
情報取得部303は、各種情報を取得する。例えば、情報取得部303は、管理サーバ10から送信されてきた、画像処理の対象として特定されたオブジェクトに関する情報を取得する。また、例えば、情報取得部303は、管理サーバ10から送信されてきた、ラスタ形式で表現された領域の画像とベクタ形式で表現された領域の画像とを含むオブジェクトの画像を取得する。
表示制御部304は、各種の情報を表示部に表示する制御を行う。例えば、情報取得部303は、情報取得部303により取得された、画像処理の対象として特定されたオブジェクトの画像を表示部に表示する制御を行う。また、例えば、表示制御部304は、情報取得部303により取得された、ラスタ形式で表現された領域の画像とベクタ形式で表現された領域の画像とを含むオブジェクトの画像を表示部に表示する制御を行う。なお、画像の表示は、上述のユーザインターフェースを介して行われてもよい。
(管理サーバの処理)
図5は、管理サーバの処理の流れを示すフローチャートである。
管理サーバ10は、ユーザ端末30から指定情報が送信されてくると(ステップ601でYES)、送信されてきた指定情報を取得し(ステップ602)、取得した指定情報に基づいて、指定されたページ全体の画像を取得する(ステップ603)。これに対して、ユーザ端末30から指定情報が送信されてきていない場合(ステップ601でNO)、管理サーバ10は、ユーザ端末30から指定情報が送信されてくるまでステップ601を繰り返す。
図5は、管理サーバの処理の流れを示すフローチャートである。
管理サーバ10は、ユーザ端末30から指定情報が送信されてくると(ステップ601でYES)、送信されてきた指定情報を取得し(ステップ602)、取得した指定情報に基づいて、指定されたページ全体の画像を取得する(ステップ603)。これに対して、ユーザ端末30から指定情報が送信されてきていない場合(ステップ601でNO)、管理サーバ10は、ユーザ端末30から指定情報が送信されてくるまでステップ601を繰り返す。
管理サーバ10は、ステップ602で取得した指定情報の中に画像処理の対象となるオブジェクトの指定に関する情報が含まれている場合には(ステップ604でYES)、その情報に基づいて、画像処理の対象となるオブジェクトを特定して(ステップ605)、ステップ610に進む。これに対して、指定情報の中に画像処理の対象となるオブジェクトの指定に関する情報が含まれていない場合(ステップ604でNO)、管理サーバ10は、指定されたページ全体の画像を解析した結果に基づいて、画像処理の候補となる1以上のオブジェクトを抽出してユーザ端末30に送信する(ステップ606)。
管理サーバ10は、画像処理の対象となるオブジェクトの指定に関する情報を少なくとも含む指定情報がユーザ端末30から送信されてくると(ステップ607でYES)、送信されてきた指定情報を取得し(ステップ608)、取得した情報に基づいて、1以上のオブジェクトの中から画像処理の対象となるオブジェクトを特定する(ステップ609)。これに対して、指定情報がユーザ端末30から送信されてきていない場合(ステップ607でNO)、管理サーバ10は、ユーザ端末30から指定情報が送信されてくるまでステップ607を繰り返す。
管理サーバ10は、画像処理の対象として特定したオブジェクトの画像からエッジを検出し(ステップ610)、その検出結果に基づいて、オブジェクトの画像をラスタ形式で表現すべき領域とベクタ形式で表現すべき領域とに区分し(ステップ611)、区分の結果に関する情報をユーザ端末30に向けて送信する(ステップ612)。具体的には、管理サーバ10は、エッジの領域はベクタ形式で表現すべき領域として区分し、エッジ以外の非エッジ領域はラスタ形式で表現すべき領域として区分し、その区分の結果に関する情報をユーザ端末30に向けて送信する。
管理サーバ10は、画像処理の対象となるオブジェクトの画像がラスタ形式で表現されている場合には(ステップ613でYES)、そのオブジェクトの画像のうち、ベクタ形式で表現すべき領域として区分された領域の画像をベクタ形式の表現に変換する(ステップ614)。これに対して、画像処理の対象となるオブジェクトの画像がベクタ形式で表現されている場合には(ステップ613でNO)、そのオブジェクトの画像のうち、ラスタ形式で表現すべき領域として区分された領域の画像をラスタ形式の表現に変換する(ステップ615)。
管理サーバ10は、ベクタ形式に変換した領域の画像が編集されている場合には(ステップ616でYES)、その編集の結果を反映させて(ステップ617)、ラスタ形式で表現された領域とベクタ形式で表現された領域とを含むオブジェクトの画像を生成する(ステップ618)。これに対して、ベクタ形式に変換した領域の画像について編集がなされていない場合には(ステップ616でNO)、ステップ617をスキップしてステップ618に進む。管理サーバ10は、ステップ618で生成したオブジェクトの画像をユーザ端末30に向けて送信する(ステップ619)。
(ユーザ端末の処理)
図6は、ユーザ端末30の処理の流れを示すフローチャートである。
ユーザ端末30は、画像処理の対象となるページを指定するための入力操作が行われると(ステップ701でYES)、その入力操作を受け付ける(ステップ702)。これに対して、画像処理の対象となるページを指定するための入力操作が行われていない場合(ステップ701でNO)、ユーザ端末30は、画像処理の対象となるページを指定するための入力操作が行われるまでステップ701を繰り返す。
図6は、ユーザ端末30の処理の流れを示すフローチャートである。
ユーザ端末30は、画像処理の対象となるページを指定するための入力操作が行われると(ステップ701でYES)、その入力操作を受け付ける(ステップ702)。これに対して、画像処理の対象となるページを指定するための入力操作が行われていない場合(ステップ701でNO)、ユーザ端末30は、画像処理の対象となるページを指定するための入力操作が行われるまでステップ701を繰り返す。
ユーザ端末30は、指定したページに含まれる1以上のオブジェクトのうち、画像処理の対象とするオブジェクトを指定するための入力操作が行われると(ステップ703でYES)、その入力操作を受け付けて(ステップ704)、受け付けた情報を管理サーバ10に向けて送信する(ステップ705)。これに対して、画像処理の対象とするオブジェクトを指定するための入力操作が行われていない場合(ステップ703でNO)、ステップ706に進む。
ユーザ端末30は、画像処理の対象として特定されたオブジェクトに関する情報が管理サーバ10から送信されてくると(ステップ706でYES)、送信されてきた情報を取得して(ステップ707)、取得した情報を表示部に表示する(ステップ708)。これに対して、画像処理の対象として特定されたオブジェクトに関する情報が送信されてきていない場合(ステップ706でNO)、ユーザ端末30は、画像処理の対象として特定されたオブジェクトに関する情報が送信されてくるまでステップ706を繰り返す。
ユーザ端末30は、指定されたオブジェクトのうち、ラスタ形式で表現すべき領域およびベクタ形式で表現すべき領域を指定するための入力操作が行われると(ステップ709でYES)、その入力操作を受け付けて(ステップ710)、受け付けた情報を管理サーバ10に向けて送信する(ステップ711)。これに対して、ラスタ形式で表現すべき領域およびベクタ形式で表現すべき領域を指定するための入力操作が行われていない場合(ステップ709でNO)、ステップ712に進む。
ユーザ端末30は、画像処理の対象として特定されたオブジェクトの領域の区分の結果に関する情報が管理サーバ10から送信されてくると(ステップ712でYES)、送信されてきた情報を取得して(ステップ713)、取得した情報を表示部に表示する(ステップ714)。これに対して、区分の結果に関する情報が送信されてきていない場合(ステップ712でNO)、ユーザ端末30は、区分の結果に関する情報が送信されてくるまでステップ712を繰り返す。
ユーザ端末30は、管理サーバ10によりベクタ形式で表現すべき領域に区分された領域を編集するための入力操作が行われると(ステップ715でYES)、その入力操作を受け付けて(ステップ716)、受け付けた情報を管理サーバ10に向けて送信する(ステップ717)。なお、編集するための入力操作としては、例えば、ベクタ形式で表現すべき領域に区分された領域の少なくとも一部を動画化するための入力操作等が挙げられる。これに対して、ベクタ形式で表現すべき領域に区分された領域を編集するための入力操作が行われていない場合には(ステップ715でNO)、ステップ718に進む。
管理サーバ10による画像処理の結果、ラスタ形式で表現された領域とベクタ形式で表現された領域とを含むオブジェクトの画像が生成され、その画像が管理サーバ10から送信されてくると(ステップ718でYES)、ユーザ端末30は、送信されてきた情報を取得して(ステップ719)、取得した情報を表示部に表示する(ステップ720)。これに対して、ラスタ形式で表現された領域とベクタ形式で表現された領域とを含むオブジェクトの画像が送信されてきていない場合(ステップ718でNO)、ユーザ端末30は、そのオブジェクトの画像が送信されてくるまでステップ718を繰り返す。
(具体例)
図7(A)は、画像の具体例を示す図である。図7(B)は、図7(A)の静止画像をラスタ形式で表現した場合のデータ構造の具体例を示す図である。
図7(A)に示す静止画像は、四角形で示された領域の中心部に有色の四角形が配置された画像である。図7(B)には、図7(A)の画像をラスタ形式で表現した場合のデータ構造が示されている。図7(B)に示すように、ラスタ形式は、RGBカラーモデルにより示される1画素が縦横の格子状に並べられることで構成されるデータによって画像を表現する形式である。例えば、「(0,0,0)」は白色の画素を示し、「(99,8,5)」は有色の画素を示している。ラスタ形式で表現された画像は、拡大すると画像が荒くなり劣化する。このため、画像の劣化を抑制するためには画素を増やして解像度を上げる必要があるが、解像度を上げるとその分データ量が大きくなる。
図7(A)は、画像の具体例を示す図である。図7(B)は、図7(A)の静止画像をラスタ形式で表現した場合のデータ構造の具体例を示す図である。
図7(A)に示す静止画像は、四角形で示された領域の中心部に有色の四角形が配置された画像である。図7(B)には、図7(A)の画像をラスタ形式で表現した場合のデータ構造が示されている。図7(B)に示すように、ラスタ形式は、RGBカラーモデルにより示される1画素が縦横の格子状に並べられることで構成されるデータによって画像を表現する形式である。例えば、「(0,0,0)」は白色の画素を示し、「(99,8,5)」は有色の画素を示している。ラスタ形式で表現された画像は、拡大すると画像が荒くなり劣化する。このため、画像の劣化を抑制するためには画素を増やして解像度を上げる必要があるが、解像度を上げるとその分データ量が大きくなる。
図8は、ラスタ形式のみで表現したオブジェクトの画像の具体例を示す図である。図9は、ベクタ形式のみで表現したオブジェクトの画像の具体例を示す図である。
図8に示すラスタ形式の画像は、図示せぬページ全体の画像のうち、画像処理の対象として特定されたオブジェクトの画像G1である。画像G1は、エッジや色や明るさの階調を用いて虎の頭部を描画したグラフィックス画像である。ラスタ形式の画像は、上述のように、濃度が違う画素や様々な色の画素によって表現される画像であるため、画像G1を拡大すると、図8の枠内に示すように、画質が劣化し、輪郭に階段状のジャギーJが生じてしまう。このため、拡大してもジャギーJを生じさせることなくユーザが満足できる画質を実現するためには、画像G1の解像度を上げる必要があるが、画像G1の解像度を上げると、それに伴い画像G1のデータ量が増大してしまう。
図8に示すラスタ形式の画像は、図示せぬページ全体の画像のうち、画像処理の対象として特定されたオブジェクトの画像G1である。画像G1は、エッジや色や明るさの階調を用いて虎の頭部を描画したグラフィックス画像である。ラスタ形式の画像は、上述のように、濃度が違う画素や様々な色の画素によって表現される画像であるため、画像G1を拡大すると、図8の枠内に示すように、画質が劣化し、輪郭に階段状のジャギーJが生じてしまう。このため、拡大してもジャギーJを生じさせることなくユーザが満足できる画質を実現するためには、画像G1の解像度を上げる必要があるが、画像G1の解像度を上げると、それに伴い画像G1のデータ量が増大してしまう。
図9に示すベクタ形式の画像は、ベクタ形式のみで表現したオブジェクトの画像G2である。画像G2は、ベクトルデータによって表現されるため、拡大しても画像が劣化しないが、変換時の減色に伴い、色濁り、階調の段差、色違い等が生じ易くなってしまう。具体的には、例えば、図9の例では、枠W1およびW2で囲まれた虎の目の領域に濁りが生じ、枠W3で囲まれた虎の鼻の頭の領域に色の階調の段差が生じ、枠W4で囲まれた虎の歯の領域に色の変化等が生じている。
そこで、本実施の形態では、ユーザが満足する画質を実現し、かつ、単一の画像記述形式のみで画像を表現した場合よりもデータ量を抑制できる画像として、ラスタ形式で表現された領域と、ベクタ形式で表現された領域とを含むオブジェクトの画像を生成する。すなわち、ラスタ形式およびベクタ形式の各々の長所を活かした、いわばハイブリッド形式の画像を生成する。具体的には、図8の虎の頭部の画像のうち、色数および階調数が多い領域の画像はラスタ形式で表現し、エッジが多い領域の画像はベクタ形式で表現するように、画像記述形式の変換を領域ごとに行う。
図10は、エッジ領域の検出結果として、エッジ領域と、それ以外の非エッジ領域で表現したオブジェクトの画像の具体例を示す図である。
図10には、膨張処理および収縮処理によりエッジが検出されたときの例が示されている。このうち、白で表現された部分はエッジ領域として検出された部分であり、有色で表現された部分は非エッジ領域とされた部分である。
図10には、膨張処理および収縮処理によりエッジが検出されたときの例が示されている。このうち、白で表現された部分はエッジ領域として検出された部分であり、有色で表現された部分は非エッジ領域とされた部分である。
図11は、図10に示すエッジ領域の検出結果に基づいて、非エッジ領域とされた部分をラスタ形式で表現した領域と、エッジ領域として検出された部分をベクタ形式で表現した領域とを含むオブジェクトの画像の具体例を示す図である。
上述の図8のラスタ形式の画像G1のうち、ベクタ形式に変換すべき領域の画像をベクタ形式に変換すると、図11に示すように、ラスタ形式で表現された領域と、ベクタ形式で表現された領域とを含むオブジェクトの画像G3が生成される。画像G3は、色の再現性に関しては、ラスタ形式の画像G1と同水準の再現性を得ることができる。具体的には、例えば、ベクタ形式のみで表現した上述の図9の例に見られるような、色濁り、階調の段差、色の変化等が図11の例には見られない。
上述の図8のラスタ形式の画像G1のうち、ベクタ形式に変換すべき領域の画像をベクタ形式に変換すると、図11に示すように、ラスタ形式で表現された領域と、ベクタ形式で表現された領域とを含むオブジェクトの画像G3が生成される。画像G3は、色の再現性に関しては、ラスタ形式の画像G1と同水準の再現性を得ることができる。具体的には、例えば、ベクタ形式のみで表現した上述の図9の例に見られるような、色濁り、階調の段差、色の変化等が図11の例には見られない。
また、エッジEの領域の画像がベクタ形式に変換されるので、図11の枠内に示すように、拡大しても図8のようなジャギーが生じないクリアな画質を実現することができる。これにより、ユーザが満足する画質を実現し、かつ、単一の画像記述形式のみで画像を表現した場合よりもデータ量を抑制することが可能となる。このようなメリットのある画像は、ウェブ親和性があるため、例えば、ウェブページに掲載するための画像や、デジタルサイネージに表示させる画像としての利用価値を見出すことができる。
以上、本実施の形態について説明したが、本発明は上述した本実施の形態に限るものではない。また、本発明による効果も、上述した本実施の形態に記載されたものに限定されない。例えば、図1に示す情報処理システム1の構成、図2に示す管理サーバ10のハードウェア構成は、いずれも本発明の目的を達成するための例示に過ぎず、特に限定されない。また、図3に示す管理サーバ10の機能構成、および図4に示すユーザ端末30の機能構成も例示に過ぎず、特に限定されない。上述した処理を全体として実行できる機能が図1の情報処理システム1に備えられていれば足り、この機能を実現するためにどのような機能構成を用いるかは図3および図4の例に限定されない。
また、図5および図6の各々に示す、管理サーバ10およびユーザ端末30の各々の処理のステップの順序も例示に過ぎず、特に限定されない。図示されたステップの順序に沿って時系列的に行われる処理だけではなく、必ずしも時系列的に処理されなくとも、並列的あるいは個別的に行われてもよい。また、図7乃至図11に示す具体例も一例に過ぎず、特に限定されない。
1…情報処理システム、10…管理サーバ、11…制御部、30…ユーザ端末、90…ネットワーク、101…情報取得部、102…オブジェクト特定部、103…エッジ検出部、104…領域区分部、105…形式変換部、106…画像生成部、107…送信制御部、301…入力受付部、302…送信制御部、303…情報取得部、304…表示制御部
Claims (18)
- プロセッサを備え、
前記プロセッサは、
画像に含まれる第1のオブジェクトの画像の態様に応じて、当該第1のオブジェクトの画像を、ラスタ形式で表現すべき第1の領域と、ベクタ形式で表現すべき第2の領域とに区分し、
前記第1のオブジェクトの画像が、前記ラスタ形式で表現されている場合には、前記第2の領域の画像を前記ベクタ形式に変換し、前記ベクタ形式で表現されている場合には、前記第1の領域の画像を前記ラスタ形式に変換し、
前記第1の領域の画像と前記第2の領域の画像とを含む第2のオブジェクトの画像を生成することを特徴とする、
情報処理装置。 - 前記プロセッサは、前記第1のオブジェクトの画像のエッジを検出する処理の結果に基づいて、前記第1の領域と前記第2の領域とに区分することを特徴とする、
請求項1に記載の情報処理装置。 - 前記プロセッサは、前記エッジを検出する処理として、空間周波数の検出、膨張処理、収縮処理、およびラプラシアンフィルタのうちいずれか1以上の手法を用いた処理の結果に基づいて、前記第1の領域と前記第2の領域とに区分することを特徴とする、
請求項2に記載の情報処理装置。 - 前記プロセッサは、機械学習モデルを用いて前記エッジを検出する処理を行うことを特徴とする、
請求項2に記載の情報処理装置。 - 前記プロセッサは、
前記第1のオブジェクトの画像が前記ラスタ形式で表現されている場合、当該第1のオブジェクトの画像をベクタ形式に変換し、再び前記ラスタ形式に変換した第3のオブジェクトの画像を生成し、
前記第1のオブジェクトの画像と前記第3のオブジェクトの画像との違いに基づいて、当該第1のオブジェクトの画像を前記第1の領域と前記第2の領域とに区分することを特徴とする、
請求項1に記載の情報処理装置。 - 前記プロセッサは、前記第3のオブジェクトの画像と前記第1のオブジェクトの画像との違いとして、特徴量の違いに基づいて、前記第1の領域と前記第2の領域とに区分することを特徴とする、
請求項5に記載の情報処理装置。 - 前記プロセッサは、ユーザにより指定された画像および当該画像に含まれる領域に基づいて、前記第1のオブジェクトの画像を特定し、前記第1の領域と前記第2の領域とに区分することを特徴とする、
請求項1に記載の情報処理装置。 - 前記第2の領域が、前記ユーザの操作による編集の候補となる領域として区分されることを特徴とする、
請求項7に記載の情報処理装置。 - 前記ユーザの操作による編集が、動画化するための編集であることを特徴とする、
請求項8に記載の情報処理装置。 - 前記プロセッサは、前記第1の領域の画像と、前記第2の領域の画像とを合成することで前記第2のオブジェクトの画像を生成することを特徴とする、
請求項1に記載の情報処理装置。 - 前記プロセッサは、下書きとなる前記第1の領域の画像に、前記第2の領域の画像を上書きして合成することで前記第2のオブジェクトの画像を生成することを特徴とする、
請求項10に記載の情報処理装置。 - 情報処理装置で処理される画像ファイルのデータ構造において、
前記画像ファイルに含まれるオブジェクトの画像のうち第1の領域の画像をラスタ形式で表現した第1のデータと、当該オブジェクトの画像のうち第2の領域の画像をベクタ形式で表現した第2のデータとを含み、
前記画像ファイルが使用された場合、前記第1の領域の画像と、前記第2の領域の画像とが合成された画像を表示する処理を実行することを特徴とする、
画像ファイルのデータ構造。 - 前記第2のデータは、前記第1のデータを変換したデータであることを特徴とする、
請求項12に記載の画像ファイルのデータ構造。 - プロセッサを備え、
前記プロセッサは、
画像に含まれる第1のオブジェクトの画像を指定するための第1の入力操作を受け付け、
前記第1のオブジェクトの画像のうち、ラスタ形式で表現すべき第1の領域と、ベクタ形式で表現すべき第2の領域との少なくとも一方を指定するための第2の入力操作を受け付け、
受け付けた前記第1の入力操作および前記第2の入力操作の内容に基づいて、前記ラスタ形式で表現された前記第1の領域の画像と、前記ベクタ形式で表現された前記第2の領域の画像とを含む第2のオブジェクトの画像が生成されると、当該第2のオブジェクトの画像を表示する制御を行うことを特徴とする、
情報処理装置。 - 前記第1の入力操作および前記第2の入力操作が、予め定められたアプリケーションソフトウェアを用いて行われることを特徴とする、
請求項14に記載の情報処理装置。 - 前記第2の入力操作が、動画化する領域を指定するための入力操作であることを特徴とする、
請求項15に記載の情報処理装置。 - 画像に含まれる第1のオブジェクトの画像を指定するための第1の入力操作を受け付ける第1受付手段と、
前記第1のオブジェクトの画像のうちラスタ形式で表現すべき第1の領域と、ベクタ形式で表現すべき第2の領域とベクタ形式で表現する領域との少なくとも一方を指定するための第2の入力操作を受け付ける第2受付手段と、
前記第1の入力操作および前記第2の入力操作の内容に基づいて、前記第1の領域の画像と前記第2の領域の画像とを含む第2のオブジェクトの画像を生成する生成手段と、
前記第2のオブジェクトの画像を表示する表示手段と、
を有することを特徴とする、
情報処理システム。 - コンピュータに、
画像に含まれる第1のオブジェクトの画像の態様に応じて、当該第1のオブジェクトの画像を、ラスタ形式で表現すべき第1の領域と、ベクタ形式で表現すべき第2の領域とに区分する機能と、
前記第1のオブジェクトの画像が、前記ラスタ形式で表現されている場合には、前記第2の領域の画像を前記ベクタ形式に変換し、前記ベクタ形式で表現されている場合には、前記第1の領域の画像を前記ラスタ形式に変換する機能と、
前記第1の領域の画像と前記第2の領域の画像とを含む第2のオブジェクトの画像を生成する機能と、
を実現させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021196278A JP2023082472A (ja) | 2021-12-02 | 2021-12-02 | 情報処理装置、画像ファイルのデータ構造、情報処理システム、およびプログラム |
US17/865,782 US20230177752A1 (en) | 2021-12-02 | 2022-07-15 | Information processing apparatus and non-transitory computer readable medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021196278A JP2023082472A (ja) | 2021-12-02 | 2021-12-02 | 情報処理装置、画像ファイルのデータ構造、情報処理システム、およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023082472A true JP2023082472A (ja) | 2023-06-14 |
Family
ID=86607819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021196278A Pending JP2023082472A (ja) | 2021-12-02 | 2021-12-02 | 情報処理装置、画像ファイルのデータ構造、情報処理システム、およびプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20230177752A1 (ja) |
JP (1) | JP2023082472A (ja) |
-
2021
- 2021-12-02 JP JP2021196278A patent/JP2023082472A/ja active Pending
-
2022
- 2022-07-15 US US17/865,782 patent/US20230177752A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230177752A1 (en) | 2023-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4667062B2 (ja) | 画像解析装置、画像解析方法、及びブロブ識別装置 | |
JP4573706B2 (ja) | ディジタル画像セグメンテーション方法 | |
JP2018022484A (ja) | 画像内の物体を検出する方法及び物体検出システム | |
US20120050763A1 (en) | Image processing apparatus and image processing method | |
US10477063B2 (en) | Character detection and binarization | |
EP1306810A1 (en) | Triangle identification buffer | |
US9088754B2 (en) | Image processing device determining characteristic quantity relating to number of colors | |
US20180082160A1 (en) | Image processing apparatus and image processing method | |
CN112651953B (zh) | 图片相似度计算方法、装置、计算机设备及存储介质 | |
RU2469400C1 (ru) | Способ преобразования растрового изображения в метафайл | |
US20110216086A1 (en) | Apparatus for generating raster images, raster image generating method, and storage medium | |
CN110866965A (zh) | 一种三维模型的贴图绘制方法及装置 | |
US10403040B2 (en) | Vector graphics rendering techniques | |
JP2004334852A (ja) | ピクセルタイプによる画像処理 | |
JP2003244447A (ja) | 画像処理装置及び画像処理方法 | |
JP2004120092A (ja) | 画像処理装置、画像処理システム、画像処理方法、記憶媒体、及びプログラム | |
JP6546385B2 (ja) | 画像処理装置及びその制御方法、プログラム | |
JP2004199622A (ja) | 画像処理装置、画像処理方法、記録媒体およびプログラム | |
JP2023082472A (ja) | 情報処理装置、画像ファイルのデータ構造、情報処理システム、およびプログラム | |
JP6590606B2 (ja) | 画像処理装置、画像処理方法、プログラム | |
JP5672168B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP3211417B2 (ja) | ページ記述言語処理装置 | |
JP4345609B2 (ja) | 画像処理装置およびプログラム | |
JP4911585B2 (ja) | 画像処理装置、画像処理方法、プログラム及び情報記録媒体 | |
JP2021141383A (ja) | コンピュータプログラム、画像処理装置、および、画像を表示するための表示方法 |