JP2019165290A - Encoder, decoder, and program - Google Patents

Encoder, decoder, and program Download PDF

Info

Publication number
JP2019165290A
JP2019165290A JP2018050732A JP2018050732A JP2019165290A JP 2019165290 A JP2019165290 A JP 2019165290A JP 2018050732 A JP2018050732 A JP 2018050732A JP 2018050732 A JP2018050732 A JP 2018050732A JP 2019165290 A JP2019165290 A JP 2019165290A
Authority
JP
Japan
Prior art keywords
data
voxel
encoding
voxels
lattice
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.)
Granted
Application number
JP2018050732A
Other languages
Japanese (ja)
Other versions
JP7052450B2 (en
Inventor
横瀬 太郎
Taro Yokose
太郎 横瀬
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2018050732A priority Critical patent/JP7052450B2/en
Priority to US16/051,898 priority patent/US10748306B2/en
Priority to CN201811044949.6A priority patent/CN110288664A/en
Publication of JP2019165290A publication Critical patent/JP2019165290A/en
Application granted granted Critical
Publication of JP7052450B2 publication Critical patent/JP7052450B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

To enable cutting of noise in a region in which a solid does not originally exist even if solid-representing solid data is irreversibly compressed and decompressed (decompressed).SOLUTION: An encoder 100 generates encoded data 20 in which data has been compressed by processing solid-processing voxel data with a three-dimensional DCT unit 104, a quantizing unit 106, and an encoding unit 108. The encoder 100 generates structure data 22 representing the presence or absence of a voxel in each lattice position in voxel data 10 by a structure data generating unit 110. A decoder, which has received the encoded data 20 and the structure data 22, decodes the encoded data 20, and eliminates a voxel in a lattice position in which it is indicated that the structure data 22 has no voxel.SELECTED DRAWING: Figure 1

Description

本発明は、符号化装置、復号装置及びプログラムに関する。   The present invention relates to an encoding device, a decoding device, and a program.

3Dプリンタ(立体印刷機)等の立体造形装置が普及しつつある。3Dプリンタ用のデータ形式としては、例えばSTL(Standard Triangulated Language)形式や3DS形式のように、立体形状をポリゴンのメッシュ表現で記述する形式が広く用いられている。   Three-dimensional modeling apparatuses such as 3D printers (three-dimensional printing machines) are becoming widespread. As a data format for a 3D printer, for example, a format that describes a three-dimensional shape by polygon mesh representation, such as an STL (Standard Triangulated Language) format or a 3DS format, is widely used.

また、出願人等は、3Dプリンタで造形する立体のモデルをボクセル表現で記述する「FAV」というデータ形式を提案している(非特許文献1)。FAV形式は、ボクセルに色、材質、他のボクセルとのリンク強度等の様々な属性を持たせることで、立体形状以外の様々な特性を表現することができる。   In addition, the applicants have proposed a data format called “FAV” that describes a three-dimensional model formed by a 3D printer in a voxel expression (Non-Patent Document 1). The FAV format can express various characteristics other than the three-dimensional shape by giving the voxel various attributes such as color, material, and link strength with other voxels.

2次元のフルカラー画像のビットマップ表現のデータ量が膨大なものとなることから類推できるように、立体を表現するボクセル形式のデータ(ボクセルデータと呼ぶ)は、特に色等の多様な属性をボクセルに持たせた場合、非常に膨大なデータ量となる。ボクセルデータのデータ量を削減できる符号化方法が求められる。   As can be inferred from the enormous amount of bitmap representation data for a two-dimensional full-color image, voxel format data (called voxel data) that represents a 3D object has various attributes such as color. When it is given, the amount of data becomes very large. There is a need for an encoding method that can reduce the amount of voxel data.

特許文献1に開示された方法では、記憶媒体に記憶された原テクスチャ画像は、離散コサイン変換部において空間変換されて、空間周波数画像データになる。ポリゴン計算部は、ポリゴンの大きさを計算し、貼り付けるべきテクスチャの解像度比を計算する。空間低域濾過器は、テクスチャの解像度比に対応したカットオフ周波数において、空間周波数画像データを低域濾過する。濾過された空間周波数画像データは、逆空間変換された後、所定の大きさのミップマップ画像に縮小される。   In the method disclosed in Patent Document 1, the original texture image stored in the storage medium is spatially converted by the discrete cosine transform unit to become spatial frequency image data. The polygon calculation unit calculates the size of the polygon and calculates the resolution ratio of the texture to be pasted. The spatial low-pass filter low-pass filters the spatial frequency image data at a cutoff frequency corresponding to the resolution ratio of the texture. The filtered spatial frequency image data is subjected to inverse spatial transformation and then reduced to a mipmap image having a predetermined size.

CT(Computed Tomography)等で得られたボリュームデータに対してDCT(離散コサイン変換)等の周波数変換を施し、変換結果の高周波成分をカットすることで、データ量を削減する技術が知られている(非特許文献2及び3)。   A technique for reducing the amount of data by performing frequency conversion such as DCT (Discrete Cosine Transform) on volume data obtained by CT (Computed Tomography) and cutting high frequency components of the conversion result is known. (Non-Patent Documents 2 and 3).

特開平7−230555号公報Japanese Patent Laid-Open No. 7-230555

高橋智也、藤井雅彦、"世界最高水準の表現力を実現する次世代3Dプリント用データフォーマット「FAV(ファブ)」"、[online]、富士ゼロックステクニカルレポート、No.26、2017、[平成30年1月26日検索]、インターネット〈URL:https://www.fujixerox.co.jp/company/technical/tr/2017/pdf/s_07.pdf〉Tomoya Takahashi, Masahiko Fujii, “Next-generation 3D printing data format“ FAV ”that realizes the world's highest level of expressiveness” ”, [online], Fuji Xerox Technical Report, No. 26, 2017, [2018 January 26 search], Internet <URL: https://www.fujixerox.co.jp/company/technical/tr/2017/pdf/s_07.pdf> 森下広之、大野義夫、情報処理学会研究報告グラフィクスとCAD(CG) 1995(63(1995-CG-075)), 9-16, 1995-07-14Morishita Hiroyuki, Ohno Yoshio, IPSJ Research Reports Graphics and CAD (CG) 1995 (63 (1995-CG-075)), 9-16, 1995-07-14 春山晃一、梅津信幸、映像情報メディア学会冬季大会講演予稿集 (2001), 90, 2001-12-06Junichi Haruyama, Nobuyuki Umezu, Proceedings of the Winter Conference of the Institute of Image Information and Television Engineers (2001), 90, 2001-12-06 高橋智也、藤井雅彦、"世界最高水準の表現力を実現する次世代3Dプリント用データフォーマット「FAV(ファブ)」"、[online]、富士ゼロックステクニカルレポート、No.26、2017、[平成30年1月26日検索]、インターネット〈URL:https://www.fujixerox.co.jp/company/technical/tr/2017/pdf/s_07.pdf〉Tomoya Takahashi, Masahiko Fujii, “Next-generation 3D printing data format“ FAV ”that realizes the world's highest level of expressiveness” ”, [online], Fuji Xerox Technical Report, No. 26, 2017, [2018 January 26 search], Internet <URL: https://www.fujixerox.co.jp/company/technical/tr/2017/pdf/s_07.pdf>

3Dプリンタ等で造形する立体を表現するモデリングデータはスパース(疎ら)である。すなわち、立体の形状を規定する座標系の格子位置の中には立体が存在しない格子位置が多く存在する。そのようなモデリングデータに対して、単純に非可逆圧縮を行った場合、圧縮データを復号すると、立体の存在する領域と立体の存在しない領域との境界近傍にモスキートノイズが生じ、立体の存在しない領域の格子位置に立体の属性を示す値が現れることがある。このような復号データを用いて造形を行うと、本来立体が存在しないはずの位置に立体の一部が造形されてしまうことになる。   Modeling data representing a solid to be modeled by a 3D printer or the like is sparse. That is, there are many lattice positions where a solid does not exist among the lattice positions in the coordinate system that defines the shape of the solid. When irreversible compression is simply performed on such modeling data, when the compressed data is decoded, mosquito noise occurs near the boundary between the region where the solid exists and the region where the solid does not exist, and there is no solid. A value indicating a solid attribute may appear at the lattice position of the region. If modeling is performed using such decoded data, a part of the solid is formed at a position where the solid should not exist.

本発明は、立体を表す立体データを非可逆圧縮し、伸張(復号)した場合でも、本来立体が存在しない領域のノイズをカットできるような仕組みを提供することを目的とする。   An object of the present invention is to provide a mechanism that can cut noise in a region where a solid does not originally exist even when the solid data representing the solid is irreversibly compressed and decompressed (decoded).

請求項1に係る発明は、立体を、空間内の格子位置に配置されたそれぞれが属性値を持つボクセルの集まり、で表現した立体データから、各格子位置におけるボクセルの有無を示す構造データを抽出する抽出手段と、前記立体データの前記各格子位置の前記属性値に対して非可逆圧縮を行い、圧縮データを生成する圧縮手段と、前記構造データと前記圧縮データとを対応付けて出力する出力手段と、を含む符号化装置である。   The invention according to claim 1 extracts structure data indicating the presence or absence of voxels at each lattice position from the three-dimensional data representing a solid as a collection of voxels each having attribute values arranged at lattice positions in space. An extracting means that performs irreversible compression on the attribute values at the respective lattice positions of the three-dimensional data, and generates compressed data, and outputs the structure data and the compressed data in association with each other Means for encoding.

請求項2に係る発明は、前記構造データに対して符号化を行う構造符号化手段であって、隣り合う1以上の格子位置からなる注目構造要素の構造データに対応する構造符号を、前記注目構造要素の周囲の所定の1以上の格子位置におけるボクセルの有無を表すコンテクスト情報に応じて決定する構造符号化手段、を更に含み、前記出力手段は、前記構造データに代えて、前記構造符号化手段が決定した構造符号からなる符号化構造データを、前記圧縮データと対応付けて出力する、請求項1に記載の符号化装置である。   The invention according to claim 2 is a structure encoding means for encoding the structure data, wherein the structure code corresponding to the structure data of the target structure element composed of one or more adjacent lattice positions Further comprising: a structure encoding means for determining according to context information indicating the presence or absence of voxels at one or more predetermined lattice positions around the structure element, wherein the output means replaces the structure data with the structure encoding The encoding apparatus according to claim 1, wherein encoded structure data including the structure code determined by the means is output in association with the compressed data.

請求項3に係る発明は、前記構造データの符号化のための構造用符号表を前記コンテクスト情報の値ごとに有し、前記構造符号化手段は、前記注目構造要素の構造データに対応する構造符号を、前記注目構造要素についての前記コンテクスト情報の値に対応する前記構造用符号表を用いて決定する、請求項2に記載の符号化装置である。   The invention according to claim 3 has a structure code table for encoding the structure data for each value of the context information, and the structure encoding means has a structure corresponding to the structure data of the structural element of interest. The encoding device according to claim 2, wherein a code is determined using the structural code table corresponding to the value of the context information for the target structural element.

請求項4に係る発明は、前記構造符号化手段は、互いに隣り合う複数の格子位置の組を前記注目構造要素とし、前記注目構造要素に含まれる各格子位置におけるボクセルの有無の組合せを示す構造データを、その注目構造要素の三次元的に周囲にある所定の複数の格子位置におけるボクセルの有無を表す前記コンテクスト情報を用いて符号化する、請求項2又は3に記載の符号化装置である。   According to a fourth aspect of the present invention, the structure encoding means uses a set of a plurality of adjacent lattice positions as the target structural element, and indicates a combination of the presence / absence of voxels at each lattice position included in the target structural element 4. The encoding device according to claim 2, wherein data is encoded using the context information indicating presence / absence of voxels at a plurality of predetermined lattice positions three-dimensionally around the target structural element. .

請求項5に係る発明は、前記ボクセルに接する前記ボクセルがない格子位置に対して、当該格子位置の近傍の1以上の前記ボクセルの属性値から求めた属性値を持つボクセルを追加する追加手段、を更に含み、前記圧縮手段は、前記追加手段により前記ボクセルが追加された前記立体データに対して前記非可逆圧縮を行う、符号化装置である。   The invention according to claim 5 is an adding means for adding a voxel having an attribute value obtained from an attribute value of one or more of the voxels in the vicinity of the lattice position to a lattice position where there is no voxel in contact with the voxel; And the compression means performs the lossy compression on the stereoscopic data to which the voxel is added by the addition means.

請求項6に係る発明は、コンピュータを、立体を、空間内の格子位置に配置されたそれぞれが属性値を持つボクセルの集まり、で表現した立体データから、各格子位置におけるボクセルの有無を示す構造データを抽出する抽出手段、前記立体データの前記各格子位置の前記属性値に対して非可逆圧縮を行い、圧縮データを生成する圧縮手段、前記構造データと前記圧縮データとを対応付けて出力する出力手段、として機能させるためのプログラムである。   The invention according to claim 6 is a structure that indicates whether or not there is a voxel at each lattice position from three-dimensional data that represents a computer by a collection of voxels each having an attribute value arranged at a lattice position in space. Extraction means for extracting data, irreversible compression on the attribute values at the respective grid positions of the stereoscopic data, compression means for generating compressed data, and outputting the structure data and the compressed data in association with each other This is a program for functioning as output means.

請求項7に係る発明は、請求項1に記載の符号化装置が出力した、互いに対応する前記構造データと前記圧縮データを入力する手段と、前記圧縮データに対して、前記非可逆圧縮に対応する伸張処理を行うことで、各格子位置についての伸張データを生成する手段と、前記構造データにボクセルが無いと示されている格子位置については、前記伸張データにおける当該格子位置の属性値を、ボクセルが無いことを示す値に変える手段と、を含む復号装置である。   The invention according to claim 7 corresponds to the irreversible compression for the compressed data, the means for inputting the structure data and the compressed data corresponding to each other output from the encoding device according to claim 1 For the lattice position indicated as having no voxel in the structure data, the attribute value of the lattice position in the decompressed data, Means for changing to a value indicating that there is no voxel.

請求項8に係る発明は、コンピュータを、請求項1に記載の符号化装置が出力した、互いに対応する前記構造データと前記圧縮データを入力する手段、前記圧縮データに対して、前記非可逆圧縮に対応する伸張処理を行うことで、各格子位置についての伸張データを生成する手段、前記構造データにボクセルが無いと示されている格子位置については、前記伸張データにおける当該格子位置の属性値を、ボクセルが無いことを示す値に変える手段、として機能させるためのプログラムである。   According to an eighth aspect of the present invention, there is provided a computer, the means for inputting the corresponding structure data and the compressed data output from the encoding device according to the first aspect, and the lossy compression for the compressed data. Means for generating decompression data for each lattice position by performing decompression processing corresponding to the above, for the lattice position indicated as having no voxels in the structure data, the attribute value of the lattice position in the decompression data is set. , A program for causing a function to change to a value indicating that there is no voxel.

請求項1、6、7又は8に係る発明によれば、立体を表す立体データを非可逆圧縮し、伸張(復号)した場合でも、本来立体が存在しない領域のノイズをカットできる。   According to the first, sixth, seventh, or eighth aspect of the present invention, even in a case where stereoscopic data representing a solid is irreversibly compressed and decompressed (decoded), noise in a region where the solid does not originally exist can be cut.

請求項2、3に係る発明によれば、圧縮データと対応付けられる構造データについてもデータ圧縮することができる。   According to the second and third aspects of the present invention, data compression can be performed on structural data associated with compressed data.

請求項4に係る発明によれば、構造データを格子位置ごとに符号化する方式よりも、符号化効率を向上させることができる。   According to the invention which concerns on Claim 4, encoding efficiency can be improved rather than the system which encodes structure data for every lattice position.

請求項5に係る発明によれば、立体データが示す立体の表面に起因する非可逆圧縮のノイズが、圧縮データの復号結果においてその立体の内部に現れることを防止または低減することができる。   According to the fifth aspect of the present invention, it is possible to prevent or reduce the lossy compression noise caused by the surface of the solid indicated by the three-dimensional data from appearing inside the solid in the decoding result of the compressed data.

実施形態の符号化装置の構成を例示する図である。It is a figure which illustrates the structure of the encoding apparatus of embodiment. 3次元DCT部の処理を説明するための図である。It is a figure for demonstrating the process of a three-dimensional DCT part. 3次元DCT部の内部構成を例示する図である。It is a figure which illustrates the internal structure of a three-dimensional DCT part. 実施形態の復号装置の構成を例示する図である。It is a figure which illustrates the structure of the decoding apparatus of embodiment. 変形例の符号化装置の構成を例示する図である。It is a figure which illustrates the structure of the encoding apparatus of a modification. 複数の格子位置からなる構造要素と、それに対応するコンテクスト情報を構成する格子位置群の例を示す図である。It is a figure which shows the example of the lattice position group which comprises the structural element which consists of a several lattice position, and context information corresponding to it. 構造要素の符号化の仕組みを説明するための図である。It is a figure for demonstrating the structure of the encoding of a structural element. 更なる変形例の符号化装置の構成を例示する図である。It is a figure which illustrates the structure of the encoding apparatus of the further modification.

図1を参照して、本発明に係る符号化装置の一実施形態を説明する。   An embodiment of an encoding apparatus according to the present invention will be described with reference to FIG.

図1に示す符号化装置100は、ブロック切り出し部102、3次元DCT部104、量子化部106、符号化部108、構造データ生成部110を含む。   An encoding apparatus 100 illustrated in FIG. 1 includes a block cutout unit 102, a three-dimensional DCT unit 104, a quantization unit 106, an encoding unit 108, and a structure data generation unit 110.

この装置にはボクセルデータ10が入力される。ボクセルデータ10は、例えば三次元造形装置において造形する立体を、ボクセルの集まりによって規定するデータである。ボクセルは、立体の構成単位となる要素であり、その立体の形状を内包する三次元空間をx,y,zの各座標軸に平行な等間隔の直線で格子状に区切ることでできる賽の目状の個々の小空間に収容される。この小空間のことを、以下では格子位置又はセルと呼ぶ。小空間は立方体形状であり、典型的な例ではボクセルはその小空間全体を占める立方体形状の要素であるが、ボクセルの形状はこれに限定されない。個々のボクセルは、色、材質、隣接ボクセルとの関係性の強さ(例えば接合の強度を表す)等の、1以上の属性を持つ。空間内の格子位置の中には、立体を構成するボクセルが有る格子位置と、そのようなボクセルが無い格子位置とがある。ボクセルデータ10には、個々の格子位置ごとに、その格子位置におけるボクセルの有無を示す情報と、ボクセルが有る格子位置についてはそのボクセルが持つ1以上の属性の値を示す情報と、が含まれる。非特許文献1に示されるFAV形式は、このようなボクセルデータ10を表現可能なデータ形式の一例である。   Voxel data 10 is input to this device. The voxel data 10 is data that defines, for example, a solid modeled by a three-dimensional modeling apparatus by a collection of voxels. A voxel is an element that is a unit of a solid, and a three-dimensional space that encloses the shape of the solid is an eyelet-like shape that can be divided into a lattice pattern by straight lines with equal intervals parallel to the coordinate axes of x, y, and z. Housed in individual small spaces. This small space is hereinafter referred to as a lattice position or a cell. The small space has a cubic shape, and in a typical example, the voxel is a cube-shaped element that occupies the entire small space, but the shape of the voxel is not limited to this. Each voxel has one or more attributes such as color, material, and strength of relationship with adjacent voxels (for example, representing the strength of the joint). Among the lattice positions in the space, there are a lattice position where there are voxels constituting a solid and a lattice position where there is no such voxel. The voxel data 10 includes, for each lattice position, information indicating the presence / absence of a voxel at the lattice position, and information indicating one or more attribute values of the voxel for the lattice position where the voxel exists. . The FAV format shown in Non-Patent Document 1 is an example of a data format that can express such voxel data 10.

ブロック切り出し部102は、ボクセルデータ10からブロックを切り出す。図2の(0)に示す例では、ブロック300は、例えば縦、横、奥行き方向のそれぞれについて所定数(例えば8個)のボクセルからなるかたまりである。   The block cutout unit 102 cuts out a block from the voxel data 10. In the example shown in (0) of FIG. 2, the block 300 is a block made up of a predetermined number (e.g., 8) voxels in each of the vertical, horizontal, and depth directions.

3次元DCT部104は、ブロック切り出し部102が切り出したブロックに対して、3次元の離散コサイン変換(DCT:Discrete Cosine Transform)を行う。   The three-dimensional DCT unit 104 performs a three-dimensional discrete cosine transform (DCT) on the block cut out by the block cutout unit 102.

一つの例では、3次元DCT部104は、図3に示す処理を行う。すなわち、まず3次元DCT部104は、図2の(1)に示すように、そのブロック300に対して所定(すなわち予め定めた)方向、例えばx方向、に沿って1次元DCT1041を実行する。すなわち、この場合、z座標が一定であるレイヤ(層)内で、y座標が同じ列ごとに、その列内のX方向に並んだボクセルの属性値(例えば色の値)に対してDCTを行う。このような処理をz座標が異なるレイヤごとに実行する。なお、列内には、ボクセルがない格子位置も存在するが、そのような格子位置については、例えば所定の属性値(例えば0)、隣接するボクセルの属性値、又は周囲のボクセル群(例えば当該格子位置を含むブロックに属するボクセル群)の属性値の平均値、等で穴埋め(パディング)した上で、1次元DCTを行う。ある列についての1次元DCTの処理結果は、その列の各ボクセルの値に上書きされる。次に3次元DCT部104は、1次元DCT1041の処理結果であるブロックに対して、ある座標軸(例えばz軸)回りの90度回転1043の処理を施す。次に3次元DCT部104は、図2の(2)に示すように、その回転後のブロックに対して、先ほどと同じ方向に1次元DCT1045を実行する。ブロックは90度回転した後なので、この1次元DCT1045は、先ほどの1次元DCT1041とは異なる座標軸方向のDCTとなる。次に3次元DCT部104は、1次元DCT1045の処理結果のブロックに対して、先ほどの90度回転1043とは異なる座標軸を回転軸とする90度回転1047を施す。そして、3次元DCT部104は、図2の(3)に示すように、その回転後のブロックに対して、先ほどと同じ方向に1次元DCT1049を実行する。この1次元DCT1049は、1次元DCT1041とも1次元DCT1045とも異なる座標軸の方向のDCTである。以上の処理により、ブロックに対して3次元DCTが施される。   In one example, the three-dimensional DCT unit 104 performs the process shown in FIG. That is, first, the three-dimensional DCT unit 104 executes the one-dimensional DCT 1041 along a predetermined (ie, predetermined) direction, for example, the x direction, with respect to the block 300 as shown in (1) of FIG. That is, in this case, DCT is applied to the attribute values (for example, color values) of voxels arranged in the X direction in each column in the same y coordinate in a layer where the z coordinate is constant. Do. Such processing is executed for each layer having a different z coordinate. Note that there are lattice positions without voxels in the column. For such lattice positions, for example, a predetermined attribute value (for example, 0), an attribute value of an adjacent voxel, or a surrounding voxel group (for example, the relevant voxel) One-dimensional DCT is performed after padding (padding) with the average value of attribute values of the voxel group belonging to the block including the lattice position. The processing result of the one-dimensional DCT for a certain column is overwritten on the value of each voxel in that column. Next, the three-dimensional DCT unit 104 performs a 90-degree rotation 1043 process around a certain coordinate axis (for example, the z-axis) on the block that is the processing result of the one-dimensional DCT 1041. Next, as shown in (2) of FIG. 2, the three-dimensional DCT unit 104 executes the one-dimensional DCT 1045 on the rotated block in the same direction as before. Since the block has been rotated 90 degrees, the one-dimensional DCT 1045 is a DCT in the coordinate axis direction different from the one-dimensional DCT 1041 described above. Next, the three-dimensional DCT unit 104 performs 90-degree rotation 1047 with a coordinate axis different from the previous 90-degree rotation 1043 as the rotation axis, on the processing result block of the one-dimensional DCT 1045. Then, as shown in (3) of FIG. 2, the three-dimensional DCT unit 104 executes the one-dimensional DCT 1049 on the rotated block in the same direction as before. The one-dimensional DCT 1049 is a DCT in the direction of coordinate axes different from the one-dimensional DCT 1041 and the one-dimensional DCT 1045. Through the above processing, three-dimensional DCT is performed on the block.

図1の説明に戻る。量子化部106は、3次元DCT部104から出力される各ブロックの3次元DCT結果のデータに対して、公知の量子化処理を施す。これによりデータ量が削減されるが、この符号化装置100の処理は量子化を伴う非可逆な圧縮処理なので、圧縮結果の符号化データを復号しても元のボクセルデータとまったく同じデータには戻らない。ボクセルデータの場合も、画像のJPEG圧縮の場合と同様、このような圧縮で得られた符号化データを復号した場合、モスキートノイズ等のノイズが生じる。   Returning to the description of FIG. The quantization unit 106 performs a known quantization process on the data of the 3D DCT result of each block output from the 3D DCT unit 104. As a result, the amount of data is reduced, but the processing of the encoding device 100 is an irreversible compression process involving quantization, so even if the encoded data of the compression result is decoded, the data is exactly the same as the original voxel data. Dont return. In the case of voxel data, as in the case of JPEG compression of an image, when encoded data obtained by such compression is decoded, noise such as mosquito noise occurs.

符号化部108は、量子化部106による量子化結果のデータに対して、エントロピー符号化等の公知の符号化処理を施すことで、ボクセルデータ10についての符号化データ(圧縮データ)20を生成する。   The encoding unit 108 generates encoded data (compressed data) 20 for the voxel data 10 by performing a known encoding process such as entropy encoding on the data resulting from the quantization performed by the quantization unit 106. To do.

構造データ生成部110は、ブロック切り出し部102が切り出したブロックの各格子位置(セル)におけるボクセルの有無を示す構造データ22を生成する。構造データは、各格子位置におけるボクセルの有無を示す値(1つの格子位置当たり1ビットで表現できる)を、格子位置の所定の配列順序に従って並べたデータである。なお、ボクセルデータ10がFAV形式の場合、ボクセルデータ10は、各格子位置におけるボクセルの有無を示す「voxel_map」という名前のデータを含んでいるので、構造データ生成部110は、ボクセルデータ10からその「voxel_map」を抽出し、この「voxel_map」から当該ブロック内の各セルの情報を抽出することで構造データ22を生成すればよい。   The structure data generation unit 110 generates structure data 22 indicating the presence or absence of voxels at each lattice position (cell) of the block cut out by the block cutout unit 102. The structure data is data in which values indicating the presence / absence of voxels at each grid position (which can be expressed by 1 bit per grid position) are arranged according to a predetermined arrangement order of the grid positions. When the voxel data 10 is in the FAV format, the voxel data 10 includes data named “voxel_map” indicating the presence / absence of the voxel at each lattice position. “Voxel_map” is extracted, and the structure data 22 may be generated by extracting information of each cell in the block from this “voxel_map”.

符号化部108が生成した符号化データ20と構造データ生成部110が生成した構造データ22は、互いに対応付けがなされた状態で出力される。   The encoded data 20 generated by the encoding unit 108 and the structural data 22 generated by the structural data generation unit 110 are output in a state of being associated with each other.

次に、符号化データ20を復号する復号装置200の例を、図4を参照して説明する。   Next, an example of a decoding device 200 that decodes the encoded data 20 will be described with reference to FIG.

復号装置200は、復号部202、逆量子化部204、3次元逆DCT部206、マスク処理部208を有する。この復号装置200には、符号化データ20とこれに対応する構造データ22が入力される。復号装置200は、圧縮されている符号化データ20を復号(伸張)する。   The decoding apparatus 200 includes a decoding unit 202, an inverse quantization unit 204, a three-dimensional inverse DCT unit 206, and a mask processing unit 208. The decoding apparatus 200 receives encoded data 20 and structure data 22 corresponding to the encoded data 20. The decoding device 200 decodes (decompresses) the compressed encoded data 20.

復号部202は、入力された符号化データ20を、符号化部108の符号化処理に対応する復号処理により復号する。逆量子化部204は、復号部202の復号結果を逆量子化する。3次元逆DCT部206は、逆量子化結果のデータに対して、逆DCT処理を実行する。これにより、周波数空間の情報が実空間の属性値に戻る。   The decoding unit 202 decodes the input encoded data 20 by a decoding process corresponding to the encoding process of the encoding unit 108. The inverse quantization unit 204 inversely quantizes the decoding result of the decoding unit 202. The three-dimensional inverse DCT unit 206 performs inverse DCT processing on the data of the inverse quantization result. As a result, the frequency space information returns to the real space attribute value.

このように復元されたボクセルデータは量子化によるノイズを含んでいるので、ボクセルがない(したがって属性値もない)格子位置に属性値が現れる場合がある。造形目的のボクセルデータの場合、本来ボクセルがない格子位置に属性値が現れると、その格子位置が造形されてしまうことになり、本来とは異なる形状が造形されることとなる。このような事態を防ぐため、復号装置200は、マスク処理部208を備える。   Since the voxel data restored in this way includes noise due to quantization, an attribute value may appear at a lattice position where there is no voxel (and therefore no attribute value). In the case of voxel data for modeling purposes, if an attribute value appears at a lattice position that originally does not have a voxel, the lattice position is formed, and a shape different from the original shape is formed. In order to prevent such a situation, the decoding apparatus 200 includes a mask processing unit 208.

マスク処理部208は、符号化データ20に対応する構造データ22を参照して、各格子位置の復号結果(すなわち3次元逆DCT部206の出力)の属性値のうち、元のボクセルデータ10においてボクセルがない格子位置の値をマスク(すなわちボクセルがないことを示す値に変更)する。マスク処理部208から出力されるボクセルデータは、非可逆圧縮を経ているので、各ボクセルの属性値は元のボクセルデータ10とはまったく同じではない場合があるが、三次元形状は元のボクセルデータ10のものと同じになる。   The mask processing unit 208 refers to the structure data 22 corresponding to the encoded data 20 and in the original voxel data 10 among the attribute values of the decoding result of each lattice position (that is, the output of the three-dimensional inverse DCT unit 206). The value of the lattice position where there is no voxel is masked (that is, changed to a value indicating that there is no voxel). Since the voxel data output from the mask processing unit 208 has been subjected to lossy compression, the attribute value of each voxel may not be exactly the same as the original voxel data 10, but the three-dimensional shape is the original voxel data. It will be the same as 10.

次に、図5〜図7を参照して、本実施形態の変形例を説明する。   Next, a modified example of the present embodiment will be described with reference to FIGS.

上記実施形態では、構造データ22は生データであった。これに対してこの変形例の符号化装置100は、構造データ生成部110が生成した構造データ22を圧縮符号化する構造符号化部112を備える。構造符号化部112は、構造データ22に対してコンテクストベースの圧縮符号化を行う。なお、図5では、構造データ生成部110はブロック切り出し部102が生成したブロックから構造データを生成しているが、この代わりに、ブロック切り出し部102に対して入力されるボクセルデータ10から構造データを生成してもよい。この点は,図1に示す装置構成の場合も同様である。   In the above embodiment, the structure data 22 is raw data. On the other hand, the encoding apparatus 100 of this modification includes a structure encoding unit 112 that compresses and encodes the structure data 22 generated by the structure data generation unit 110. The structure encoding unit 112 performs context-based compression encoding on the structure data 22. In FIG. 5, the structure data generation unit 110 generates the structure data from the blocks generated by the block cutout unit 102, but instead, the structure data is generated from the voxel data 10 input to the block cutout unit 102. May be generated. This also applies to the apparatus configuration shown in FIG.

この圧縮符号化のために、構造符号化部112は、ボクセルデータ10からコンテクスト情報を生成し、このコンテクスト情報に基づいて構造データを圧縮する。コンテクスト情報は、注目する格子位置(その格子位置にボクセルがない場合もあるが、便宜上「注目ボクセル」と呼ぶ)に対して、三次元的に周囲にある所定の1以上の格子位置におけるボクセルの有無の組である。   For this compression encoding, the structure encoding unit 112 generates context information from the voxel data 10 and compresses the structure data based on the context information. The context information includes the voxel at one or more predetermined grid positions that are three-dimensionally surrounding the grid position of interest (the voxel may not be present at that grid position, but is referred to as “target voxel” for convenience). It is a pair of presence or absence.

例えば、図6に示す例では、ボクセルデータ10の注目レイヤ内で2×2の行列状に互いに隣接する4つのボクセルを注目ボクセルとし、注目レイヤ内でその注目ボクセル群に隣接する4つの参照格子位置(便宜上、「参照ボクセル」と呼ぶ)と、4つの注目ボクセルの直下の4つの参照ボクセルと、からなる8個の参照ボクセルにおけるボクセルの有無の組合せをコンテクスト情報とする。ここでは、同一レイヤ(すなわちz座標が同じ格子位置群からなる層)内では、x方向をレイヤ内の主走査方向、y方向を副走査方向とするジグザグ走査で符号化(及び復号)を進めると共に、1レイヤの符号化(復号)が終わるとz方向に次のレイヤの符号化(及び復号)に進む。現在符号化(又は復号)が進行しているレイヤが注目レイヤであり、注目レイヤ内で現在符号化(又は復号)の対象となっている格子位置の組が注目する構造要素(すなわち図示した4つの注目ボクセルの組)である。一つの例では、注目レイヤ内の参照ボクセルは、注目する構造要素に対して、主走査方向及び副走査方向に関して手前側(すなわち符号化又は復号の際には当該参照ボクセルの値が既知)に隣接する格子位置である。また、直下レイヤは、符号化又は復号が進むz方向を上向きと見たときに、符号化の進行方向に沿って注目レイヤの1つ手前のレイヤである。   For example, in the example illustrated in FIG. 6, four voxels adjacent to each other in a 2 × 2 matrix in the target layer of the voxel data 10 are set as the target voxel, and four reference lattices adjacent to the target voxel group in the target layer The context information is a combination of the presence / absence of voxels in eight reference voxels including a position (referred to as “reference voxel” for convenience) and four reference voxels immediately below the four target voxels. Here, in the same layer (that is, a layer consisting of a group of lattice positions having the same z coordinate), encoding (and decoding) is advanced by zigzag scanning in which the x direction is the main scanning direction in the layer and the y direction is the sub scanning direction. At the same time, when the encoding (decoding) of one layer is finished, the process proceeds to the encoding (and decoding) of the next layer in the z direction. The layer that is currently being encoded (or decoded) is the target layer, and the set of lattice positions that are the target of the current encoding (or decoding) within the target layer (that is, the illustrated 4) A set of two voxels of interest). In one example, the reference voxel in the target layer is closer to the target structural element in the main scanning direction and the sub-scanning direction (that is, the value of the reference voxel is known at the time of encoding or decoding). Adjacent grid positions. Further, the layer immediately below is a layer immediately before the target layer along the direction of progress of encoding when the z direction in which encoding or decoding proceeds is viewed as upward.

