• ポートフォリオ機能


ポートフォリオを新規に作成して保存
既存のポートフォリオに追加保存

  • この表をプリントする
PDF PDFをダウンロード
審決分類 審判 査定不服 2項進歩性 特許、登録しない。 H04N
審判 査定不服 5項独立特許用件 特許、登録しない。 H04N
管理番号 1362670
審判番号 不服2018-14966  
総通号数 247 
発行国 日本国特許庁(JP) 
公報種別 特許審決公報 
発行日 2020-07-31 
種別 拒絶査定不服の審決 
審判請求日 2018-11-09 
確定日 2020-05-20 
事件の表示 特願2016-556973「パレットベースのビデオコーディング」拒絶査定不服審判事件〔平成27年 9月17日国際公開、WO2015/138927、平成29年 5月25日国内公表、特表2017-513321〕について、次のとおり審決する。 
結論 本件審判の請求は、成り立たない。 
理由 第1 手続の経緯
本願は,2015年3月13日(パリ条約による優先権主張外国庁受理2014年3月14日,米国,2015年3月12日,米国)を国際出願日とする出願であって,その手続の経緯は以下のとおりである。
平成28年11月15日 :手続補正書の提出
平成30年 1月 4日 :手続補正書の提出
平成30年 4月16日付け:拒絶理由通知書
平成30年 6月22日 :意見書,手続補正書の提出
平成30年 7月 3日付け:拒絶査定
平成30年11月 9日 :審判請求書,手続補正書の提出
平成30年12月20日 :前置報告書
平成31年 3月13日 :上申書の提出

第2 平成30年11月9日にされた手続補正についての補正の却下の決定
[補正の却下の決定の結論]
平成30年11月9日にされた手続補正(以下「本件補正」という。)を却下する。

[理由]
1 補正の内容
本件補正後の特許請求の範囲の請求項1?34は,本件補正前の,平成30年6月22日提出の手続補正書の特許請求の範囲の請求項1?34を補正するものであり,本件補正により,特許請求の範囲の請求項1の記載は,

(本件補正前の請求項1)
「 【請求項1】
ビデオデータをコーディングする方法であって,
ビデオコーダによって,ビデオデータのブロックについて,複数のそれぞれの色値を示す複数のエントリーを有するパレットを決定すること,ここにおいて,ビデオデータの前記ブロックの第1の線が,ビデオデータの前記ブロックの端に隣接して位置するピクセルを含み,ビデオデータの前記ブロックの第2の線が,前記ブロックの前記端に隣接して位置し,前記第1の線の前記ピクセルに直接隣接して位置するピクセルを含む,と,
スネーク走査順序で,前記パレット中のエントリーに前記ブロックのピクセルをマッピングするインデックス値をコーディングすること,ここにおいて,前記第2の線の前記ピクセルが,前記スネーク走査順序において前記第1の線の前記ピクセルの直後にくる,と,
を備える方法。」

から,

(本件補正後の請求項1)
「 【請求項1】
ビデオデータをコーディングする方法であって,
ビデオコーダによって,ビデオデータのブロックについて,複数のそれぞれの色値を示す複数のエントリーを有するパレットを決定すること,ここにおいて,ビデオデータの前記ブロックの第1の線が,ビデオデータの前記ブロックの端に隣接して位置するピクセルを含み,ビデオデータの前記ブロックの第2の線が,前記ブロックの前記端に隣接して位置し,前記第1の線の前記ピクセルに直接隣接して位置するピクセルを含む,と,
連続するピクセルからなる1つのランが前記第1の線および前記第2の線にわたって同じインデックス値を有し得るように,スネーク走査順序で,前記パレット中のエントリーに前記ブロックのピクセルをマッピングするインデックス値をコーディングすること,ここにおいて,前記第2の線の前記ピクセルが,前記スネーク走査順序において前記第1の線の前記ピクセルの直後にくる,と,
を備える方法。ように」

(当審注:上記請求項1の「を備える方法。ように」は,「を備える方法。」の明らかな誤記であると認められる。以下,本件補正後の請求項1は,「ように」を削除して検討する。)

のように補正された。

本件補正は,次の補正事項を含むものである。
補正事項1:本件補正前の請求項1の「スネーク走査順序で,前記パレット中のエントリーに前記ブロックのピクセルをマッピングするインデックス値をコーディングする」との記載を,「連続するピクセルからなる1つのランが前記第1の線および前記第2の線にわたって同じインデックス値を有し得るように,スネーク走査順序で,前記パレット中のエントリーに前記ブロックのピクセルをマッピングするインデックス値をコーディングする」とする補正。

2 補正の適否
上記補正事項1について検討する。

(1)補正の目的
補正事項1は,「前記パレット中のエントリーに前記ブロックのピクセルをマッピングするインデックス値」を「スネーク走査順序で」,「コーディングする」ことから,「連続するピクセルからなる1つのランが前記第1の線および前記第2の線にわたって同じインデックス値を有し得るように」,「スネーク走査順序で」,「コーディングする」ことに限定するものである。
したがって,上記補正事項1は,本件補正前の請求項1に記載した発明を特定するために必要な事項である「スネーク走査順序で」,「コーディングする」ことについて,上記のとおり限定的に減縮するものであって,本件補正前の請求項1に記載された発明と本件補正後の請求項1に記載された発明の産業上の利用分野及び解決しようとする課題が同一であるから,特許法第17条の2第5項第2号に規定される「特許請求の範囲の減縮」を目的とするものに該当する。

(2)独立特許要件について
そこで,本件補正後の請求項1に係る発明(以下,「本件補正発明」という。)が,特許出願の際独立して特許を受けることができるものであるか(特許法第17条の2第6項において準用する同法第126条第7項の規定に適合するか)について以下に検討する。

(2-1)本件補正発明
本件補正発明は,上記1に記載したとおりのものであり,以下に再掲する。
なお,本件補正発明における各構成の符号は,説明のために当審において付与したものであり,以下,構成Aないし構成Eと称する。

「 【請求項1】
(A)ビデオデータをコーディングする方法であって,
(B)ビデオコーダによって,ビデオデータのブロックについて,複数のそれぞれの色値を示す複数のエントリーを有するパレットを決定すること,
(C)ここにおいて,ビデオデータの前記ブロックの第1の線が,ビデオデータの前記ブロックの端に隣接して位置するピクセルを含み,ビデオデータの前記ブロックの第2の線が,前記ブロックの前記端に隣接して位置し,前記第1の線の前記ピクセルに直接隣接して位置するピクセルを含む,と,
(D)連続するピクセルからなる1つのランが前記第1の線および前記第2の線にわたって同じインデックス値を有し得るように,スネーク走査順序で,前記パレット中のエントリーに前記ブロックのピクセルをマッピングするインデックス値をコーディングすること,
(E)ここにおいて,前記第2の線の前記ピクセルが,前記スネーク走査順序において前記第1の線の前記ピクセルの直後にくる,と,
(A)を備える方法。」

(2-2)引用文献について
ア 引用文献1について
(ア)引用文献1の記載事項
原査定の拒絶の理由で引用文献1として引用された本願の優先日前に頒布された又は電気通信回線を通じて公衆に利用可能となった,米国特許出願公開第2002/0159632号明細書(2002年10月31日公開。以下「引用文献1」という。)には,図面とともに,次の記載がある。(下線は,当審で付したものである。以下,同様。)