この例は、構造データについては、図示のように隣接する4つの注目ボクセルの組を1つの構造要素とし、構造要素単位で符号化を行う。すなわち、注目レイヤ内の構造データの符号化では、2×2の4ボクセルごとに符号を決定する。構造要素内の4つの注目ボクセルには、例えば図示のような順序が規定されている。ある構造要素についての構造データは、その構造要素に含まれる各注目ボクセルの格子位置におけるボクセルの有無を示す値(例えば0、1を表す1ビットの値で表現)を、その順序に従って並べてできる値である。同様に、参照ボクセルについても、例えば図示のような順序が規定されている。コンテクスト情報は、それら各参照ボクセルの格子位置におけるボクセルの有無を示す値を、その順序に従って並べた値である。   In this example, the structural data is encoded in units of structural elements, with a set of four adjacent voxels of interest as one structural element as illustrated. That is, in the coding of the structure data in the attention layer, the code is determined for every 2 × 2 4 voxels. For example, the order shown in the figure is defined for the four target voxels in the structural element. The structure data for a certain structural element is a value obtained by arranging values indicating the presence or absence of voxels at the lattice position of each target voxel included in the structural element (for example, expressed by a 1-bit value representing 0 or 1) according to the order. It is. Similarly, for reference voxels, for example, the order shown in the figure is defined. The context information is a value in which values indicating the presence or absence of voxels at the lattice positions of the respective reference voxels are arranged according to the order.