「[0008] “Palette-based” images are images where the color of each pixel of the image is represented as an index or position in a specified color palette. For instance, many graphic images are digitally encoded using a 256 color palette, and each pixel of such an image is encoded as one of those 256 colors. Since it takes 8 bits to represent a selection of one of 256 colors, a very simple encoding would be to represent each pixel as an 8-bit index into the 256 color palette. A more sophisticated encoding method is to pair with an palette index a “run length value,” where the run length value indicates the number of consecutive pixels in the image that all have the same color. “Consecutive pixels” are usually defined with respect to a raster scan of the image, and usually means a contiguous set of pixels on the same horizontal scan line. A next level of sophistication uses a lossless data compression method known as Lempel-Zif. The GIF and PNG graphic image formats use specific versions of the Lempel-Zif method. Since the actual encoding methods used in GIF, PNG and PCX are a matter of public record, a complete explanation of these encoding methods is not provided here.」
(当審仮訳:[0008]“パレット-ベース”の画像は,画像の各ピクセルの色が特定のカラーパレットのインデックスまたは位置として表される画像である。例えば,多くのグラフィック画像は,256色のパレットを用いてデジタル的にエンコードされ,この画像の各ピクセルは,256色のうちの1つとしてエンコードされる。256色のうちの1つの選択を表すために8ビットが必要であるので,極めて簡単なエンコーディングは,256色のパレットへの8ビットインデックスとして各ピクセルを表現することである。より高度なエンコーディング方法は,パレットインデックスを“ランレングス値”と対にすることであり,ここでランレングス値は,画像中の連続する全て同じ色のピクセルの数を示す。“連続ピクセル”は,通常,画像のラスター走査を基準に定義され,通常,同一の水平走査線上の連続するピクセルの組を意味する。次に高度なレベルは,Lempel-Zifとして知られている損失のないデータ圧縮方法を使用する。GIFおよびPNG画像フォーマットは,Lempel-Zif方法の特定のバージョンを使用する。GIF,PNG,PCXに実際に使用されるエンコーディング方法は,公的な記録の問題であるので,これらのエンコーディング方法の完全な説明はここでは行わない。)

「[0041] Referring to FIG. 2, the image processing workstation 150 may be implemented using a programmed general-purpose computer system. This figure may also represent the server, when the server performs image processing tasks. The computer system 150 may include:
[0042] one or more data processing units (CPU's) 152;
[0043] memory 154, which will typically include both high speed random access memory as well as non-volatile memory;
[0044] a user interface 156, including a display device 157 such as a CRT or LCD type display;
[0045] a network or other communication interface 158 for communicating with other computers as well as other devices; and
[0046] one or more communication busses 161 for interconnecting the CPU(s) 152, memory 154, user interface 156, network interface 158 and data port 160.
[0047] (略)
[0048] The computer system's memory 154 stores procedures and data, typically including:
[0049] an operating system 162 for providing basic system services;
[0050] a file system 164, which may be part of the operating system;
[0051] application programs 166, such as programs for viewing and manipulating images;
[0052] an image processing module 168, for performing various image processing functions including those that are the subject of the present document;
[0053] image files 190 representing various images;
[0054] block image files 192, each representing a small block of a larger image; and
[0055] temporary image data arrays 194 for intermediate results generated during image processing and image regeneration.」
(当審仮訳:[0041]図2を参照すると,画像処理ワークステーション150は,プログラムされた汎用コンピュータシステムを用いて実現することができる。この図はまた,画像処理タスクを遂行する場合のサーバを表す。コンピュータシステム150は,以下を含み得る:
[0042]1つ以上のデータ処理ユニット(CPU)152;
[0043]典型的には,高速ランダムアクセスメモリと不揮発性メモリの両方を含むメモリ154;
[0044]CRT又はLCDタイプのディスプレイのような表示装置157を含むユーザインターフェース156;
[0045]他のコンピュータおよび他の装置と通信するためのネットワークまたは他の通信インターフェース158;及び
[0046]CPU152,メモリ154,ユーザインターフェース156,ネットワークインターフェース158,及びデータポート160と相互接続するための1つ以上の通信バス161。
[0047] (略)
[0048]コンピュータシステムのメモリ154は,手順とデータを記憶し,典型的には,以下を含む:
[0049]基本的なシステムサービスを提供するオペレーティングシステム162;
[0050]オペレーティングシステムの一部であるファイルシステム164;
[0051]画像を表示し操作するためのプログラムであるアプリケーションプログラム166;
[0052]本文書に記載されているものを含む様々な画像処理機能を実行する画像処理モジュール168;
[0053]様々な画像を表す画像ファイル190;
[0054]それぞれがより大きな画像の小ブロックを表すブロック画像ファイル192;及び
[0055]画像処理時及び画像再生時に生成する中間結果の一時画像データアレイ194。)

「[0057] The image processing module 168 may include two, and preferably three or more image encoder modules 170, and a number of image decoder modules 180, 182, 184. In a preferred embodiment, the image decoder modules include a GIF image decoder 180, a PNG image decoder 182 and a PCX image decoder. In addition, the image processing module 168 may include decoder modules 186 for decoding the image files generated by the image encoder modules 170. In a preferred embodiment, the encoder modules include a re-indexed NQS (nested quadratic splitting) encoder 172, a re-indexed run length encoder 174, and a pattern-based encoder such a GIF encoder 170-3. The decoder modules 186 include corresponding decoders. Both the encoder and decoder procedures 170 and 186 make use of a set of fixed Huffman coding tables, for efficiently encoding values such as run lengths and re-mapped palette index values.
[0058] The image encoder modules 170 produce so-called “block image files,” each of which represents a small portion or block of a graphic image. The set of block image files for an image may include some blocks that are encoded using a first encoding procedure, and other blocks that are encoding using a second encoding procedure. More generally, if the image processing module 168 includes N (e.g., four) image encoders, the blocks of any single image may be encoding some one, two or even all of the different image encoders. Each block image file includes a coding type identifier, which indicates the encoder or encoding method that was used to encode the block image file. For a typical 640×832 image, re-encoded using the present invention into one hundred thirty blocks of size 64×64, two or more of the blocks image files will be encoded using the remapped NQS coding method of the present invention, and two or more of the block image files will be encoded using the remapped run length coding method of the present invention. The density of features, and their distribution in each block, determines which encoding method will be the best one to use for each block.」
(当審仮訳:[0057]画像処理モジュール168は,2好ましくは3以上の画像エンコーダモジュール170と多数の画像デコーダモジュール180,182,184を含む。好ましい実施形態では,画像デコーダモジュールは,GIF画像デコーダ180,PNG画像デコーダ182及びPCX画像デコーダを含む。また,画像処理モジュール168は,画像エンコーダモジュール170によって生成された画像ファイルをデコードするデコーダモジュール186を含む。好ましい実施形態では,エンコーダモジュールは,再インデクスされたNQS(入れ子式二次分割)のエンコーダ172,再インデクスされたランレングスエンコーダ174,およびGIFエンコーダ170-3のようなパターンベースのエンコーダを含む。デコーダモジュール186は,対応するデコーダを含む。エンコーダ及びデコーダ手順170および186はどちらも,ランレングス,及び再マッピングされたパレットインデックス値のような値を効率的にエンコードするために,固定ハフマンコーディングテーブルのセットを使用する。
[0058]画像エンコーダモジュール170は,グラフィック画像の小部分又はブロックの各々を表す,いわゆる“ブロック画像ファイル”を生成する。画像のブロック画像ファイルのセットは,第1のエンコーディング手順を用いてエンコードされるいくつかのブロック,および第2のエンコーディング手順を用いてエンコードされる他のブロックを含むことができる。より一般的には,画像処理モジュール168がN(例えば4)個の画像エンコーダを含む場合,いずれか1つの画像の複数のブロックは,1,2,または全ての異なる画像エンコーダでエンコードされうる。各ブロック画像ファイルは,ブロック画像ファイルをエンコードするために使用されたエンコーダまたはエンコーディング手順を表すコーディングタイプ識別子を含む。本発明を使用して,64×64のサイズの130個のブロックに再エンコードされた典型的な640×832の画像について,2以上のブロック画像ファイルが本発明の再マッピングされたNQSコーディング方法を用いてエンコードされ,また,2以上のブロック画像ファイルが本発明の再マッピングされたランレングスコーディング方法を用いてエンコードされる。各ブロック内での特徴の密度及びそれらの分布は,各ブロックに対してどのエンコーディング方法を使用することが最善であるかを決定する。)

「[0075] FIG. 6C shows a pixel value remapping table 270. The table includes a count field 271 indicating the number (P) of entries 272 in the table, and each entry 272 in the table indicates the original palette index value (also called a pixel value) that has been remapped to a new pixel value. In particular, the first entry 272-1 represents the palette value for pixels remapped to a value of zero, the next entry 272-2 represents the palette value for pixels remapped to a value of 1, and so on.」
(当審仮訳:[0075]図6Cは,ピクセル値の再マッピングテーブル270を示す。テーブルは,テーブル内のエントリ272の数(P)を示すカウントフィールド271を含んでおり,このテーブル内の各エントリ272は,新たなピクセル値に再マッピングされる元のパレットインデックス値(ピクセル値ともいう)を示す。具体的には,第1のエントリ272-1は,0の値に再マッピングされるピクセルのパレット値を表し,次のエントリ272-2は,1の値に再マッピングされるピクセルのパレット値を表す,などである。)

「[0077] Referring to FIG. 7, the remapping and NQS procedure for encoding a block of data values begins by outputting the coding type identifier for this encoding procedure (280). All bits output by the encoding procedure become part of the resulting block image file. Furthermore, the bits in the block image file are ordered in exactly the same order that they are output by the encoding procedure. The procedure next generates a histogram of the pixel values in the block (282). The histogram represents the number of occurrences of each palette index value in the block. For instances, if the pixels in a 64×64 image block specify just two palette index values, one index value might have count of, say, 100, and the other would have a count of 3996 (i.e., 64^(2-100)). A remapping table 270 (FIG. 6C) is generated so as to map the most frequent palette index value to a new index value of zero (0), the next most frequent palette index value is mapped to a new index value of one (1), and so on. Furthermore, the remapping procedure determines the number of palette index values with more than zero occurrences in the block, and this information is included in the remapping table (see 271, FIG. 6C). Next, all the pixel values in the block are remapped in accordance with the remapping table, and the remapping table is included in the block image file that is being generated. As a result, the most common remapped pixel value in the block will be zero (0), the next most common pixel value will be one (1), and so on.」
(当審仮訳:[0077]図7を参照すると,データ値のブロックのエンコーディングのための再マッピングおよびNQS手順は,このエンコーディング手順のコーディングタイプ識別子を出力することにより開始される(280)。エンコーディング手順により出力される全てのビットが,得られたブロック画像ファイルの一部となる。また,ブロック画像ファイル内のビットは,エンコーディング手順により出力されるのと同じ順序で正確に順序付けされる。この手順は次に,ブロック内のピクセル値のヒストグラムを生成する(282)。ヒストグラムは,ブロック中の各パレットインデックス値の発生数を表す。例えば,64×64の画像ブロック内のピクセルが2つだけのパレットインデックス値を指定する場合,1つのインデックス値が例えば100のカウントを有し,他は3996(すなわち,64^(2)-100)のカウントを有するであろう。最も頻繁なパレットインデックス値が新たなインデックス値ゼロ(0)にマッピングされ,次に頻繁なパレットインデックス値が新たなインデックス値(1)にマッピングされ,以下同様であるように,再マッピングテーブル270(図6c)が生成される。さらに,再マッピング手順は,ブロック内で0回以上発生したパレットインデックス値の数を決定し,この情報は,再マッピングテーブルに含まれる(図6Cの271参照)。次に,ブロック内の全てのピクセル値は,再マッピングテーブルに基づいて再マッピングされ,再マッピングテーブルは,生成されるブロック画像ファイルに含まれている。その結果,ブロック内の最も一般的な再マッピングされたピクセル値は0であり,次に一般的なピクセル値は1であり,以下同様である。)

「[0094] Referring to FIG. 11, the second block image encoding method used in a preferred embodiment is called the remapping and run length encoding procedure. This procedure for encoding a block of data values (herein called pixel values or palette-index values) begins by outputting the coding type identifier for this encoding procedure (360). As explained above, all bits “output” by the encoding procedure become part of the resulting block image file. Furthermore, the bits in the block image file are ordered in exactly the same order that they are output by the encoding procedure.
[0095] Next, a histogram of the pixel values in the block is generated (362). However, a different histogram is used by this encoder than the one used with the NQS encoder. In particular, the histogram generated by the run length encoder represents the number of contiguous blocks of pixels for each palette index value in the block. For instance, if the pixel values in the image block include the following sequence
AAAAAAAABABCCCBCC . . .
[0096] the histogram count (for this portion of the image block) for A is only 2, because there are just two contiguous blocks of A pixels, the count for B is 3, and the count for C is 2. This second histogram method is used because a pixel value is written only once to the block image file for each contiguous block of pixels having that pixel value.
[0097] A remapping table 270 (FIG. 6C) is generated so that the most frequent palette index value (in the histogram generated as described above) is mapped to a new index value of zero (0), the next most frequent palette index value is mapped to a new index value of one (1), and so on. Furthermore, the remapping procedure determines the number of palette index values with more than zero occurrences in the block, and this information is included in the remapping table. The remapping table is output to the block image file (362), and all the pixel values in the block are remapped in accordance with the remapping table (364).
[0098] The number of distinct pixel values in a block is typically much smaller than the full set of possible palette index values (e.g., 64). To reduce the size of the block image file, the remapping and run length encoding procedure uses a reduced size palette for each block, which in turn reduces the number of bits required to represent each pixel value.
[0099] More specifically, the number of bits needed to represent any one pixel in the block is determined by computing roundup(log_(2)(DPV)), where DPV is the number of distinct pixel values in the block, and roundup(x) represents the smallest integer that is greater than or equal to x. DPV is also the number of entries in the remapping table. Thus, if the number of distinct pixel values in the block is two, only one bit is needed to encode each remapped pixel. If the number of distinct pixel values in the block is six, three bits are needed to encode each remapped pixel.
[0100] In one preferred embodiment, a predefined Huffman coding table is used to represent remapped pixel values. For example, if the number of distinct pixel values is six, the two most frequently used pixel values will be represented by 2-bit Huffman codes and the other four pixel values will be represented by 3-bit Huffman codes. More generally, the Huffman coding table used depends on the number of distinct pixel values in the block. If log_(2)(DPV) is not equal to an integer, then a predefined Huffman coding table corresponding to the value of roundup(log_(2)(DPV)) is used to encode the remapped pixel values. Huffman coding the remapped pixel values reduces the size of the block image file, and increases decoding complexity only marginally.
[0101] Next, the remapped bits of the block are run length coded. Any conventional run length coding scheme can be used. Typically, the pixels in each raster scan line of the block are represented by a set of tuples, each of the form: (run length, pixel value). Thus the run length data in the block image file will consist of a list of (run length, pixel value) tuples. The first tuple in the list represents pixel values at the beginning of the block and the last tuple in the list represents the pixel values at the end of the block.
[0102] The “run length” field of each tuple represents a number of successive pixels having the specified pixel value. For instance, if the entire 64-pixel raster scan line of a block has a single pixel value, the tuple may be of the form (64, pixel value). Generally, for reasons of space efficiency, either the run length value for each tuple will be limited to a particular maximum value, such as 32 or 64, or the run length values will be encoded using a fixed Huffman coding table. Longer runs of contiguous pixels all having the same pixel value may be encoded using more than one tuple. Using a fixed Huffman coding table is generally more space efficient than the alternatives. In an alternate embodiment, particularly useful for systems where the images used often have very long runs of contiguous pixels, the Huffman coding table includes an “escape” value to denote values greater than a particular maximum value. When a run length value starts with the escape value, a fixed number of bits following the escape value represents either the run length, or represents the difference between the run length and the largest value represented by a Huffman code other than the escape code.
[0103] To minimize the coding length of each block, it may be advantageous to consider pixel orderings other than the conventional raster scan pixel ordering. In an alternate embodiment of the present invention, the run length coding procedure is divided into two or more procedures, each of which uses a different raster scan pixel ordering, as shown in FIG. 12A. In particular, in addition to the conventional raster scan pixel ordering, run length coding can be used with other pixel orderings, including a modified raster scan (moving left and right on alternating lines), a vertical raster scan, and a diagonal raster scan pattern. Referring back to FIG. 4, when the best coding type is determined for each block, the run length coding for each raster scan pattern is treated as a separate coding method. If R different run length coding methods are used, and one of the run length codings is determined to be the best for a particular block, then the selection at step 226 will indicate a particular one of the run length coding methods. In this alternate embodiment, when run length coding is used the block image file has a data structure, shown in FIG. 12B, that includes a sub-type identifier 370 to identify the scan pattern used.」
(当審仮訳:[0094]図11を参照すると,好ましい実施形態において使用される第2のブロック画像エンコーディング方法は,再マッピング及びランレングスエンコーディング手順と呼ばれる。データ値(ここではピクセル値またはパレットインデックス値と呼ばれる)のブロックをエンコーディングするためのこの手順は,このエンコーディング手順に対するコーディングタイプ識別子を出力することにより開始される(360)。上記で説明したように,エンコーディング手順によって“出力される”全てのビットが結果として作られたブロック画像ファイルの一部となる。また,ブロック画像ファイル内のビットは,エンコーディング手順により出力されるのと同じ順序で正確に順序付けされる。
[0095]次に,ブロック内のピクセル値のヒストグラムが生成される(362)。しかしながら,NQSエンコーダーと共に用いられたものとは異なるヒストグラムがこのエンコーダによって使用される。特に,ランレングスエンコーダによって生成されたヒストグラムは,ブロック内の各パレットインデックス値に対するピクセルの連続ブロックの数を表す。例えば,画像ブロック内のピクセル値が,以下のシーケンスを含む場合,
AAAAAAAABABCCCBCC ...
[0096]Aについてのヒストグラムカウント(画像ブロックのこの部分について)は2に過ぎない。なぜなら,Aピクセルの連続ブロックは2個存在するだけであるためである。そして,Bのカウントは3であり,Cのカウントは2である。この第2のヒストグラム方法は,ピクセル値が,そのピクセル値を有するピクセルの連続するブロック毎に,ブロック画像ファイルに1回だけ書き込まれるように使用される。
[0097]再マッピングテーブル270(図6C)は,最も頻繁なパレットインデックス値(上述したように生成されたヒストグラムにおいて)はゼロ(0)のインデックス値にマッピングされ,次に頻繁なパレットインデックス値は(1)の新たなインデックス値にマッピングされる,などのように生成される。さらに,再マッピング手順は,ブロック内で0回以上発生したパレットインデックス値の数を決定し,この情報は,再マッピングテーブルに含まれている。再マッピングテーブルは,ブロック画像ファイルに出力され(362),ブロック内の全てのピクセル値は,再マッピングテーブルに基づいて再マッピングされる(364)。
[0098]ブロック内の異なるピクセル値の数は,典型的には,可能なパレットインデックス値(例えば64)の完全なセットよりもはるかに小さい。ブロック画像ファイルのサイズを低減するために,再マッピング及びランレングスエンコーディング手順は,各ブロックに縮小されたサイズのパレットを使用し,次に,各ピクセル値を表すのに必要なビット数を減少させる。
[0099]より具体的には,ブロック内のいずれかのピクセルを表すのに必要なビット数はroundup(log_(2)(DPV))の計算によって決定され,ここで,DPVは,ブロックにおける異なるピクセル値の数であり,roundup(x)は,xより大きいか等しい最小の整数を表す。DPVは,再マッピングテーブル内のエントリの数でもある。したがって,ブロック内の異なるピクセル値の数が2である場合,各再マッピングされたピクセルをエンコーディングするために必要なのは1ビットだけである。ブロック内の異なるピクセル値の数が6である場合,各再マッピングされたピクセルをエンコーディングするのには3ビットが必要である。
[0100]1つの好ましい実施形態では,予め定義されたハフマンコーディングテーブルを使用して再マッピングされたピクセル値を表す。例えば,異なるピクセル値の数が6である場合,2個の最も頻繁に使用されるピクセル値は,2ビットのハフマンコードで表されるものとし,他の4個のピクセル値が3ビットのハフマンコードによって表わされることになる。より一般的には,使用されるハフマンコーディングテーブルは,ブロック内の異なるピクセル値の数に依存する。log_(2)(DPV)が整数に等しくなければ,roundup(log_(2)(DPV))の値に対応する予め定められたハフマンコーディングテーブルが,再マッピングされたピクセル値をエンコードするために使用される。再マッピングされたピクセル値をハフマンコーディングすることは,ブロック画像ファイルのサイズを減少させ,デコーディングの複雑さをわずかに増加させるだけである。
[0101]次に,ブロックの再マッピングされたビットがランレングスコーディングされる。任意の従来のランレングスコーディング方式を使用することができる。典型的には,ブロックの各ラスタ走査線のピクセルは,各々が,(ランレングス,ピクセル値)の形式のタプルのセットで表現される。従って,ブロック画像ファイル内のランレングスデータは,(ランレングス,ピクセル値)のタプルのリストからなる。リストの中の第1タプルは,ブロックの先頭ピクセル値を表し,リスト内の最後のタプルは,ブロックの最後のピクセル値を表している。
[0102]各タプルの“ランレングス”フィールドは,指定されたピクセル値を有するピクセルの連続数を表す。例えば,ブロックの全64ピクセルのラスタ走査線が1つのピクセル値を有している場合,タプルは,(64,ピクセル値)の形式であろう。一般に,空間効率の理由から,各タプルのランレングス値は,32または64のような特定の最大値に制限され,あるいは,ランレングス値は,固定ハフマンコーディングテーブルを用いてエンコードされる。同じピクセル値を有する連続ピクセルのより長いランは,1以上のタプルを使用してエンコードすることができる。固定ハフマンコーディングテーブルを使用することは,一般に,代替的なものよりも空間効率が良い。他の実施形態では,使用される画像が非常に長い連続したピクセルを有するシステムに特に有用であるが,ハフマンコーディングテーブルは,特定の最大値より大きい値を示すための「エスケープ」値を含む。エスケープ値からランレングス値が始まると,エスケープ値に続く固定ビット数は,ランレングスか,または,エスケープコード以外のハフマンコードで表される最大値とランレングスとの差のいずれかを表す。
[0103]各ブロックのコーディング長を最小にするために,従来のラスタ走査ピクセル順序付け以外のピクセル順序付けを考慮することが有利である。本発明の別の実施形態では,ランレングスコーディング手順は,各々が図12Aに示すような異なるラスタ走査ピクセル順序付けを使用する2以上の手順に分けられる。特に,従来のラスタ走査ピクセル順序付けに加えて,ランレングスコーディングは,変更されたラスタ走査(交互のライン上で左及び右に移動する),垂直ラスタ走査,対角線ラスタ走査パターンを含む他のピクセル順序付けを使用することができる。再度図4を参照すると,各ブロックに対して最良のコーディングタイプが決定されるときには,各ラスタ走査パターンのランレングスコーディングは,別個のコーディング方法として扱われる。仮にR個の異なるランレングスコーディング方法が使用され,一つのランレングスコーディングが特定のブロックに対して最適であると判定された場合,ステップ226における選択は,ランレングスコーディング方法の特定の1つを示すことになる。この代替の実施形態では,ランレングスコーディングが使用される場合,ブロック画像ファイルは,使用される走査パターンを識別するサブタイプ識別子370を含む図12Bに示されるデータ構造を有する。)

「[0129] Another use of the image cache, similar to the one described above for allowing a user to flip back and forth between two images, is the generation of a slide show with video effect. In this embodiment, a set of two to two dozen block images are stored in the image cache, and then these block images are displayed in a predefined sequence at a predefined update rate, such as one update every 0.25 seconds, or one update every 0.5 seconds. The image sequence may be played once, or repeated a set number of times, or repeated in an infinite loop until any of a predefined set of events occurs. By displaying a sequence of block images in this way, a video-like effect is achieved. Because the present invention uses small block image files to facilitate fast downloading of images to client devices, the present invention makes it practical to generate video-like slide shows on low communication bandwidth client devices and even on low CPU bandwidth client devices.」
(当審仮訳:[0129]ユーザが2つの画像の間で往復することを可能にするために上述したものと同様の画像キャッシュの別の使用は,ビデオ効果を有するスライドショーの生成である。本実施形態では,画像キャッシュに2?2ダースのブロック画像のセットを格納し,そのブロック画像を所定の順序で,0.25秒毎に1回の更新,あるいは0.5秒毎に1回の更新のような所定の更新率で表示する。画像シーケンスは,1回再生されるか,または設定された回数繰り返されるか,または所定のセットのイベントのいずれかが発生するまで無限ループで繰り返されてもよい。このようにして一連のブロック画像を表示することにより,ビデオのような効果が得られる。本発明は,クライアント装置への画像の迅速なダウンロードを容易にするために小さなブロック画像ファイルを使用するので,本発明は,低い通信帯域幅クライアント装置で,また低いCPU帯域幅クライアント装置でさえ,ビデオのようなスライドショーを生成することを実用的にする。)

「FIG.2



「FIG.6C



「FIG.7



「Re-indexed NQS Encoding Method 172」(図7の説明)
(当審仮訳:再インデクスされたNQSエンコーディング方法172)

「FIG.11



「Re-indexed Run Length Encoding Method 174」(図11の説明)
(当審仮訳:再インデクスされたランレングスエンコーディング方法174)

「Generate histogram of pixel values in block;
Generate and output re-mapping table」(図11のステップ362)
(当審仮訳:ブロック内のピクセル値のヒストグラムを生成;再マッピングテーブルを生成及び出力)

「Remap pixel values」(図11のステップ364)
(当審仮訳:ピクセル値の再マッピング)

「Run Length Coding(略)」(図11のステップ366)
(当審仮訳:ランレングスコーディング(略))

「FIG.12A



「Modified Raster Scan」(図12Aの左から2つ目の走査パターンの説明)
(当審仮訳:変更されたラスタ走査)

(イ)引用発明
ここで,上記引用文献1に記載されている事項について検討する。

・引用文献1の段落[0094]の「図11を参照すると,好ましい実施形態において使用される第2のブロック画像エンコーディング方法は,再マッピング及びランレングスエンコーディング手順と呼ばれる。」との記載,段落[0095]の「次に,ブロック内のピクセル値のヒストグラムが生成される(362)。」との記載,段落[0097]の「再マッピングテーブルは,ブロック画像ファイルに出力され(362),ブロック内の全てのピクセル値は,再マッピングテーブルに基づいて再マッピングされる(364)」との記載,図11のフローの図面,図11のステップ362?366の「ブロック内のピクセル値のヒストグラムを生成;再マッピングテーブルを生成及び出力」(ステップ362),「ピクセル値の再マッピング」(ステップ364),「ランレングスコーディング」(ステップ366)との記載から,引用文献1には,
『再マッピング及びランレングスエンコーディング手順と呼ばれるブロック画像エンコーディング方法であって,ブロック内のピクセル値のヒストグラムを生成し,再マッピングテーブルを生成及び出力するステップ362と,ピクセル値の再マッピングを実行するステップ364と,ランレングスコーディングを実行するステップ366とを備え』る方法の発明が記載されていると認められる。

・引用文献1の図2の記載と,段落[0048]?[0052]の「コンピュータシステムのメモリ154は,手順とデータを記憶し,典型的には,以下を含む:(中略)本文書に記載されているものを含む様々な画像処理機能を実行する画像処理モジュール168」との記載,段落[0057]の「画像処理モジュール168は,2好ましくは3以上の画像エンコーダモジュール170(中略)を含む」との記載,同じく段落[0057]の「エンコーダモジュールは,再インデクスされたNQS(入れ子式二次分割)のエンコーダ172,再インデクスされたランレングスエンコーダ174,およびGIFエンコーダ170-3のようなパターンベースのエンコーダを含む。」との記載から,Memory 154(メモリ154)には,Image Processing Module 168 (画像処理モジュール168)が含まれ,このImage Processing Module 168(画像処理モジュール168)には,Image encoder 1 として,Re-indexed NQS(Nested Quadratic Splitting)Encoder 172(再インデクスされたNQS(入れ子式二次分割)のエンコーダ172)が含まれ,Image encoder 2 として,Re-indexed run length encoder 174 (再インデクスされたランレングスエンコーダ174)が含まれることが読み取れる。
そして,上記の「再インデクスされたNQS(入れ子式二次分割)のエンコーダ172」及び「再インデクスされたランレングスエンコーダ174」はそれぞれ,図7の「再インデクスされたNQSエンコーディング方法172」及び図11の「再インデクスされたランレングスエンコーディング方法174」に対応する「エンコーダ」であることは明らかである。
そうすると,引用文献1の図11の「ピクセル値の再マッピング(ステップ364)」及び「ランレングスコーディング(ステップ366)」を含む『ブロック画像エンコーディング方法』は,『再インデクスされたランレングスエンコーダ174』によって『実行される』ものと認められる。

・引用文献1の段落[0058]の「本発明を使用して,64×64のサイズの130個のブロックに再エンコードされた典型的な640×832の画像について,2以上のブロック画像ファイルが本発明の再マッピングされたNQSコーディング方法を用いてエンコードされ,また,2以上のブロック画像ファイルが本発明の再マッピングされたランレングスコーディング方法を用いてエンコードされる。」との記載から,引用文献1には,
『ランレングスコーディング方法では,典型的な640×832の画像が64×64のサイズのブロック毎にエンコードされ』ることが記載されていると認められる。

・引用文献1の段落[0075]の「図6Cは,ピクセル値の再マッピングテーブル270を示す。・・・このテーブル内の各エントリ272は,新たなピクセル値に再マッピングされる元のパレットインデックス値(ピクセル値ともいう)を示す。具体的には,第1のエントリ272-1は,0の値に再マッピングされるピクセルのパレット値を表し,次のエントリ272-2は,1の値に再マッピングされるピクセルのパレット値を表す,などである。」との記載,段落[0095]の「次に,ブロック内のピクセル値のヒストグラムが生成される(362)。」との記載,段落[0097]の「再マッピングテーブル270(図6C)は,最も頻繁なパレットインデックス値(上述したように生成されたヒストグラムにおいて)はゼロ(0)のインデックス値にマッピングされ,次に頻繁なパレットインデックス値は(1)の新たなインデックス値にマッピングされる,などのように生成される。・・・再マッピングテーブルは,ブロック画像ファイルに出力され(362)」との記載,図6(C)の記載,及び図11のステップ362の「ブロック内のピクセル値のヒストグラムを生成;再マッピングテーブルを生成及び出力」との記載,から,引用文献1には,
『ステップ362では,ブロック内のピクセル値のヒストグラムが生成され,当該ヒストグラムにおいて最も頻繁なパレットインデックス値(ピクセル値ともいう)が“0”のインデックス値にマッピングされ,次に頻繁なパレットインデックス値が“1”の新たなインデックス値にマッピングされることで,第1のエントリ272-1が,“0”の値に再マッピングされるピクセルのパレット値を表し,次のエントリ272-2が,“1”の値に再マッピングされるピクセルのパレット値を表す再マッピングテーブル270が生成され』ることが記載されていると認められる。

・引用文献1の段落[0097]の「ブロック内の全てのピクセル値は,再マッピングテーブルに基づいて再マッピングされる(364)」との記載及び図11のステップ364の「ピクセル値の再マッピング」との記載から,引用文献1には,
『ステップ364では,ブロック内の全てのピクセル値が,再マッピングテーブルに基づいて再マッピングされ』ることが記載されていると認められる。
ここで,引用文献1の段落[0077]の「最も頻繁なパレットインデックス値が新たなインデックス値ゼロ(0)にマッピングされ,次に頻繁なパレットインデックス値が新たなインデックス値(1)にマッピングされ,以下同様であるように,再マッピングテーブル270(図6c)が生成される。・・・次に,ブロック内の全てのピクセル値は,再マッピングテーブルに基づいて再マッピングされ,・・・その結果,ブロック内の最も一般的な再マッピングされたピクセル値は0であり,次に一般的なピクセル値は1であり,以下同様である。」との記載から,「ブロック内の全てのピクセル値」が,「再マッピングテーブルに基づいて再マッピングされ」,その結果,「ブロック内の最も一般的な再マッピングされたピクセル値は“0”であり,次に一般的なピクセル値は“1”であ」るものと認められる。
そうすると,引用文献1には,
『ステップ364では,ブロック内の全てのピクセル値が,再マッピングテーブルに基づいて再マッピングされ,その結果,ブロック内の最も一般的な再マッピングされたピクセル値は“0”であり,次に一般的なピクセル値は“1”であ』ることが記載されていると認められる。

・引用文献1の段落[0101]の「次に,ブロックの再マッピングされたビットがランレングスコーディングされる。」との記載,段落[0103]の「各ブロックのコーディング長を最小にするために,従来のラスタ走査ピクセル順序付け以外のピクセル順序付けを考慮することが有利である。本発明の別の実施形態では,ランレングスコーディング手順は,各々が図12Aに示すような異なるラスタ走査ピクセル順序付けを使用する2以上の手順に分けられる。特に,従来のラスタ走査ピクセル順序付けに加えて,ランレングスコーディングは,変更されたラスタ走査(交互のライン上で左及び右に移動する),垂直ラスタ走査,対角線ラスタ走査パターンを含む他のピクセル順序付けを使用することができる。」との記載,図11のステップ366の「ランレングスコーディング」との記載,図12Aの左から2つ目の走査パターン,及びその説明である「変更されたラスタ走査」との記載から,引用文献1には,
『ステップ366では,ブロックの再マッピングされたビットがランレングスコーディングされ,ここで,ランレングスコーディングは,変更されたラスタ走査パターン,すなわち交互のライン上で左及び右に移動するパターンのピクセル順序付けを使用することができる』ことが記載されていると認められる。
ここで,段落[0101]の「任意の従来のランレングスコーディング方式を使用することができる。典型的には,ブロックの各ラスタ走査線のピクセルは,各々が,(ランレングス,ピクセル値)の形式のタプルのセットで表現される」との記載,段落[0102]の「各タプルの“ランレングス”フィールドは,指定されたピクセル値を有するピクセルの連続数を表す。」との記載から,引用文献1には,
『ステップ366では,ブロックの再マッピングされたビットがランレングスコーディングされ,ブロックの各ラスタ走査線のピクセルは,各々が,(ランレングス,ピクセル値)の形式のタプルのセットで表現され,各タプルの“ランレングス”フィールドは,指定されたピクセル値を有するピクセルの連続数を表し,
ここで,ランレングスコーディングは,変更されたラスタ走査パターン,すなわち交互のライン上で左及び右に移動するパターンのピクセル順序付けを使用することができる』ことが記載されていると認められる。

・引用文献1の段落[0075]の「図6Cは,ピクセル値の再マッピングテーブル270を示す。・・・このテーブル内の各エントリ272は,新たなピクセル値に再マッピングされる元のパレットインデックス値(ピクセル値ともいう)を示す。具体的には,第1のエントリ272-1は,0の値に再マッピングされるピクセルのパレット値を表し,次のエントリ272-2は,1の値に再マッピングされるピクセルのパレット値を表す,などである。」との記載,段落[0094]の「図11を参照すると,好ましい実施形態において使用される第2のブロック画像エンコーディング方法は,再マッピング及びランレングスエンコーディング手順と呼ばれる。データ値(ここではピクセル値またはパレットインデックス値と呼ばれる)のブロックをエンコーディングするためのこの手順は,このエンコーディング手順に対するコーディングタイプ識別子を出力することにより開始される(360)。」との記載から,再マッピングされる元の「パレットインデックス値」は,「ピクセル値」又は「パレット値」とも呼ばれるものであることが読み取れるから,上記で検討したステップ362及びステップ364の「ピクセル値」,「パレットインデックス値」,及び「パレット値」は,いずれも同じ「値」を意味しており,例えば,「ピクセル値」に統一しうるものである。

以上の検討を総合すると,引用文献1には,次のとおりの発明(以下,「引用発明」という。)が記載されていると認められる。
なお,引用発明の各構成の符号は,説明のために付与したものであり,以下,構成aないし構成iと称する。

「(a)再マッピング及びランレングスエンコーディング手順と呼ばれるブロック画像エンコーディング方法であって,
(b)ブロック内のピクセル値のヒストグラムを生成し,再マッピングテーブルを生成及び出力するステップ362と,
(c)ピクセル値の再マッピングを実行するステップ364と,
(d)ランレングスコーディングを実行するステップ366とを備え,
(e)前記ブロック画像エンコーディング方法は,再インデクスされたランレングスエンコーダ174によって実行されるものであり,
(f)ランレングスコーディング方法では,典型的な640×832の画像が64×64のサイズのブロック毎にエンコードされ,
(g)ステップ362では,ブロック内のピクセル値のヒストグラムが生成され,当該ヒストグラムにおいて最も頻繁なピクセル値がゼロ“0”のインデックス値にマッピングされ,次に頻繁なピクセル値が“1”の新たなインデックス値にマッピングされるように,第1のエントリ272-1が,“0”の値に再マッピングされるピクセルのピクセル値を表し,次のエントリ272-2が,“1”の値に再マッピングされるピクセルのピクセル値を表す再マッピングテーブル270が生成され,
(h)ステップ364では,ブロック内の全てのピクセル値が,再マッピングテーブルに基づいて再マッピングされ,その結果,ブロック内の最も一般的な再マッピングされたピクセル値は“0”であり,次に一般的なピクセル値は“1”であり,
(i)ステップ366では,ブロックの再マッピングされたビットがランレングスコーディングされ,ブロックの各ラスタ走査線のピクセルは,各々が,(ランレングス,ピクセル値)の形式のタプルのセットで表現され,各タプルの“ランレングス”フィールドは,指定されたピクセル値を有するピクセルの連続数を表し,
ここで,ランレングスコーディングは,変更されたラスタ走査パターン,すなわち交互のライン上で左及び右に移動するパターンのピクセル順序付けを使用することができる,
(a)方法。」

(2-3)引用発明との対比
ア 本件補正発明と引用発明とを対比する。
(ア)本件補正発明の構成Aと引用発明の構成a,fとを対比する。
構成fでは,「典型的な640×832の画像が64×64のサイズのブロック毎にエンコードされ」るところ,当該「画像」は「画像データ」であるから,構成Aの「ビデオデータ」とは,「データ」である点で共通している。
そうすると,構成Aの「ビデオデータをコーディングする方法」と構成aの「再マッピング及びランレングスエンコーディング手順と呼ばれるブロック画像エンコーディング方法」とは,「データをコーディングする方法」である点で一致している。
他方で,本件補正発明と引用発明とは,取り扱うデータが,本件補正発明では,「ビデオデータ」であるのに対して,引用発明では「画像」である点で相違している。

(イ)本件補正発明の構成Bと引用発明の構成b,e,f,gとを対比する。
(イ-1)構成Bの「複数のそれぞれの色値を示す複数のエントリーを有するパレット」と構成gの「当該ヒストグラムにおいて最も頻繁なピクセル値がゼロ“0”のインデックス値にマッピングされ,次に頻繁なピクセル値が“1”の新たなインデックス値にマッピングされるように,第1のエントリ272-1が,“0”の値に再マッピングされるピクセルのピクセル値を表し,次のエントリ272-2が,“1”の値に再マッピングされるピクセルのピクセル値を表す再マッピングテーブル270」とを対比する。
構成gの「ピクセル値」は,ピクセルの「色」を表現する「値」であるから,構成Bの「色値」に相当する。
また,構成gの「再マッピングテーブル270」の「第1のエントリ272-1」は,「“0”の値に再マッピングされるピクセルのピクセル値を表し」,「次のエントリ272-2」は,「“1”の値に再マッピングされるピクセルのピクセル値を表す」ものであるから,構成Bの「複数のそれぞれの色値を示す複数のエントリー」に相当する。
してみれば,構成gの「第1のエントリ272-1が,“0”の値に再マッピングされるピクセルのピクセル値を表し,次のエントリ272-2が,“1”の値に再マッピングされるピクセルのピクセル値を表す再マッピングテーブル270」は構成Bの「複数のそれぞれの色値を示す複数のエントリーを有するパレット」に相当する。
(イ-2)上記(イ-1)の検討から,構成bの「再マッピングテーブルを生成」することは,構成Bの「パレットを決定すること」に相当する。
(イ-3)構成Bの「ビデオコーダによって,ビデオデータのブロックについて」,「パレットを決定すること」と構成bの「ブロック内のピクセル値のヒストグラムを生成し,再マッピングテーブルを生成及び出力するステップ362」とを対比する。
引用発明は,640×832の画像を「ブロック」に分割して,このブロック毎に「再マッピングテーブル270」を生成して,エンコーディングを実行するものである(構成f)のに対して,本件補正発明は,ビデオデータのピクチャを「ブロック」に分割し,このブロック毎に「パレット」を決定して,コーディングを実行しているものであり,両者は,取り扱うデータが「画像のブロック」であるか「ビデオデータのブロック」であるかの違いはあるものの,上位概念では,「データのブロック」を取り扱う点で共通している。また,上記取り扱うデータの違いにより,「再マッピングテーブル270(パレット)」を生成(決定)する主体が,「再インデクスされたランレングスエンコーダ174」である(構成e)か「ビデオコーダ」であるかの点で相違するものの,「再インデクスされたランレングスエンコーダ174」と「ビデオコーダ」は,ともに「コーダ」である点では共通している。
(イ-4)したがって,本件補正発明の構成Bと引用発明の構成b,e,f,gとは,「コーダによって,データのブロックについて,複数のそれぞれの色値を示す複数のエントリーを有するパレットを決定すること」である点で共通している。
他方で,本件補正発明と引用発明とは,取り扱うデータが,本件補正発明では「ビデオデータ」であるのに対して引用発明では「画像」である点で相違する。また,パレットを決定するコーダが,本件補正発明では,「ビデオコーダ」であるのに対して引用発明では「再インデクスされたランレングスエンコーダ174」である点で相違している。

(ウ)本件補正発明の構成Cと引用発明の構成fとを対比する。
(ウ-1)構成fの典型的な640×832の画像を分割した「64×64のサイズのブロック」は64×64=4096個のピクセルが,縦64個,横64個に配列されているものである。
そして,例えばブロックにおける第1行を「第1の線」,当該行のすぐ下の行を「第2の線」,ブロックの右端を「ブロックの端」と呼ぶものとすると,「第1の線」の右端のピクセルは,『ブロックの端に隣接して位置するピクセル』であるといえ,また,「第2の線」の右端のピクセルは,『ブロックの端に隣接して位置し,前記第1の線の前記(右端の)ピクセルに直接隣接して位置するピクセル』であるといえる。
してみれば,本件補正発明の構成Cと引用発明の構成fとは,「データの前記ブロックの第1の線が,データの前記ブロックの端に隣接して位置するピクセルを含み,データの前記ブロックの第2の線が,前記ブロックの前記端に隣接して位置し,前記第1の線の前記ピクセルに直接隣接して位置するピクセルを含む」点で共通している。
他方で,本件補正発明と引用発明とは,取り扱うデータが,本件補正発明では「ビデオデータ」であるのに対して引用発明では「画像」である点で相違している。

(エ)本件補正発明の構成Dと引用発明の構成g,h,iとを対比する。
(エ-1)構成iの「変更されたラスタ走査パターン,すなわち交互のライン上で左及び右に移動するパターン」は,図12Aの左から2番目の図面にもあるように,64×64のピクセルのブロックにおいて,第1行の左から右に走査した後,そのすぐ下の行では,右から左に走査し,これを交互に繰り返すような走査順序のパターンであると認められる。
一方,本件補正発明の「スネーク走査順序」は,本願明細書の段落0023に「本開示の1つまたは複数の技法によれば,ビデオコーダは,マップを符号化するときに,スネーク走査順序を利用し得る。たとえば,上記の例を続けると,図6Bの例に関して以下でより詳細に説明するように,ビデオエンコーダ20は,第2の線の最後のピクセルが走査順序において第1の線の最後のピクセルの直後に走査されるようにマップをコーディングし得る。このようにして,ビデオエンコーダ20は,ランレングスコーディングの効率を改善し得る。」と記載されており,この記載と,本願の図6Bの記載からみて,第1行の左から右に走査した後,そのすぐ下の行では,右から左に走査し,これを交互に繰り返すような走査順序のパターンであると認められる。
してみれば,構成iの「変更されたラスタ走査パターン,すなわち交互のライン上で左及び右に移動するパターン」が構成Dの「スネーク走査順序」に相当する。
(エ-2)構成gの「“0”のインデックス値」は,ブロック内の「最も頻繁なピクセル値」に対応付けられるものであるから,当該「最も頻繁なピクセル値」を有する「ピクセル」には,「“0”のインデックス値」が対応付けられるものである。
そうすると,ステップ364の再マッピングによって,ピクセルに対応付けられた「“0”のインデックス値」は,当該ピクセルを再マッピングテーブル内の「第1のエントリ272-1」に対応付けるものといえるから,「再マッピングテーブル内の第1のエントリ272-1」(パレット中のエントリー)に「“0”のインデックス値が対応付けられたピクセル」(ブロックのピクセル)」を「対応付ける」(マッピングする)ものといえる。
してみれば,構成gの“0”,“1”等の「インデックス値」は,構成Dの「前記パレット中のエントリーに前記ブロックのピクセルをマッピングするインデックス値」に相当する。
(エ-3)構成Dの「前記パレット中のエントリーに前記ブロックのピクセルをマッピングするインデックス値をコーディングすること」と構成iの「ブロックの再マッピングされたビットがランレングスコーディングされ,ブロックの各ラスタ走査線のピクセルは,各々が,(ランレングス,ピクセル値)の形式のタプルのセットで表現され,各タプルの“ランレングス”フィールドは,指定されたピクセル値を有するピクセルの連続数を表」すこととを対比する。
構成iの「ブロックの再マッピングされたビット」とは,構成hでいう“0”,“1”等の「再マッピングされたピクセル値」のことであり,さらには,構成gでいう“0”,“1”等の「インデックス値」のことであるから,構成iの「ブロックの再マッピングされたビットがランレングスコーディングされ」ることは,構成Dの「インデックス値をコーディングすること」に相当する。
(エ-4)上記(エ-1)?(エ-3)の検討から,構成Dの「連続するピクセルからなる1つのランが前記第1の線および前記第2の線にわたって同じインデックス値を有し得るように,スネーク走査順序で,前記パレット中のエントリーに前記ブロックのピクセルをマッピングするインデックス値をコーディングすること」と構成iの「ブロックの再マッピングされたビットがランレングスコーディングされ,ブロックの各ラスタ走査線のピクセルは,各々が,(ランレングス,ピクセル値)の形式のタプルのセットで表現され,各タプルの“ランレングス”フィールドは,指定されたピクセル値を有するピクセルの連続数を表し,ここで,ランレングスコーディングは,変更されたラスタ走査パターン,すなわち交互のライン上で左及び右に移動するパターンのピクセル順序付けを使用することができる」こととは,「スネーク走査順序で,前記パレット中のエントリーに前記ブロックのピクセルをマッピングするインデックス値をコーディングすること」である点で共通している。
他方で,本件補正発明では,「連続するピクセルからなる1つのランが前記第1の線および前記第2の線にわたって同じインデックス値を有し得るように」コーディングしているのに対して,引用発明では,そのような特定はなされていない点で相違している。

(オ)本件補正発明の構成Eと引用発明の構成iとを対比する。
構成Eの「前記第1の線の前記ピクセル」とは,構成Cの「ビデオデータの前記ブロックの端に隣接して位置するピクセル」のことを指し,また,構成Eの「前記第2の線の前記ピクセル」は,構成Cの「前記ブロックの前記端に隣接して位置し,前記第1の線の前記ピクセルに直接隣接して位置するピクセル」のことを指すものと認められるところ,上記(ウ)で検討したように,ブロックにおける第1行を「第1の線」,当該行のすぐ下の行を「第2の線」,ブロックの右端を「ブロックの端」と呼ぶものとした場合,「第2の線」の「右端のピクセル」は,構成Eの「第2の線の前記ピクセル」に対応し,「第1の線」の「右端のピクセル」は,構成Eの「第1の線の前記ピクセル」に対応する。
そして,構成iに記載される,「変更されたラスタ走査パターン,すなわち交互のライン上で左及び右に移動するパターンのピクセル順序付け」を使用してランレングスコーディングを実行する際には,図12Aの左から2番目の図面からも明らかなように,「第2の線」の「右端のピクセル」は,「第1の線」の「右端のピクセル」の『直後に』ランレングスエンコーディングが実行されるものである。
してみれば,構成iの「ここで,ランレングスコーディングは,変更されたラスタ走査パターン,すなわち交互のライン上で左及び右に移動するパターンのピクセル順序付けを使用する」ことは,構成Eの「ここにおいて,前記第2の線の前記ピクセルが,前記スネーク走査順序において前記第1の線の前記ピクセルの直後にくる」ことに相当する。

イ 上記(ア)?(オ)の検討から,本件補正発明と引用発明の一致点及び相違点は次の通りである。

[一致点]
「(A’)データをコーディングする方法であって,
(B’)コーダによって,データのブロックについて,複数のそれぞれの色値を示す複数のエントリーを有するパレットを決定すること,(C’)ここにおいて,データの前記ブロックの第1の線が,データの前記ブロックの端に隣接して位置するピクセルを含み,データの前記ブロックの第2の線が,前記ブロックの前記端に隣接して位置し,前記第1の線の前記ピクセルに直接隣接して位置するピクセルを含む,と,
(D’)スネーク走査順序で,前記パレット中のエントリーに前記ブロックのピクセルをマッピングするインデックス値をコーディングすること,(E)ここにおいて,前記第2の線の前記ピクセルが,前記スネーク走査順序において前記第1の線の前記ピクセルの直後にくる,と,
(A’)を備える方法。」

[相違点1]
取り扱うデータが,本件補正発明では,「ビデオデータ」であるのに対して,引用発明では「画像」である点。

[相違点2]
パレットを決定するコーダが,本件補正発明では,「ビデオコーダ」であるのに対して引用発明では「再インデクスされたランレングスエンコーダ174」である点。

[相違点3]
本件補正発明では,「連続するピクセルからなる1つのランが前記第1の線および前記第2の線にわたって同じインデックス値を有し得るように」コーディングしているのに対して,引用発明では,そのような特定はなされていない点。

(2-4)判断
上記相違点について検討する。

ア 相違点1について
引用文献1の段落0129には,「ユーザが2つの画像の間で往復することを可能にするために上述したものと同様の画像キャッシュの別の使用は,ビデオ効果を有するスライドショーの生成である。本実施形態では,画像キャッシュに2?2ダースのブロック画像のセットを格納し,そのブロック画像を所定の順序で,0.25秒毎に1回の更新,あるいは0.5秒毎に1回の更新のような所定の更新率で表示する。画像シーケンスは,1回再生されるか,または設定された回数繰り返されるか,または所定のセットのイベントのいずれかが発生するまで無限ループで繰り返されてもよい。このようにして一連のブロック画像を表示することにより,ビデオのような効果が得られる。本発明は,クライアント装置への画像の迅速なダウンロードを容易にするために小さなブロック画像ファイルを使用するので,本発明は,低い通信帯域幅クライアント装置で,また低いCPU帯域幅クライアント装置でさえ,ビデオのようなスライドショーを生成することを実用的にする。」と記載されていて,複数のブロック画像を連続して再生することにより,ビデオのような効果が得られることが記載されている。
また,引用発明の「ブロック画像エンコーディング方法」が「ビデオデータ」のピクチャのコーディングに適用できることは明らかである。
してみれば,引用発明の「ブロック画像エンコーディング方法」で取り扱うデータを「ビデオデータ」とすることにより,相違点1に係る構成とすることは,当業者が容易に想到し得たことである。

イ 相違点2について
上記アで検討したとおり,引用発明の「ブロック画像エンコーディング方法」で取り扱うデータを「ビデオデータ」とすることは,当業者が容易に想到し得たことであるところ,取り扱うデータを「ビデオデータ」とすることに合わせて,パレットを決定するコーダを「ビデオコーダ」とすることは,当業者が適宜なし得たことである。

ウ 相違点3について
引用文献1の段落0008には,「“パレット-ベース”の画像は,画像の各ピクセルの色が特定のカラーパレットのインデックスまたは位置として表される画像である。例えば,多くのグラフィック画像は,256色のパレットを用いてデジタル的にエンコードされ,この画像の各ピクセルは,256色のうちの1つとしてエンコードされる。256色のうちの1つの選択を表すために8ビットが必要であるので,極めて簡単なエンコーディングは,256色のパレットへの8ビットインデックスとして各ピクセルを表現することである。」と記載されていて,“パレット-ベース”の画像では,色の数が例えば256色等に限定されることが技術常識であることから,ブロック内で同じインデックス値が連続する確率が高くなり,その結果として,「連続するピクセルからなる1つのランが前記第1の線および前記第2の線にわたって同じインデックス値を有し得るように」なることは明らかである。
また,走査とは,2次元のデータを1次元のデータに変換することであるから,引用文献1の図12Aに記載されているいずれの走査パターンであっても,それぞれ異なる1次元の連続データが生成されるものであり,当該1次元の連続データをランレングス符号化する際に,ブロックの端であるか否かに関わらず,1次元の連続データとして処理されることからすれば,引用発明の「変更されたラスタ走査パターン,すなわち交互のライン上で左及び右に移動するパターン」においても,「連続するピクセルからなる1つのランが前記第1の線および前記第2の線にわたって同じインデックス値を有し得るように」なっていることは自明のことである。
そうすると,相違点3は,実質的な相違点とはいえない。

エ そして,これらの相違点を総合的に勘案しても,本件補正発明の奏する作用効果は,引用発明の奏する作用効果から予測される範囲内のものにすぎず,格別顕著なものということはできない。

オ したがって,本件補正発明は,引用発明に基づいて,当業者が容易に発明をすることができたものであり,特許法第29条第2項の規定により,特許出願の際独立して特許を受けることができないものである。

3 本件補正についてのむすび
よって,本件補正は,特許法第17条の2第6項において準用する同法第126条第7項の規定に違反するので,同法第159条第1項の規定において読み替えて準用する同法第53条第1項の規定により却下すべきものである。
よって,上記補正の却下の決定の結論のとおり決定する。

第3 本願発明について
1 本願発明
平成30年11月9日にされた手続補正は,上記のとおり却下されたので,本願の請求項に係る発明は,平成30年6月22日に提出された手続補正書の特許請求の範囲の請求項1?34に記載された事項により特定されるものであるところ,その請求項1に係る発明(以下「本願発明」という。)は,その請求項1に記載された事項により特定される,前記第2[理由]1の「本件補正前の請求項1」に記載のとおりのものである。

2 原査定の拒絶の理由
原査定の拒絶の理由は,この出願の請求項1に係る発明は,本願の優先権主張の日前に頒布された又は電気通信回線を通じて公衆に利用可能となった下記の引用文献1に記載された発明に基づいて,その出願前にその発明の属する技術の分野における通常の知識を有する者が容易に発明をすることができたものであるから,特許法第29条第2項の規定により特許を受けることができない,というものである。

引用文献1:米国特許出願公開第2002/0159632号明細書

3 引用文献
原査定の拒絶の理由で引用された引用文献1及びその記載事項は,前記第2[理由]2(2-2)に記載したとおりである。

4 対比・判断
本願発明は,前記第2の[理由]2で検討した本件補正発明から,「スネーク走査順序で」,「コーディングする」ことに係る「連続するピクセルからなる1つのランが前記第1の線および前記第2の線にわたって同じインデックス値を有し得るように」との限定事項を削除したものである。
そうすると,本願発明の発明特定事項を全て含み,さらに他の事項を付加したものに相当する本件補正発明が,前記第2の[理由]2(2-3),(2-4)に記載したとおり,引用発明に基づいて,当業者が容易に発明をすることができたものであるから,本願発明も,引用発明に基づいて,当業者が容易に発明をすることができたものである。

第4 上申書における主張について
審判請求人は,平成31年3月13日提出の上申書において,補正案を提示するとともに,以下のとおり主張している。

「前置報告書では,引用文献2が本願を拒絶するために新たに引用されました。引用文献2を引用した拒絶の理由が前置解除前に出願人に通知されず,意見書を提出する機会が与えられなかったことは,手続違背にあたる可能性があります。出願人は,審判請求に際して引用文献2に対する意見を述べたり,審判請求と同時に特許請求の範囲を補正したりできませんでした。」

しかしながら,上記「第2」の「(2-4)判断」に記載のとおり,当審の判断では,前置報告書で新たに引用された引用文献2(小林正明,鎌田清一郎,カラードキュメント画像の可逆圧縮方法,電子情報通信学会論文誌(J85-D-II)第4号,2002年4月,pp.584-593)を用いた判断を行っていないことから,審判請求人の上記主張は採用することができない。
また,上記「第3」の「4 対比・判断」で判断したとおり,原査定の拒絶の理由は妥当であると認められるところ,あらためて当審において拒絶の理由を通知し,補正の機会を与える特段の理由を見いだすことはできない。

第5 むすび
以上のとおり,本願発明は,特許法第29条第2項の規定により特許を受けることができないから,他の請求項に係る発明について検討するまでもなく,本願は拒絶されるべきものである。

よって,結論のとおり審決する。
 
別掲
 
審理終結日 2019-12-20 
結審通知日 2019-12-24 
審決日 2020-01-07 
出願番号 特願2016-556973(P2016-556973)
審決分類 P 1 8・ 121- Z (H04N)
P 1 8・ 575- Z (H04N)
最終処分 不成立  
前審関与審査官 片岡 利延  
特許庁審判長 清水 正一
特許庁審判官 須田 勝巳
川崎 優
発明の名称 パレットベースのビデオコーディング  
代理人 井関 守三  
代理人 岡田 貴志  
代理人 中丸 慶洋  
代理人 福原 淑弘  
代理人 蔵田 昌俊  

プライバシーポリシー   セキュリティーポリシー   運営会社概要   サービスに関しての問い合わせ