図7を参照して、構造符号化部112が行う構造データの符号化処理の例を説明する。この例は、図6に例示した注目ボクセル及び参照ボクセルを用いる場合のものである。   An example of the structure data encoding process performed by the structure encoding unit 112 will be described with reference to FIG. In this example, the attention voxel and the reference voxel illustrated in FIG. 6 are used.

この例では、構造符号化部112は、コンテクスト情報の値ごとに、その値に対応する符号表を有している。図6の例では、コンテクスト情報は、8つの参照ボクセルの位置(格子位置)におけるボクセルの有無を示す8ビットの値なので、符号表は2の8乗(すなわち256)個用意される(図示の符号表#0〜#255)。個々の符号表には、符号化の対象である注目構造要素の構造データ(図中「注目構造データ」と表記)の値ごとに、その値に対応する符号語が登録されている。図6の例では、注目構造要素は、4つの注目ボクセルであり、注目構造データはそれら4つの注目ボクセルの位置におけるボクセルの有無を示す4ビットの値である。これらコンテクスト情報ごとの符号表は、符号化対象となるボクセルデータ10を一度走査し、そのボクセルデータ10内の構造要素の構造データとコンテクスト情報との組合せの出現頻度を求め、その出現頻度の情報に基づいて、当該ボクセルデータに最適化されたものとして生成してもよい。また、過去の数多くのボクセルデータの例から求められたコンテクスト情報ごとの符号表の組を構造符号化部112に登録しておき、これらを符号化に用いてもよい。   In this example, the structure encoding unit 112 has a code table corresponding to each value of context information. In the example of FIG. 6, since the context information is an 8-bit value indicating the presence or absence of voxels at the positions of eight reference voxels (lattice positions), the code table is prepared to the power of 2 (that is, 256) (shown in the figure). Code table # 0 to # 255). In each code table, for each value of the structure data of the target structure element to be encoded (indicated as “target structure data” in the figure), a code word corresponding to the value is registered. In the example of FIG. 6, the target structural element is four target voxels, and the target structure data is a 4-bit value indicating whether or not there is a voxel at the position of the four target voxels. The code table for each context information is obtained by scanning the voxel data 10 to be encoded once, obtaining the appearance frequency of the combination of the structural data of the structural element in the voxel data 10 and the context information, and information on the appearance frequency. May be generated as being optimized for the voxel data. Also, a set of code tables for each context information obtained from a large number of past voxel data examples may be registered in the structure encoding unit 112 and used for encoding.

構造符号化部112は、構造データ生成部110が生成した構造データから注目構造要素の値(注目構造データ)を読み出し、その注目構造要素に対応するコンテクスト情報を生成する。そして、構造符号化部112は、そのコンテクスト情報に対応する符号表において、その注目構造データに対応する符号語を、その注目構造データの符号化結果である構造符号として出力する。この処理により、構造データは符号化構造データ22aに変換される。   The structure encoding unit 112 reads the value of the target structure element (target structure data) from the structure data generated by the structure data generation unit 110, and generates context information corresponding to the target structure element. Then, the structure encoding unit 112 outputs a code word corresponding to the target structure data in the code table corresponding to the context information as a structure code that is an encoding result of the target structure data. By this processing, the structure data is converted into encoded structure data 22a.

この変形例の符号化装置100に対応する復号装置200は、符号化構造データ22aから構造データを復号し、その構造データをマスク処理部208に供給すればよい。この復号では、既に得られている格子位置の復号結果(ボクセルの有無や色値)からコンテクスト情報を求め、そのコンテクスト情報に対応する符号表から、復号対象の符号が示す情報を読み出す。すなわち、ある構造符号を復号する場合、復号装置200は、構造符号用の符号表のうち、その構造符号に対応する構造要素についてのコンテクスト情報に対応する符号表(図6参照)を特定し、その構造符号に対応する注目構造データの値をその符号表から読み出し、これを復号結果とする。この変形例では、構造情報の符号化を複数のボクセルからなる構造要素を単位として行うので、ボクセル単位で符号化する場合よりも、符号化効率が向上する。   The decoding apparatus 200 corresponding to the encoding apparatus 100 of this modification may decode the structure data from the encoded structure data 22a and supply the structure data to the mask processing unit 208. In this decoding, context information is obtained from decoding results (presence / absence of voxels and color values) of lattice positions that have already been obtained, and information indicated by a decoding target code is read out from a code table corresponding to the context information. That is, when decoding a certain structural code, the decoding apparatus 200 identifies a code table (see FIG. 6) corresponding to the context information for the structural element corresponding to the structural code, out of the structural code code table, The value of the target structure data corresponding to the structure code is read from the code table, and this is used as the decoding result. In this modification, since the structural information is encoded in units of structural elements including a plurality of voxels, the encoding efficiency is improved as compared with the case of encoding in units of voxels.

次に図8を参照して別の変形例を説明する。   Next, another modification will be described with reference to FIG.

この変形例の符号化装置100は、ボクセル追加部101を有する。ボクセル追加部101は、ボクセルデータ10のボクセルがない格子位置のうちボクセルに隣接する格子位置(便宜上「格子位置X」と呼ぶ)に対して、格子位置Xの近傍の1以上のボクセルの属性値に応じて決まる属性値を持つボクセルと追加する。   The encoding apparatus 100 according to this modification includes a voxel adding unit 101. The voxel adding unit 101 has attribute values of one or more voxels in the vicinity of the lattice position X with respect to a lattice position adjacent to the voxel among the lattice positions where no voxel of the voxel data 10 is present (for convenience, referred to as “lattice position X”). Add voxels with attribute values determined according to.

ここで格子位置Xの「近傍」は、例えば、格子位置(セル)Xに対して隣接する格子位置(例えば当該セルに面で接する6近傍、辺で接するものを加えた18近傍、又は更に点で接するものを加えた26近傍等)としてもよい。また、格子位置Xに隣接する格子位置に対して隣接する格子位置(すなわち格子位置Xから2セル分の距離にある格子位置)までを「近傍」としてもよい。一般化すると、格子位置Xから予め定めたセル数の距離以内にある格子位置(セル)群を「近傍」としてもよい。ボクセルがない格子位置Xとその近傍に位置するボクセル群とは構造データ生成部110がボクセルデータ10から生成した構造データ(各格子位置のボクセルの有無を示す)から求めてもよい。   Here, the “neighborhood” of the grid position X is, for example, a grid position adjacent to the grid position (cell) X (for example, 6 neighborhoods that touch the cell in a plane, 18 neighborhoods that include a border on the side, or further points. It is also possible to set the value in the vicinity of 26 including the one touching by the above. Further, the vicinity of the lattice position adjacent to the lattice position X (that is, the lattice position at a distance of two cells from the lattice position X) may be set as “neighboring”. In general, a group of lattice positions (cells) within a predetermined number of cells from the lattice position X may be set as “neighborhood”. The lattice position X where there is no voxel and the group of voxels located in the vicinity thereof may be obtained from the structure data generated from the voxel data 10 by the structure data generation unit 110 (indicating whether there is a voxel at each lattice position).

ボクセル追加部101は、ボクセルがない格子位置Xの近傍に位置するボクセルの属性値から所定の計算方法で、格子位置Xに追加するボクセルの属性値を求める。この計算方法は、例えば、それら近傍のボクセルの属性値の平均を求める方法であってもよいし、近傍のボクセルの属性値を格子位置Xからの距離に応じて重み付け平均するという方法であってもよい。もちろん、この他の計算方法を用いてもよい。   The voxel adding unit 101 obtains the attribute value of the voxel to be added to the lattice position X by a predetermined calculation method from the attribute value of the voxel located near the lattice position X where there is no voxel. This calculation method may be, for example, a method of obtaining an average of attribute values of neighboring voxels, or a method of performing weighted averaging of attribute values of neighboring voxels according to the distance from the lattice position X. Also good. Of course, other calculation methods may be used.

ボクセル追加部101が、ボクセルがない格子位置のうちボクセルに隣接する格子位置のそれぞれに対してボクセルと追加することで、元のボクセルデータ10が表す立体の表面(すなわち立体とその立体がない空間との界面)が、1層の追加ボクセル群で覆われることになる。ボクセル追加部101は、このようなボクセルの追加処理をN回繰り返すことで、元のボクセルデータ10が表す立体の表面をNボクセル分の厚みの追加ボクセルの層で覆うようにしてもよい。ボクセル追加部101が行う処理は、元のボクセルデータ10が表す立体を膨張させる処理であると捉えてもよい。ボクセル追加部101の処理により、   The voxel adding unit 101 adds a voxel to each of the lattice positions adjacent to the voxel among the lattice positions where there is no voxel, so that the surface of the solid represented by the original voxel data 10 (that is, the space without the solid and the solid) ) Is covered with one layer of additional voxel group. The voxel addition unit 101 may repeat such a voxel addition process N times so as to cover the surface of the solid represented by the original voxel data 10 with an additional voxel layer having a thickness corresponding to N voxels. The process performed by the voxel adding unit 101 may be regarded as a process of expanding the solid represented by the original voxel data 10. By the processing of the voxel adding unit 101,

ブロック切り出し部102、3次元DCT部104、量子化部106及び符号化部108は、ボクセル追加部101によりボクセル追加が行われたボクセルデータに対して、上述と同様の処理を行う。   The block cutout unit 102, the three-dimensional DCT unit 104, the quantization unit 106, and the encoding unit 108 perform the same processing as described above on the voxel data to which voxel addition is performed by the voxel addition unit 101.

上述したとおり、量子化等の処理を含む非可逆圧縮を行った場合、復号後のデータに対して元のデータにないモスキートノイズ等の強いノイズが現れる。このようなノイズは、特に属性値が急激に変化するエッジの近傍に現れるが、特に造形対象の立体を表すボクセルデータ10の場合、立体と外部の境界の近傍に強いノイズが現れる。このようなノイズの属性値が立体の外部の格子位置に現れた場合は、その格子位置は立体を構成するボクセルと認識されるが、これについては構造データを用いたマスク処理部208の処理により削除される。しかし、ノイズは境界近傍の立体の内部にも現れる。このような強いノイズにより立体内部のボクセルの属性値が本来の値から大きく変化することもあり得るが、このような変化はマスク処理部208では対応できない。   As described above, when lossy compression including processing such as quantization is performed, strong noise such as mosquito noise that does not exist in the original data appears in the decoded data. Such noise appears particularly in the vicinity of an edge whose attribute value changes abruptly. However, particularly in the case of voxel data 10 representing a solid to be modeled, strong noise appears in the vicinity of the boundary between the solid and the outside. When such a noise attribute value appears at a lattice position outside the solid, the lattice position is recognized as a voxel constituting the solid, but this is determined by the processing of the mask processing unit 208 using the structure data. Deleted. However, noise also appears inside the solid near the boundary. Such strong noise can cause the attribute value of the voxel inside the solid to change greatly from its original value, but such a change cannot be handled by the mask processing unit 208.

これに対し、図8の変形例の符号化装置100は、元のボクセルデータ10が示す立体の表面を、その表面近傍のボクセルの属性値に基づく属性値を持つ追加のボクセルで覆うので、立体と外部との境界が元の立体より外側に移動する。このため、ボクセル追加部101によりボクセルデータ10の立体の表面に十分な厚みのボクセル層を追加することで、ボクセル追加後のデータに非可逆圧縮を施した場合に復号のデータの示す立体表面近傍のノイズが、元の立体の内部に現れることが防止または低減される。   On the other hand, since the encoding apparatus 100 of the modified example of FIG. 8 covers the surface of the solid indicated by the original voxel data 10 with an additional voxel having an attribute value based on the attribute value of the voxel near the surface. The boundary between the outside and the outside moves outside the original solid. For this reason, the voxel addition unit 101 adds a voxel layer having a sufficient thickness to the three-dimensional surface of the voxel data 10, so that when the lossless compression is applied to the data after the addition of the voxel, the vicinity of the three-dimensional surface indicated by the decoded data Is prevented or reduced from appearing inside the original solid.

このように追加したボクセルは、マスク処理部208により削除されるので、造形には影響をもたらさない。   Since the added voxel is deleted by the mask processing unit 208, it does not affect the modeling.

以上に例示した符号化装置100及び復号装置200は、一つの例ではハードウエアの論理回路として構成可能である。また、別の例として、符号化装置100及び復号装置200は、例えば、内蔵されるコンピュータにそれら各装置内の各機能モジュールの機能を表すプログラムを実行させることにより実現してもよい。ここで、コンピュータは、例えば、ハードウエアとして、CPU等のプロセッサ、ランダムアクセスメモリ(RAM)およびリードオンリメモリ(ROM)等のメモリ(一次記憶)、HDD(ハードディスクドライブ)を制御するHDDコントローラ、各種I/O(入出力)インタフェース、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース等が、たとえばバスを介して接続された回路構成を有する。また、そのバスに対し、例えばI/Oインタフェース経由で、CDやDVDなどの可搬型ディスク記録媒体に対する読み取り及び/又は書き込みのためのディスクドライブ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び/又は書き込みのためのメモリリーダライタ、などが接続されてもよい。上に例示した各機能モジュールの処理内容が記述されたプログラムがCDやDVD等の記録媒体を経由して、又はネットワーク等の通信手段経由で、ハードディスクドライブ等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがRAMに読み出されCPU等のプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。また、符号化装置100及び復号装置200は、ソフトウエアとハードウエアの組合せで構成されてもよい。   The encoding apparatus 100 and the decoding apparatus 200 exemplified above can be configured as hardware logic circuits in one example. As another example, the encoding device 100 and the decoding device 200 may be realized, for example, by causing a built-in computer to execute a program that represents the function of each functional module in each device. Here, the computer includes, for example, a processor such as a CPU, a memory (primary storage) such as a random access memory (RAM) and a read only memory (ROM), an HDD controller that controls an HDD (hard disk drive), and the like as hardware. A network interface that performs control for connection to a network such as an I / O (input / output) interface or a local area network has a circuit configuration connected via a bus, for example. Also, portable non-volatile recording of various standards such as a disk drive and a flash memory for reading and / or writing to a portable disk recording medium such as a CD or a DVD via the I / O interface, for example. A memory reader / writer for reading from and / or writing to a medium may be connected. A program in which the processing contents of each functional module exemplified above are described is stored in a fixed storage device such as a hard disk drive via a recording medium such as a CD or DVD, or via a communication means such as a network, and stored in a computer. Installed. The program stored in the fixed storage device is read into the RAM and executed by a processor such as a CPU, whereby the functional module group exemplified above is realized. The encoding device 100 and the decoding device 200 may be configured by a combination of software and hardware.

100 符号化装置、101 ボクセル追加部、102 ブロック切り出し部、104 3次元DCT部、106 量子化部、108 符号化部、110 構造データ生成部、112 構造符号化部、200 復号装置、202 復号部、204 逆量子化部、206 3次元逆DCT部、208 マスク処理部。
DESCRIPTION OF SYMBOLS 100 Coding apparatus, 101 Voxel addition part, 102 Block cutout part, 104 Three-dimensional DCT part, 106 Quantization part, 108 Coding part, 110 Structure data generation part, 112 Structure coding part, 200 Decoding apparatus, 202 Decoding part 204 Inverse quantization unit 206 Three-dimensional inverse DCT unit 208 Mask processing unit

Claims (8)

立体を、空間内の格子位置に配置されたそれぞれが属性値を持つボクセルの集まり、で表現した立体データから、各格子位置におけるボクセルの有無を示す構造データを抽出する抽出手段と、
前記立体データの前記各格子位置の前記属性値に対して非可逆圧縮を行い、圧縮データを生成する圧縮手段と、
前記構造データと前記圧縮データとを対応付けて出力する出力手段と、
を含む符号化装置。
Extraction means for extracting structure data indicating the presence or absence of voxels at each lattice position from the three-dimensional data represented by a collection of voxels each having an attribute value arranged at lattice positions in space;
Compression means for performing irreversible compression on the attribute values at the respective grid positions of the three-dimensional data and generating compressed data;
Output means for associating and outputting the structure data and the compressed data;
An encoding device including:
前記構造データに対して符号化を行う構造符号化手段であって、隣り合う1以上の格子位置からなる注目構造要素の構造データに対応する構造符号を、前記注目構造要素の周囲の所定の1以上の格子位置におけるボクセルの有無を表すコンテクスト情報に応じて決定する構造符号化手段、を更に含み、
前記出力手段は、前記構造データに代えて、前記構造符号化手段が決定した構造符号からなる符号化構造データを、前記圧縮データと対応付けて出力する、請求項1に記載の符号化装置。
Structure encoding means for encoding the structure data, wherein a structure code corresponding to the structure data of the target structural element consisting of one or more adjacent lattice positions is set to a predetermined one around the target structural element. Further comprising a structure encoding means for determining according to context information indicating the presence or absence of voxels at the above lattice positions,
The encoding apparatus according to claim 1, wherein the output unit outputs encoded structure data including a structure code determined by the structure encoding unit in association with the compressed data, instead of the structure data.
前記構造データの符号化のための構造用符号表を前記コンテクスト情報の値ごとに有し、
前記構造符号化手段は、前記注目構造要素の構造データに対応する構造符号を、前記注目構造要素についての前記コンテクスト情報の値に対応する前記構造用符号表を用いて決定する、請求項2に記載の符号化装置。
A structure code table for encoding the structure data for each value of the context information;
The structure encoding unit determines a structure code corresponding to the structure data of the target structure element using the structure code table corresponding to the value of the context information for the target structure element. The encoding device described.
前記構造符号化手段は、互いに隣り合う複数の格子位置の組を前記注目構造要素とし、前記注目構造要素に含まれる各格子位置におけるボクセルの有無の組合せを示す構造データを、その注目構造要素の三次元的に周囲にある所定の複数の格子位置におけるボクセルの有無を表す前記コンテクスト情報を用いて符号化する、請求項2又は3に記載の符号化装置。   The structure encoding means uses a set of a plurality of lattice positions adjacent to each other as the target structural element, and receives structure data indicating a combination of the presence or absence of voxels at each lattice position included in the target structural element. The encoding device according to claim 2 or 3, wherein encoding is performed using the context information indicating the presence or absence of voxels at a plurality of predetermined lattice positions that are three-dimensionally surrounding. 前記ボクセルに接する前記ボクセルがない格子位置に対して、当該格子位置の近傍の1以上の前記ボクセルの属性値から求めた属性値を持つボクセルを追加する追加手段、を更に含み、
前記圧縮手段は、前記追加手段により前記ボクセルが追加された前記立体データに対して前記非可逆圧縮を行う、符号化装置。
An additional means for adding a voxel having an attribute value obtained from an attribute value of one or more voxels in the vicinity of the lattice position to a lattice position where the voxel is not in contact with the voxel;
The encoding device, wherein the compression unit performs the lossy compression on the stereoscopic data to which the voxel is added by the addition unit.
コンピュータを、
立体を、空間内の格子位置に配置されたそれぞれが属性値を持つボクセルの集まり、で表現した立体データから、各格子位置におけるボクセルの有無を示す構造データを抽出する抽出手段、
前記立体データの前記各格子位置の前記属性値に対して非可逆圧縮を行い、圧縮データを生成する圧縮手段、
前記構造データと前記圧縮データとを対応付けて出力する出力手段、
として機能させるためのプログラム。
Computer
Extraction means for extracting structure data indicating the presence or absence of voxels at each lattice position from the three-dimensional data represented by a collection of voxels each having an attribute value arranged at a lattice position in space,
Compression means for performing irreversible compression on the attribute values at the respective grid positions of the three-dimensional data and generating compressed data;
Output means for outputting the structure data and the compressed data in association with each other;
Program to function as.
請求項1に記載の符号化装置が出力した、互いに対応する前記構造データと前記圧縮データを入力する手段と、
前記圧縮データに対して、前記非可逆圧縮に対応する伸張処理を行うことで、各格子位置についての伸張データを生成する手段と、
前記構造データにボクセルが無いと示されている格子位置については、前記伸張データにおける当該格子位置の属性値を、ボクセルが無いことを示す値に変える手段と、
を含む復号装置。
Means for inputting the structure data and the compressed data corresponding to each other output by the encoding device according to claim 1;
Means for generating decompressed data for each lattice position by performing decompression processing corresponding to the lossy compression on the compressed data;
For the lattice position indicated as having no voxel in the structure data, means for changing the attribute value of the lattice position in the decompressed data to a value indicating that there is no voxel;
A decoding device.
コンピュータを、
請求項1に記載の符号化装置が出力した、互いに対応する前記構造データと前記圧縮データを入力する手段、
前記圧縮データに対して、前記非可逆圧縮に対応する伸張処理を行うことで、各格子位置についての伸張データを生成する手段、
前記構造データにボクセルが無いと示されている格子位置については、前記伸張データにおける当該格子位置の属性値を、ボクセルが無いことを示す値に変える手段、
として機能させるためのプログラム。

Computer
Means for inputting the structure data and the compressed data corresponding to each other output by the encoding device according to claim 1;
Means for generating decompressed data for each lattice position by performing decompression processing corresponding to the lossy compression on the compressed data;
For the lattice position indicated as having no voxel in the structure data, means for changing the attribute value of the lattice position in the decompressed data to a value indicating that there is no voxel;
Program to function as.

JP2018050732A 2018-03-19 2018-03-19 Encoding device, decoding device and program Active JP7052450B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018050732A JP7052450B2 (en) 2018-03-19 2018-03-19 Encoding device, decoding device and program
US16/051,898 US10748306B2 (en) 2018-03-19 2018-08-01 Encoding device, decoding device, and non-transitory computer readable medium
CN201811044949.6A CN110288664A (en) 2018-03-19 2018-09-07 Code device, decoding apparatus and non-transitory computer-readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018050732A JP7052450B2 (en) 2018-03-19 2018-03-19 Encoding device, decoding device and program

Publications (2)

Publication Number Publication Date
JP2019165290A true JP2019165290A (en) 2019-09-26
JP7052450B2 JP7052450B2 (en) 2022-04-12

Family

ID=68066134

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018050732A Active JP7052450B2 (en) 2018-03-19 2018-03-19 Encoding device, decoding device and program

Country Status (1)

Country Link
JP (1) JP7052450B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022259944A1 (en) * 2021-06-08 2022-12-15 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10261965A (en) * 1997-03-18 1998-09-29 Agency Of Ind Science & Technol Coding method based on structuring of multi-dimensional data
JP2005235210A (en) * 2004-02-17 2005-09-02 Samsung Electronics Co Ltd Method and device for encoding/decoding three dimensional volume data
US20170347122A1 (en) * 2016-05-28 2017-11-30 Microsoft Technology Licensing, Llc Scalable point cloud compression with transform, and corresponding decompression

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10261965A (en) * 1997-03-18 1998-09-29 Agency Of Ind Science & Technol Coding method based on structuring of multi-dimensional data
JP2005235210A (en) * 2004-02-17 2005-09-02 Samsung Electronics Co Ltd Method and device for encoding/decoding three dimensional volume data
US20170347122A1 (en) * 2016-05-28 2017-11-30 Microsoft Technology Licensing, Llc Scalable point cloud compression with transform, and corresponding decompression

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022259944A1 (en) * 2021-06-08 2022-12-15 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device

Also Published As

Publication number Publication date
JP7052450B2 (en) 2022-04-12

Similar Documents

Publication Publication Date Title
CN113615181B (en) Method and device for point cloud encoding and decoding
US11200703B2 (en) Information processing device and method
Maglo et al. 3d mesh compression: Survey, comparisons, and emerging trends
JP2015504545A (en) Predictive position coding
CN107301194A (en) The compression storage of tile type grating map and dissemination method
CN114598891B (en) Point cloud data encoding method, decoding method, point cloud data processing method and device
Pereira et al. Point cloud coding: A privileged view driven by a classification taxonomy
Ho et al. Compressing large polygonal models
Fan et al. Deep geometry post-processing for decompressed point clouds
US10748306B2 (en) Encoding device, decoding device, and non-transitory computer readable medium
JP7052450B2 (en) Encoding device, decoding device and program
KR102650334B1 (en) Method and apparatus for point cloud coding
CN115102934B (en) Decoding method, encoding device, decoding equipment and storage medium for point cloud data
WO2023172703A1 (en) Geometry point cloud coding
US20220284633A1 (en) Method and apparatus for constructing a 3d geometry
CN116940965A (en) Slice time aligned decoding for trellis compression
JP7035668B2 (en) Encoding device, decoding device and program
von Tycowicz et al. Context‐Based Coding of Adaptive Multiresolution Meshes
Jang et al. Progressive vector compression for high-accuracy vector map data
RU2778864C1 (en) Implicit geometric division based on a quad-tree or binary tree for encoding a point cloud
WO2023174337A1 (en) Coding method, decoding method, apparatus and device
WO2023179705A1 (en) Encoding and decoding methods and apparatuses, and devices
US9794565B2 (en) Bit allocation scheme for repetitive structure discovery based 3D model compression
Li et al. A survey on recent approaches of mesh compressions
Jong et al. Improved edge-based compression for the connectivity of 3D models

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220113

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220314

R150 Certificate of patent or registration of utility model

Ref document number: 7052450

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150