RU2340114C1 - Coding device and method, decoding device and method and transmission system - Google Patents

Coding device and method, decoding device and method and transmission system Download PDF

Info

Publication number
RU2340114C1
RU2340114C1 RU2007127508/09A RU2007127508A RU2340114C1 RU 2340114 C1 RU2340114 C1 RU 2340114C1 RU 2007127508/09 A RU2007127508/09 A RU 2007127508/09A RU 2007127508 A RU2007127508 A RU 2007127508A RU 2340114 C1 RU2340114 C1 RU 2340114C1
Authority
RU
Russia
Prior art keywords
module
coefficient
encoding
data
decoding
Prior art date
Application number
RU2007127508/09A
Other languages
Russian (ru)
Inventor
Такахиро ФУКУХАРА (JP)
Такахиро ФУКУХАРА
Казухиса ХОСАКА (JP)
Казухиса ХОСАКА
Кацутоси АНДО (JP)
Кацутоси АНДО
Original Assignee
Сони Корпорейшн
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 Сони Корпорейшн filed Critical Сони Корпорейшн
Application granted granted Critical
Publication of RU2340114C1 publication Critical patent/RU2340114C1/en

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

FIELD: information technology.
SUBSTANCE: in a wavelet transformation process, there is filtering with increment on lines, with a defined number of lines, as a result of which data coefficients for one line, corresponding the component of the lowest band, is generated in form of an increment. In the first time there is processing for line number 1 to line number 7, of coefficient C1 of the upper band component, coefficient C2 and coefficient C3, and coefficient Ca of the lower band component. Coefficient Cb and coefficient Cc, are generated at level 1 division, and at level 2 division. Coefficient C4 of the upper band component and coefficient C5 of the lower band component are additionally generated from coefficient Ca, coefficient Cb and coefficient Cc. These coefficients are reconfigured in order from the lower band to the upper band, and are transmitted to a synthesis filter. The synthesis filter filters the coefficients in the order in which they were transmitted. Images are generated and output.
EFFECT: coding with compression and decoding data images and output of decoded data images with little delay.
22 cl, 40 dwg

Description

Область техники, к которой относится изобретениеFIELD OF THE INVENTION

Настоящее изобретение относится к устройству и способу кодирования, устройству и способу декодирования и системе передачи и, в частности, относится к устройству и способу кодирования данных, устройству и способу декодирования данных, и системе передачи, в которых данные изображения, которые подвергают кодированию со сжатием и передают, могут быть выведены как декодированные изображения на стороне приема через короткое время.The present invention relates to an encoding apparatus and method, a decoding apparatus and method and a transmission system, and in particular, relates to a data encoding apparatus and method, a data decoding apparatus and method, and a transmission system in which image data that is subjected to compression encoding and transmit, can be output as decoded images on the receiving side after a short time.

Уровень техникиState of the art

Обычно широко используют способ кодирования со сжатием данных изображения, который представляет собой способ JPEG (Объединенная группа экспертов по машинной обработке фотографических изображений), который был стандартизирован ISO (MOC, Международная организация по стандартизации). При использовании способа JPEG данные изображения разделяют на блоки, и каждую из разделенных областей подвергают обработке ДКП (DCT, дискретное косинусное преобразование), для получения коэффициентов ДКП, и полученные коэффициенты ДКП подвергают квантованию и затем энтропийному кодированию, реализуя, в результате, высокое качество и высокую степень сжатия.Typically, an image compression encoding method is widely used, which is a JPEG (Joint Photographic Image Processing Experts Group) method that has been standardized by ISO (MOC, International Organization for Standardization). When using the JPEG method, image data is divided into blocks, and each of the divided areas is subjected to DCT (DCT, discrete cosine transform) processing to obtain DCT coefficients, and the obtained DCT coefficients are quantized and then entropy encoded, resulting in high quality and high compression ratio.

Кроме того, в последние годы были проведены исследования способа кодирования, в котором изображение разделяют на множество полос с помощью фильтров, называемых гребенками фильтров, в которых скомбинированы фильтры высокой частоты и фильтры низкой частоты, и кодирование выполняют для каждого из разделенных банков. В каждом из таких способов кодирования способ кодирования, называемый кодированием с вейвлет преобразованием, в частности, рассматривается как новая технология, которая представляет собой вероятный кандидат на замену ДКП кодирования со сжатием изображения, поскольку ей не присущи проблемы, которые имеет описанное выше ДКП, которое представляет собой искажение блока при высокой степени сжатия.In addition, in recent years, studies have been made of a coding method in which an image is divided into multiple bands using filters called filter banks in which high-pass filters and low-pass filters are combined, and coding is performed for each of the divided banks. In each of these encoding methods, the encoding method, called wavelet transform encoding, in particular, is considered as a new technology, which is a likely candidate for replacing DCT encoding with image compression, because it does not have the problems that the DCT described above, which represents a block distortion at a high compression ratio.

Например, в JPEG 2000, международная стандартизация которого была завершена в январе 2001 г., используется способ кодирования с сжатием, в котором вейвлет преобразование комбинируется с высокоэффективным энтропийным кодированием, с использованием битовой плоскости, основанной на моделировании бита и арифметическом кодировании. В таком способе JPEG 2000 реализуется существенное улучшение по сравнению с обычным JPEG по эффективности кодирования. В патентном документе 1 описан способ вейвлет преобразования, в котором эффективность кодирования была дополнительно улучшена.For example, in JPEG 2000, the international standardization of which was completed in January 2001, a compression coding method is used in which the wavelet transform is combined with highly efficient entropy coding using a bit plane based on bit modeling and arithmetic coding. In this method, JPEG 2000 implements a significant improvement over conventional JPEG in terms of coding efficiency. Patent Document 1 describes a wavelet transform method in which coding efficiency has been further improved.

[Патентный документ 1] Публикация №9-130800 проходящей экспертизу заявки на японский патент.[Patent Document 1] Publication No. 9-130800 of an Examining Japanese Patent Application.

Такой международный стандарт определяет только сторону декодера, и сторона кодера может быть разработана произвольно.Such an international standard defines only the side of the decoder, and the side of the encoder can be developed arbitrarily.

Сущность изобретенияSUMMARY OF THE INVENTION

Проблемы, решаемые изобретениемProblems Solved by the Invention

Следует отметить, что в описанном выше способе 2000 JPEG, например, обычная необходимая информация заголовка не может быть описана в соответствии с алгоритмом до тех пор, пока не будет закончено кодирование всех пикселей на экране. То есть такая информация заголовка описывает информацию, необходимую для декодирования, такую как размер сжатых данных, полученных в результате кодирования, и существует потребность добавления маркера в конце кодированных данных, но такая информация не может быть завершена до тех пор, пока не будет закончено все кодирование для одного экрана.It should be noted that in the JPEG method 2000 described above, for example, the usual necessary header information cannot be described in accordance with the algorithm until the coding of all pixels on the screen is completed. That is, such header information describes information necessary for decoding, such as the size of the compressed data obtained by encoding, and there is a need to add a marker at the end of the encoded data, but such information cannot be completed until all encoding is completed for one screen.

Эта проблема присуща не только JPEG 2000, но также относится к JPEG, а также к MPEG (Экспертная группа по вопросам движущегося изображения), которая представляет собой способ сжатия данных движущегося изображения.This problem is not unique to JPEG 2000, but also to JPEG, as well as to MPEG (Moving Image Expert Group), which is a method of compressing moving image data.

В соответствии с этим, существует проблема, возникающая при использовании обычных технологий сжатия данных изображения, состоящая в том, что вывод кодированного потока кода, который представляет собой результат кодирования со сжатием, необходимо выполнять после шифрования изображения всего кадра или поля, в случае чересстрочного представления изображения.Accordingly, there is a problem arising from the use of conventional image data compression technologies, namely that the output of the encoded code stream, which is the result of compression encoding, must be performed after encrypting the image of the entire frame or field, in case of interlaced representation of the image .

В соответствии с этим, существует проблема, которую невозможно решить, состоящая в том, что возникает задержка по времени на один кадр, или одно поле, в случае изображения с чересстрочным представлением, между стороной передачи и стороной приема данных изображения.Accordingly, there is a problem that cannot be solved, consisting in the fact that there is a time delay of one frame, or one field, in the case of an image with interlaced representation, between the transmission side and the receiving side of image data.

В соответствии с этим, цель настоящего изобретения состоит в создании устройства и способа кодирования, устройства и способа декодирования и системы передачи данных, которые позволяют выполнять кодирование со сжатием и декодирование данных изображения, и выводить декодированные данные изображения с меньшей задержкой.Accordingly, an object of the present invention is to provide an encoding apparatus and method, a decoding apparatus and method, and a data transmission system that allow compression encoding and decoding of image data and output of decoded image data with less delay.

Средство решения проблемProblem Solver

Устройство кодирования в соответствии с первым аспектом настоящего изобретения представляет собой устройство кодирования, предназначенное для кодирования данных изображения, включающее в себя: средство фильтра, предназначенное для иерархической обработки фильтрования данных изображения и генерирования множества подполос, состоящих из данных коэффициента, разделенных по полосе частот; средство сохранения, предназначенное для накопительного сохранения данных коэффициента, генерируемых средством фильтра; и средство реконфигурирования коэффициента, предназначенное для реконфигурирования данных коэффициента, сохраненных в средстве сохранения, для вывода в заданном порядке.An encoding device in accordance with a first aspect of the present invention is an encoding device for encoding image data, including: filter means for hierarchically processing filtering image data and generating a plurality of subbands consisting of coefficient data divided by a frequency band; storage means for cumulatively storing coefficient data generated by the filter means; and coefficient reconfiguration means for reconfiguring coefficient data stored in the storage means for output in a predetermined order.

Средство фильтра может выполнять обработку фильтрования с приращением по строкам, начиная с верхней стороны экрана, данных изображения в направлении к нижней стороне.The filter tool may perform filtering processing in incremental rows starting from the upper side of the screen, image data towards the lower side.

Средство фильтра может выполнять обработку фильтрования данных изображения с приращением по блокам строк, которые представляют собой данные изображения, состоящие из множества строк, необходимых для генерирования одной строки, соответствующей данным коэффициента для, по меньшей мере, подполосы компонента самой нижней полосы.The filter means may perform filtering processing of the image data in increments of blocks of rows that are image data consisting of a plurality of rows necessary to generate one row corresponding to coefficient data for at least a subband of a component of the lowest band.

Средство фильтра может выполнять обработку фильтрования как в вертикальном направлении, так и в горизонтальном направлении, в соответствии с данными изображения.The filter means may perform filtering processing both in the vertical direction and in the horizontal direction, in accordance with the image data.

По меньшей мере, один из множества выводов и множества уровней разрешения при обработке фильтрования, выполняемой средством фильтра, может быть определен в соответствии с целевым временем задержки.At least one of a plurality of conclusions and a plurality of resolution levels in the filtering processing performed by the filter means may be determined in accordance with the target delay time.

Средство фильтра может выполнять обработку вейвлет фильтрования, в которой данные коэффициента подполосы компонента нижней полосы, полученные в результате указанной обработки фильтрования, дополнительно подвергают указанной обработке фильтрования.The filter means may perform wavelet filtering processing in which the subband coefficient data of the lower band component obtained as a result of said filtering processing is further subjected to said filtering processing.

Средство фильтра может выполнять обработку вейвлет фильтрования, с использованием методики подъема.The filter tool may perform wavelet filtering processing using a lifting technique.

Когда средство фильтра выполняет обработку фильтрования уровня = Х+1 разрешения, используя методику подъема, она может быть выполнена в отношении данных коэффициента, рассчитанных как подполоса компонента нижней полосы, с обработкой фильтрования уровня = Х разрешения.When the filter tool performs filtering processing of the level = X + 1 resolution using the rise technique, it can be performed on coefficient data calculated as a subband of the lower band component with filtering processing of the level = X resolution.

Средство сохранения может дополнительно включать в себя: средство первого буфера, предназначенное для сохранения данных коэффициента подполосы компонента нижней полосы, генерируемых в процессе обработки вейвлет фильтрования, выполняемой средством фильтра; и средство второго буфера, предназначенное для содержания данных коэффициента подполосы компонента верхней полосы, генерируемых в процессе обработки вейвлет фильтрования, выполняемой средством фильтра.The storage means may further include: first buffer means for storing the subband coefficient data of the lower band component generated during processing of the wavelet filtering performed by the filtering means; and second buffer means for containing subband coefficient data of the upper band component generated during the wavelet filtering processing performed by the filter means.

Средство второго буфера может содержать данные коэффициента подполос для других компонентов полосы, кроме самой нижней полосы, до тех пор, пока данные коэффициента подполосы компонента самой нижней полосы не будут сгенерированы средством фильтра.The second buffer means may contain subband coefficient data for other band components except the lowest band until the subband coefficient data of the lowest band component is generated by the filter means.

Средство реконфигурирования коэффициента может выполнять реконфигурирование данных коэффициента таким образом, что подполосы выводят в порядке от компонентов нижней полосы до компонентов верхней полосы.The coefficient reconfiguration means may reconfigure the coefficient data so that the subbands are output in order from the lower band components to the upper band components.

Средство реконфигурирования коэффициента может выполнять реконфигурирование данных изображения с приращением по блокам строк, которые представляют собой данные изображения с количеством строк, необходимым для генерирования одной строки, соответствующей данным коэффициента для, по меньшей мере, подполосы компонента самой нижней полосы.The coefficient reconfiguration means may reconfigure the image data incrementally in blocks of rows, which are image data with the number of rows necessary to generate one row corresponding to the coefficient data for at least a subband of a component of the lowest band.

Устройство кодирования может дополнительно включать в себя средство энтропийного кодирования, предназначенное для выполнения энтропийного кодирования данных коэффициента.The encoding device may further include entropy encoding means for performing entropy encoding of coefficient data.

Средство энтропийного кодирования может последовательно выполнять энтропийное кодирование данных коэффициента, реконфигурированных средством реконфигурирования коэффициента.Entropy encoding means may sequentially perform entropy encoding of coefficient data reconfigured by coefficient reconfiguration means.

Средство реконфигурирования коэффициента может реконфигурировать данные коэффициента с тем, чтобы выводить подполосы в порядке от компонентов нижней полосы до компонентов верхней полосы; при этом средство энтропийного кодирования последовательно выполняет энтропийное кодирование данных реконфигурированного коэффициента в порядке от компонентов нижней полосы, до компонентов верхней полосы, как только данные коэффициента будут реконфигурированы средством реконфигурирования коэффициента.The coefficient reconfiguration means may reconfigure the coefficient data so as to output the subbands in order from the lower band components to the upper band components; wherein the entropy encoding means sequentially performs entropy encoding of the reconfigured coefficient data in an order from the components of the lower band to the components of the upper band as soon as the coefficient data is reconfigured by the coefficient reconfiguration means.

Средство энтропийного кодирования может выполнять энтропийное кодирование данных коэффициента, сгенерированных средством фильтрования; при этом средство сохранения сохраняет данные коэффициента, полученные после энтропийного кодирования с использованием средства энтропийного кодирования.Entropy encoding means may perform entropy encoding of coefficient data generated by filtering means; wherein the storage means stores coefficient data obtained after entropy encoding using the entropy encoding means.

Средство сохранения может сохранять данные коэффициента, генерируемые как подполосы других компонентов полосы, кроме самой нижней полосы, и которые были получены после энтропийного кодирования средством энтропийного кодирования, до тех пор, пока данные коэффициента для подполосы компонента самой нижней полосы не будут подвергнуты энтропийному кодированию с помощью средства энтропийного кодирования.The storage means may store coefficient data generated as subbands of other components of the strip except the lowest band, and which were obtained after entropy coding by means of entropy coding, until the coefficient data for the subband of the component of the lowest band is entropy encoded with Entropy encoding tools.

Средство реконфигурирования коэффициента может реконфигурировать данные коэффициента, сохраненные средством сохранения и полученные после энтропийного кодирования с помощью средства энтропийного кодирования, так чтобы подполосы выводились в порядке от компонентов нижней полосы до компонентов верхней полосы, и может выводить реконфигурированные данные коэффициента в порядке от компонентов нижней полосы до компонентов верхней полосы после того, как эти данные коэффициента будут реконфигурированы.The coefficient reconfiguration means may reconfigure the coefficient data stored by the storage means and obtained after entropy encoding with the entropy encoding means so that the subbands are output in order from the lower band components to the upper band components, and may output the reconfigured coefficient data in an order from the lower band components to components of the upper band after these coefficient data are reconfigured.

Средство энтропийного кодирования может выполнять групповое энтропийное кодирование множества строк данных коэффициента в пределах одной подполосы.The entropy encoding means may perform group entropy encoding of multiple rows of coefficient data within a single subband.

Средство энтропийного кодирования может выполнять кодирование строк всех подполос, составляющих блок строк, которые представляют собой группу данных коэффициента, соответствующих данным изображения множества строк, необходимых для генерирования одной строки данных коэффициента, по меньшей мере, для подполосы компонента самой нижней полосы, в отношении потока данных коэффициента, выстроенного в одномерном направлении, в порядке от нижней полосы до верхней полосы.The entropy encoding means can encode the rows of all subbands making up a block of rows that are a group of coefficient data corresponding to image data of a plurality of rows necessary to generate one row of coefficient data, at least for a subband of a component of the lowest band, with respect to the data stream coefficient, lined up in the one-dimensional direction, in order from the lower strip to the upper strip.

Средство энтропийного кодирования может включать в себя: средство квантования, предназначенное для квантования данных коэффициента, генерируемых средством фильтра; и средство кодирования источника, предназначенное для выполнения кодирования источника по коэффициентам результата квантования, полученным по данным коэффициента, квантованным средством квантования.Entropy encoding means may include: quantization means for quantizing coefficient data generated by the filter means; and source encoding means for performing source encoding according to quantization result coefficients obtained from coefficient data quantized by quantization means.

Устройство кодирования может дополнительно включать в себя: средство пакетирования, предназначенное для добавления заданного заголовка к данным результата кодирования, полученным средством энтропийного кодирования, выполняющим энтропийное кодирование, в порядке от компонентов нижней полосы до компонентов верхней полосы, для данных коэффициента каждого блока строк, которые представляют собой набор данных коэффициента, соответствующих данным изображения множества строк, необходимых для генерирования одной строки данных коэффициента, по меньшей мере, от подполосы компонента самой нижней полосы, и пакетирования заголовка и тела данных; и средство передачи, предназначенное для передачи пакета, сгенерированного средством пакетирования; при этом средство энтропийного кодирования, средство пакетирования и средство передачи выполняют соответствующую обработку одновременно и параллельно; средство энтропийного кодирования выполняет энтропийное кодирование данных коэффициента с приращением по блокам строк; при этом средство пакетирования выполняет пакетирование данных результата кодирования для каждого из блоков строк, как только данные результата кодирования для каждого блока строк будут сгенерированы в результате энтропийного кодирования, выполняемого средством энтропийного кодирования; и средство передачи передает полученный пакет, как только данные результата кодирования для каждого блока строк будут пакетированы средством пакетирования.The encoding device may further include: packetizing means for adding a predetermined header to the encoding result data obtained by the entropy encoding means performing entropy encoding, in order from the lower band components to the upper band components, for coefficient data of each block of rows that represent is a set of coefficient data corresponding to image data of a plurality of rows needed to generate one row of coefficient data and, at least, from the lowest sub-band component band, and packetizing the header and data body; and transmission means for transmitting a packet generated by the packetizing means; wherein the entropy encoding means, the packetizing means and the transmission means perform the corresponding processing simultaneously and in parallel; entropy encoding means performs entropy encoding of coefficient data in increments of blocks of rows; wherein the packetizer performs packetization of the encoding result data for each of the row blocks as soon as the encoding result data for each row block is generated as a result of entropy encoding performed by the entropy encoding means; and the transmission means transmits the received packet as soon as the encoding result data for each block of strings is packetized by the packaging means.

В заголовке может быть записана информация идентификации, предназначенная для идентификации блока строк на экране, длина данных тела данных и информация кодирования.Identification information intended for identifying a block of lines on a screen, data body data length, and encoding information may be recorded in the header.

Средство энтропийного кодирования может включать в себя: средство квантования, предназначенное для квантования данных коэффициента, генерируемых средством фильтра; и средство кодирования источника, предназначенное для выполнения кодирования источника по коэффициентам результата квантования, полученным для данных коэффициента, квантованных средством квантования; причем информация кодирования включает в себя размер шага квантования для квантования, выполняемого средством квантования.Entropy encoding means may include: quantization means for quantizing coefficient data generated by the filter means; and source encoding means for performing source encoding according to quantization result coefficients obtained for coefficient data quantized by the quantization means; wherein the encoding information includes a quantization step size for quantization performed by the quantization means.

Информация о размере шага квантования может включать в себя информацию о размере шага квантования для каждой подполосы.The quantization step size information may include quantization step size information for each subband.

Способ кодирования в соответствии с первым аспектом настоящего изобретения представляет способ кодирования для устройства кодирования, для кодирования данных изображения, причем способ включает в себя: этап фильтрования, предназначенный для иерархического выполнения обработки фильтрования в отношении данных изображения, и генерирования множества подполос, состоящих из данных коэффициента, распределенных по полосе частот; этап управления сохранением для накопительного сохранения данных коэффициента, сгенерированных в результате обработки на этапе фильтрования, в модуле сохранения; и этап реконфигурирования коэффициента, предназначенный для реконфигурирования данных коэффициента, сохраненных в модуле сохранения, которым управляют путем обработки, выполняемой на этапе управления сохранением для вывода в заданном порядке.An encoding method in accordance with a first aspect of the present invention provides an encoding method for an encoding device for encoding image data, the method including: a filtering step for hierarchically performing filtering processing with respect to image data, and generating a plurality of subbands consisting of coefficient data distributed over the frequency band; a storage control step for cumulatively storing coefficient data generated as a result of processing in a filtering step in a storage module; and a coefficient reconfiguration step for reconfiguring the coefficient data stored in the storage unit, which is controlled by the processing performed in the storage control step for output in a predetermined order.

Устройство декодирования в соответствии со вторым аспектом настоящего изобретения представляет собой устройство декодирования, предназначенное для декодирования кодированных данных изображения, в котором были кодированы данные изображения, включающее в себя: средство сохранения, предназначенное для сохранения данных коэффициента множества подполос, состоящих из данных коэффициента, распределенных по полосе частот, полученных путем иерархической обработки первой фильтрования данных изображения, передаваемых с приращением по строкам; средство реконфигурирования коэффициента, предназначенное для реконфигурирования данных коэффициента, сохраненных средством сохранения, для вывода в заданном порядке; и средство фильтра, предназначенное для выполнения второй обработки фильтрования данных коэффициента, реконфигурированных с помощью средства реконфигурирования и выведенных из средства сохранения, и синтезирования данных коэффициента из множества подполос, распределенных по полосе частот, для генерирования данных изображения.A decoding apparatus in accordance with a second aspect of the present invention is a decoding apparatus for decoding encoded image data in which image data has been encoded, including: storage means for storing coefficient data of a plurality of subbands consisting of coefficient data distributed over frequency band obtained by hierarchical processing of the first filtering of image data transmitted in incremental order cam; coefficient reconfiguration means for reconfiguring coefficient data stored by the storage means for output in a predetermined order; and filter means for performing second filtering processing of the coefficient data reconfigured with the reconfiguration means and outputted from the storage means and synthesizing the coefficient data from the plurality of subbands distributed over the frequency band to generate image data.

Средство реконфигурирования коэффициента может реконфигурировать данные коэффициента так, чтобы подполосы выводились в порядке от компонентов нижней полосы, до компонентов верхней полосы.The coefficient reconfiguration means may reconfigure the coefficient data so that the subbands are output in order from the components of the lower band to the components of the upper band.

Средство реконфигурирования коэффициента может выполнять реконфигурирование данных коэффициента, сохраненных в средстве сохранения, с приращением по блокам строк, которые представляют собой набор данных коэффициента, соответствующих данным изображения из множества строк, необходимых для генерирования одной строки, соответствующей данным коэффициента, для, по меньшей мере, подполосы компонента самой нижней полосы.The coefficient reconfiguration means may reconfigure the coefficient data stored in the means of storage, incrementally in blocks of rows, which are a set of coefficient data corresponding to image data from a plurality of rows necessary to generate one row corresponding to the coefficient data, for at least subbands of the component of the lowest band.

Средство фильтра может выполнять вторую обработку фильтрования с приращением по строкам, начиная с верхней стороны экрана в направлении к нижней его стороне, генерируя, таким образом, данные изображения.The filter means may perform the second filtering processing in increments of rows starting from the upper side of the screen towards its lower side, thereby generating image data.

Средство фильтра выполняет вторую обработку фильтрования данных коэффициента с приращением по блокам строк, которые представляют собой набор данных коэффициента, соответствующих данным изображения, состоящих из множества строк, необходимых для генерирования одной строки, соответствующей данным коэффициента, для, по меньшей мере, подполосы компонента самой нижней полосы.The filter tool performs the second filtering processing of the coefficient data in increments of blocks of rows that are a set of coefficient data corresponding to image data consisting of a plurality of rows necessary to generate one row corresponding to coefficient data for at least a subband of the lowest component stripes.

Средство фильтра может выполнять вторую обработку фильтрования с использованием методики подъема.The filter means may perform a second filtering processing using a lifting technique.

Устройство декодирования может дополнительно включать в себя средство энтропийного декодирования, предназначенное для выполнения энтропийного декодирования кодированных данных с приращением по строкам для каждой подполосы; при этом средство сохранения сохраняет данные коэффициента, полученные при энтропийном декодировании, выполняемом средством энтропийного декодирования.The decoding device may further include entropy decoding means for performing entropy decoding of encoded data in row increments for each subband; wherein the storage means stores coefficient data obtained by entropy decoding performed by the entropy decoding means.

Средство энтропийного декодирования может выполнять декодирование кодированных данных, при котором строки всех подполос, составляющих блок строк, который представляет собой группу данных коэффициента, соответствующих данным изображения, состоящего из множества строк, необходимых для генерирования одной строки данных коэффициента, по меньшей мере, подполосы компонента самой нижней полосы, были кодированы и выстроены в одном измерении.The entropy decoding means may decode encoded data, in which the rows of all subbands constituting the row block, which is a group of coefficient data corresponding to image data consisting of a plurality of rows necessary to generate one row of coefficient data of at least a subband of the component itself lower bands were encoded and lined up in one dimension.

Средство энтропийного декодирования может включать в себя: средство декодирования источника, предназначенное для выполнения декодирования источника для кодированных данных; и средство инверсного квантования, предназначенное для выполнения инверсного квантования данных коэффициента, полученных в результате декодирования источника с помощью средства декодирования источника.Entropy decoding means may include: source decoding means for decoding a source for encoded data; and inverse quantization means for performing inverse quantization of coefficient data obtained by decoding the source using the source decoding means.

Способ декодирования по второму аспекту настоящего изобретения представляет собой способ декодирования для устройства декодирования, предназначенный для декодирования данных кодированных изображений, в котором были кодированы данные изображения, причем способ включает в себя: этап управления сохранением, предназначенный для сохранения в модуле сохранения данных коэффициента множества подполос, распределенных по полосе частот, полученных в результате иерархической обработки первого фильтрования данных изображения, передаваемых с приращением по строкам; этап реконфигурирования коэффициента, предназначенный для реконфигурирования данных коэффициента, сохраненных в модуле сохранения, под управлением, выполняемым при обработке, выполняемой на этапе управления сохранением, для вывода в заданном порядке; и этап фильтрования, предназначенный для выполнения второй обработки фильтрования в отношении данных коэффициента, реконфигурированных с использованием обработки, выполняемой на этапе реконфигурирования, и вывода из модуля сохранения, и синтезирования данных коэффициента, состоящих из множества подполос, распределенных по полосе частот, для генерирования данных изображения.The decoding method of the second aspect of the present invention is a decoding method for a decoding device for decoding encoded image data in which image data has been encoded, the method including: a storage control step for storing a coefficient of a plurality of subbands in a data storage unit, distributed over the frequency band obtained as a result of hierarchical processing of the first filtering of image data transmitted from increment by row; a coefficient reconfiguration step for reconfiguring coefficient data stored in the storage unit under control performed by processing performed in the storage control step for output in a predetermined order; and a filtering step for performing second filtering processing with respect to coefficient data reconfigured using the processing performed in the reconfiguration step and outputting from the storage module and synthesizing coefficient data consisting of a plurality of subbands distributed over the frequency band to generate image data .

Система передачи в соответствии с третьим аспектом настоящего изобретения представляет собой систему передачи, включающую в себя: устройство кодирования, предназначенное для кодирования данных изображения, и устройство декодирования, предназначенное для декодирования кодированных данных, в которой данные изображения были кодированы; причем система передачи предназначена для передачи кодированных данных между устройством кодирования и устройством декодирования; в которой устройство кодирования включает в себя средство первого фильтра, предназначенное для иерархического выполнения первой обработки фильтрования данных изображения и генерирования множества подполос, состоящих из данных коэффициента, распределенных по полосе частот, средство сохранения, предназначенное для накопительного сохранения данных коэффициента, сгенерированных первым средством фильтра, и средство реконфигурирования коэффициента, предназначенное для реконфигурирования данных коэффициента, сохраненных средством сохранения, для вывода в заданном порядке; и в котором устройство декодирования включает в себя средство второго фильтра, предназначенное для выполнения второй обработки фильтрования для данных коэффициента, реконфигурированных средством реконфигурирования коэффициента и выведенных из средства сохранения, которые были переданы из устройства кодирования через канал передачи данных и синтезирования данных коэффициента, состоящих из множества подполос, распределенных по полосе частот, для генерирования данных изображения.A transmission system in accordance with a third aspect of the present invention is a transmission system including: an encoding device for encoding image data, and a decoding device for decoding encoded data in which image data has been encoded; moreover, the transmission system is designed to transmit encoded data between the encoding device and the decoding device; in which the encoding device includes first filter means for hierarchically performing the first filtering processing of image data and generating a plurality of subbands consisting of coefficient data distributed over a frequency band, storage means for cumulatively storing coefficient data generated by the first filter means, and coefficient reconfiguration means for reconfiguring coefficient data stored by means with injury to output in a predetermined order; and in which the decoding device includes a second filter means for performing second filtering processing for coefficient data reconfigured by coefficient reconfiguration means and derived from the storage means that were transmitted from the encoding device through the data transmission and synthesis channel of the coefficient data consisting of a plurality subbands distributed over a frequency band for generating image data.

В соответствии с первым аспектом настоящего изобретения обработку фильтрования выполняют иерархически в отношении данных изображения, при этом генерируют множество подполос, состоящих из данных коэффициента, полученных в результате разбиения частотного диапазона, сгенерированные данные коэффициента сохраняют с накоплением и сохраненные данные коэффициента реконфигурируют для вывода в заданном порядке.According to a first aspect of the present invention, filtering processing is performed hierarchically with respect to image data, wherein a plurality of subbands are generated consisting of coefficient data obtained by partitioning the frequency range, the generated coefficient data is stored and the coefficient data stored is reconfigured for output in a predetermined order .

В соответствии со вторым аспектом настоящего изобретения сохраняют данные коэффициента из множества подполос, полученных в результате разбиения частотного диапазона, полученных в результате иерархической обработки первого фильтрования данных изображения, передаваемых с приращением в виде строк, сохраненные данные реконфигурируют для вывода их в заданном порядке, обработку второго фильтрования выполняют в отношении реконфигурированных и выводимых данных коэффициента, и данные коэффициента множества подполос, полученных в результате разбиения частотного диапазона, синтезируют для генерирования данных изображения.In accordance with a second aspect of the present invention, coefficient data from a plurality of subbands obtained by partitioning a frequency range obtained as a result of hierarchical processing of the first filtering of image data transmitted in incremental rows is stored, the stored data is reconfigured to output it in a predetermined order, processing the second filtering is performed with respect to reconfigured and output coefficient data, and coefficient data of a plurality of subbands obtained as a result those frequency range partitions are synthesized to generate image data.

В соответствии с третьим аспектом настоящего изобретения в устройстве кодирования иерархически выполняют первую обработку фильтрования для данных изображения, генерируют множество подполос, составленных из данных коэффициента, полученных в результате разбиения частотного диапазона, сгенерированные данные коэффициента сохраняют с накоплением и сохраненные данные коэффициента реконфигурируют для вывода в заданном порядке; и в устройстве декодирования обработку второго фильтрования выполняют для данных коэффициента, реконфигурированных в заданном порядке и переданных из устройства кодирования через путь передачи, и синтезируют данные коэффициента множества подполос, полученных в результате разбиения частотного диапазона, для генерирования данных изображения.In accordance with a third aspect of the present invention, the first filtering processing is hierarchically performed on the encoding device for image data, a plurality of subbands are made up of coefficient data obtained by partitioning the frequency range, the generated coefficient data is stored and the coefficient data stored is reconfigured for output to a predetermined order; and in the decoding device, the second filtering processing is performed for coefficient data reconfigured in a predetermined order and transmitted from the encoding device through the transmission path, and coefficient data of a plurality of subbands obtained by partitioning the frequency range is synthesized to generate image data.

ПреимуществаBenefits

В соответствии с настоящим изобретением обработку фильтрования выполняют иерархически в отношении данных изображения, при этом генерируют множество подполос, составленных данными коэффициента, полученными в результате разбиения частотного диапазона, сгенерированные данные коэффициента сохраняют с накоплением и сохраненные данные коэффициента реконфигурируют для вывода в заданном порядке, так, чтобы во время декодирования данные коэффициента можно было обрабатывать в порядке, в котором они поступают, и время задержки от кодирования данных изображения до декодирования кодированных данных и вывода данных изображения, предпочтительно, можно было уменьшить.In accordance with the present invention, filtering processing is performed hierarchically with respect to image data, and a plurality of subbands are generated, composed of coefficient data obtained by partitioning the frequency range, the generated coefficient data is stored and the coefficient data stored is reconfigured for output in a predetermined order, so so that during decoding the coefficient data can be processed in the order in which they arrive, and the delay time from encoding image data to decode encoded data and output the image data, preferably, can be reduced.

Краткое описание чертежейBrief Description of the Drawings

На фиг.1 показана блок-схема, иллюстрирующая конфигурацию примера устройства кодирования изображения, в котором применяется настоящее изобретение.1 is a block diagram illustrating a configuration of an example image encoding apparatus to which the present invention is applied.

На фиг.2 показана схема, описывающая вейвлет преобразование.2 is a diagram describing a wavelet transform.

На фиг.3 показана схема, схематично описывающая вейвлет преобразование.Figure 3 shows a diagram schematically describing a wavelet transform.

На фиг.4 показана схема, схематично описывающая вейвлет преобразование в случае применения методики подъема фильтра 5×3.Figure 4 shows a diagram schematically describing a wavelet transform in the case of applying the method of raising the filter 5 × 3.

На фиг.5 показана схема, схематично описывающая вейвлет преобразование в случае применения методики подъема фильтра 5×3.5 is a diagram schematically describing a wavelet transform in the case of applying the 5 × 3 filter raising technique.

На фиг.6 показана схема, описывающая пример выполнения фильтрования путем подъема с использованием фильтра 5×3, до уровня = 2 разделения.6 is a diagram describing an example of performing filtering by rising using a 5 × 3 filter to a separation level = 2.

На фиг.7 показана схема, описывающая поток вейвлет преобразования и инверсного вейвлет преобразования в соответствии с настоящим изобретением.7 is a diagram describing a flow of wavelet transform and inverse wavelet transform in accordance with the present invention.

На фиг.8 показана блок-схема последовательности операций, предназначенная для описания примера обработки кодирования.FIG. 8 is a flowchart for describing an example of encoding processing.

На фиг.9 показана блок-схема, иллюстрирующая пример устройства декодирования изображения, в котором применяется настоящее изобретение.9 is a block diagram illustrating an example of an image decoding apparatus to which the present invention is applied.

На фиг.10 показана блок-схема последовательности операций, предназначенная для описания примера обработки декодирования.10 is a flowchart for describing an example of decoding processing.

На фиг.11 показана схема, описывающая параллельную работу компонентов устройства кодирования изображения и устройства декодирования изображения, в которых применено настоящее изобретение.11 is a diagram describing the parallel operation of components of an image encoding device and an image decoding device to which the present invention is applied.

На фиг.12 показана блок-схема, иллюстрирующая конфигурацию примера устройства кодирования изображения, в котором применено настоящее изобретение.12 is a block diagram illustrating a configuration of an example image encoding apparatus to which the present invention is applied.

На фиг.13 показана схема, описывающая поток обработки в случае выполнения обработки реконфигурирования вейвлет коэффициентов на стороне устройства кодирования изображения.13 is a diagram describing a processing flow in the case of performing reconfiguration processing of wavelet coefficients on the side of the image encoding device.

На фиг.14 показана схема, описывающая поток обработки в случае выполнения обработки реконфигурирования вейвлет коэффициентов на стороне устройства декодирования изображения.Fig. 14 is a diagram describing a processing flow in the case of performing reconfiguration processing of wavelet coefficients on the side of the image decoding apparatus.

На фиг.15 показана блок-схема, иллюстрирующая конфигурацию примера устройства кодирования изображения, в котором применено настоящее изобретение.15 is a block diagram illustrating a configuration of an example image encoding apparatus in which the present invention is applied.

На фиг.16 показана блок-схема, иллюстрирующая конфигурацию примера устройства декодирования изображения, в котором также применено настоящее изобретение.16 is a block diagram illustrating a configuration of an example image decoding apparatus in which the present invention is also applied.

На фиг.17 показана схема, описывающая пример того, как выполняют обмен кодированными данными.17 is a diagram describing an example of how encoded data is exchanged.

На фиг.18 показана схема, иллюстрирующая пример конфигурации пакета.On Fig shows a diagram illustrating an example configuration of a package.

На фиг.19 показана блок-схема, иллюстрирующая пример конфигурации устройства кодирования изображения, в котором применено настоящее изобретение.19 is a block diagram illustrating an example configuration of an image encoding apparatus in which the present invention is applied.

На фиг.20 показана схема, описывающая подполосы.On Fig shows a diagram describing the subbands.

На фиг.21 показана схема, иллюстрирующая пример квантованных коэффициентов, которые должны быть кодированы.21 is a diagram illustrating an example of quantized coefficients to be encoded.

На фиг.22 показана блок-схема, иллюстрирующая пример конфигурации модуля энтропийного кодирования.22 is a block diagram illustrating an example configuration of an entropy coding unit.

На фиг.23 блок-схема последовательности операций устройства кодирования.23 is a flowchart of an encoding device.

На фиг.24 показана блок-схема последовательности операций, описывающая обработку энтропийного кодирования.24 is a flowchart for describing entropy encoding processing.

На фиг.25 показана блок-схема последовательности операций, предназначенная для описания обработки кодирования набора w.25 is a flowchart for describing encoding processing of a set w.

На фиг.26 показана блок-схема, иллюстрирующая пример конфигурации устройства декодирования изображения.26 is a block diagram illustrating an example configuration of an image decoding apparatus.

На фиг.27 показана блок-схема, иллюстрирующая пример конфигурации устройства энтропийного декодирования.27 is a block diagram illustrating an example configuration of an entropy decoding device.

На фиг.28 показана блок-схема, иллюстрирующая пример конфигурации модуля разделения кода.28 is a block diagram illustrating an example configuration of a code separation module.

На фиг.29 показана блок-схема, иллюстрирующая пример конфигурации модуля разделения кода.On Fig shows a block diagram illustrating an example configuration of a code separation module.

На фиг.30 показана блок-схема последовательности операций, предназначенная для описания обработки декодирования.FIG. 30 is a flowchart for describing decoding processing.

На фиг.31 показана блок-схема последовательности операций, предназначенная для описания обработки энтропийного декодирования.FIG. 31 is a flowchart for describing entropy decoding processing.

На фиг.32 показана блок-схема последовательности операций, предназначенная для описания обработки декодирования набора w.32 is a flowchart for describing decoding processing of a set w.

На фиг.33 показана блок-схема, иллюстрирующая другой пример конфигурации модуля энтропийного кодирования.33 is a block diagram illustrating another example configuration of an entropy coding unit.

На фиг.34 показана схема, иллюстрирующая пример квантованных коэффициентов, предназначенных для кодирования.34 is a diagram illustrating an example of quantized coefficients for encoding.

На фиг.35 показана блок-схема последовательности операций, предназначенная для описания обработки кодирования набора w.35 is a flowchart for describing encoding processing of a set w.

На фиг.36 показана блок-схема последовательности операций, предназначенная для описания обработки декодирования набора w.36 is a flowchart for describing decoding processing of a set w.

На фиг.37 показана блок-схема, иллюстрирующая конфигурацию примера цифровой триаксиальной системы, к которой применено настоящее изобретение.37 is a block diagram illustrating a configuration of an example of a digital triaxial system to which the present invention is applied.

На фиг.38 показана блок-схема, иллюстрирующая пример конфигурации системы беспроводной передачи, в которой применено настоящее изобретение.38 is a block diagram illustrating an example configuration of a wireless transmission system to which the present invention is applied.

На фиг.39 показана схема, иллюстрирующая пример конфигурации домашней игровой консоли, в который применено настоящее изобретение.39 is a diagram illustrating an example configuration of a home game console to which the present invention is applied.

На фиг.40 показана схема, иллюстрирующая пример конфигурации системы обработки информации, в которой применено настоящее изобретение.40 is a diagram illustrating an example configuration of an information processing system to which the present invention is applied.

Список ссылочных позицийList of Reference Items

1 устройство кодирования изображения1 image encoding device

10 модуль вейвлет преобразования10 wavelet transform module

11 модуль буфера промежуточных расчетов11 intermediate calculation buffer module

12 модуль буфера реконфигурирования коэффициентов12 coefficient reconfiguration buffer module

13 модуль реконфигурирования коэффициентов13 coefficient reconfiguration module

14 модуль управления скоростью14 speed control module

15 модуль энтропийного кодирования15 entropy coding module

20 устройство декодирования изображения20 image decoding device

21 модуль энтропийного декодирования21 entropy decoding module

22 модуль буфера коэффициента22 coefficient buffer module

23 модуль инверсного вейвлет преобразования23 inverse wavelet transform module

30 устройство кодирования изображения30 image encoding device

31 модуль буфера реконфигурирования кодирования31 coding reconfiguration buffer module

32 модуль реконфигурирования кодирования32 coding reconfiguration module

41 устройство кодирования изображения41 image encoding device

42 устройство декодирования изображения42 image decoding device

43 модуль буфера реконфигурирования коэффициента43 coefficient reconfiguration buffer module

111 устройство кодирования изображения111 image encoding device

121 модуль вейвлет преобразования121 wavelet transform module

122 модуль квантования122 quantization module

123 модуль энтропийного кодирования123 entropy coding module

161 модуль определения строки161 line definition module

162 модуль кодирования КПД162 efficiency coding module

163 модуль расчета максимального значащего разряда163 maximum significant discharge calculation module

164 модуль кодирования КПД164 efficiency coding module

165 модуль выделения значащего разряда165 significant discharge highlighting module

166 модуль кодирования КПД166 efficiency coding module

167 модуль выделения знака167 character extraction module

168 модуль кодирования КПД168 efficiency coding module

169 модуль соединения кода169 code connection module

211 устройство декодирования изображения211 image decoding device

221 модуль энтропийного декодирования221 entropy decoding module

222 модуль инверсного квантования222 inverse quantization module

223 модуль инверсного вейвлет преобразования223 inverse wavelet transform module

251 модуль разделения кода251 code separation module

252 модуль определения строки252 line definition module

253 модуль генерирования253 generation module

254 модуль декодирования КПД254 efficiency decoding module

255 модуль декодирования КПД255 efficiency decoding module

256 модуль декодирования КПД256 efficiency decoding module

257 модуль синтеза квантованного коэффициента257 quantized coefficient synthesis module

258 модуль переключения258 switching module

271 модуль управления271 control module

272 запоминающее устройство272 storage device

291 модуль управления291 control module

401 буфер401 buffer

500 модуль передачи500 transmission module

501 триаксиальный кабель501 triax cable

502 модуль управления камерой502 camera control module

510 модуль кодирования видеосигнала510 video encoding module

511 модуль декодирования видеосигнала511 video decoding module

526 модуль декодирования видеосигнала526 video decoding module

527 модуль кодирования видеосигнала527 video coding module

600 модуль передачи600 transmission module

601 устройство приема601 receiving device

602 модуль кодирования видеосигнала602 video coding module

612 блок беспроводного модуля612 wireless module unit

621 блок беспроводного модуля621 wireless module unit

624 модуль декодирования видеосигнала624 video decoding module

700 устройство видеокамеры700 camcorder device

701 домашняя игровая консоль701 home game console

Подробное описание изобретенияDETAILED DESCRIPTION OF THE INVENTION

Первый вариант выполнения в соответствии с настоящим изобретением будет описан со ссылкой на чертежи. На фиг.1 представлен один пример конфигурации устройства кодирования изображения, применимый к первому варианту выполнения настоящего изобретения. Устройство 1 кодирования изображения содержит модуль 10 вейвлет преобразования, модуль 11 буфера промежуточных расчетов, модуль 12 буфера реконфигурирования коэффициента, модуль 13 реконфигурирования коэффициента, модуль 14 управления скоростью и модуль 15 энтропийного кодирования.The first embodiment in accordance with the present invention will be described with reference to the drawings. FIG. 1 shows one example of a configuration of an image encoding apparatus applicable to a first embodiment of the present invention. The image encoding device 1 comprises a wavelet transform module 10, an intermediate calculation buffer module 11, a coefficient reconfiguration buffer module 12, a coefficient reconfiguration module 13, a speed control module 14, and an entropy encoding module 15.

Введенные данные изображения временно накапливают в модуле 11 буфера промежуточных расчетов. Модуль 10 вейвлет преобразования выполняет вейвлет преобразование данных изображения, которые накоплены в модуле 11 буфера промежуточных расчетов. То есть модуль 10 вейвлет преобразования считывает данные изображения из буфера 11 промежуточных расчетов и выполняет обработку фильтрования с использованием фильтра анализа для генерирования данных коэффициента с компонентами нижней полосы и компонентами верхней полосы и сохраняет сгенерированные данные коэффициента в модуле 11 буфера промежуточных расчетов. Модуль 10 вейвлет преобразования имеет фильтр горизонтального анализа и фильтр вертикального анализа и выполняет обработку фильтрования анализа для группы данных изображения как в горизонтальном направлении экрана, так и в вертикальном направлении экрана. Модуль 10 вейвлет преобразования снова считывает данные коэффициента компонента нижней полосы, которые сохранены в модуле 11 буфера промежуточных расчетов, выполняет обработку фильтрования в отношении считываемых данных коэффициента с использованием фильтра анализа и дополнительно сгенерированных данных коэффициента с использованием компонентов верхней полосы и компонентов нижней полосы. Сгенерированные данные коэффициента сохраняют в модуле 111 буфера промежуточных расчетов.The input image data is temporarily stored in the intermediate calculation buffer module 11. The wavelet transform module 10 performs the wavelet transform of the image data that is accumulated in the intermediate calculation buffer module 11. That is, the wavelet transform module 10 reads image data from the intermediate calculation buffer 11 and performs filtering processing using the analysis filter to generate coefficient data with lower band components and upper band components and stores the generated coefficient data in the intermediate calculation buffer module 11. The wavelet transform module 10 has a horizontal analysis filter and a vertical analysis filter, and performs analysis filtering processing for a group of image data in both the horizontal direction of the screen and the vertical direction of the screen. The wavelet transform module 10 again reads the coefficient data of the lower band component, which is stored in the intermediate calculation buffer module 11, performs filtering processing on the coefficient data to be read using the analysis filter and additionally generated coefficient data using the upper band components and lower band components. The generated coefficient data is stored in the intermediate calculation buffer module 111.

Модуль 10 вейвлет преобразования считывает данные коэффициента из модуля 11 буфера промежуточных расчетов, когда эта обработка повторяется, и уровень разделения достигает заданного уровня, и записывает считанные данные коэффициента в модуль 12 буфера реконфигурирования коэффициента.The wavelet transform module 10 reads the coefficient data from the intermediate calculation buffer module 11 when this processing is repeated and the separation level reaches a predetermined level, and writes the read coefficient data to the coefficient reconfiguration buffer module 12.

Модуль 13 реконфигурирования коэффициента считывает данные коэффициента, записанные в модуль 12 буфера реконфигурирования коэффициента в заданном порядке, и передает в модуль 15 энтропийного кодирования. Модуль 15 энтропийного кодирования кодирует переданные данные коэффициента, используя способ энтропийного кодирования, такой как, например, способ кодирования Хаффмана или арифметическое кодирование.The coefficient reconfiguration module 13 reads the coefficient data written into the coefficient reconfiguration buffer module 12 in a predetermined order and transmits to the entropy encoding module 15. Entropy encoding unit 15 encodes the transmitted coefficient data using an entropy encoding method, such as, for example, a Huffman encoding method or arithmetic encoding.

Модулем 15 энтропийного кодирования управляют так, чтобы он работал совместно с модулем 14 управления скоростью, в котором скорость передачи битов в выходных данных после кодирования со сжатием, в общем, имеет постоянное значение. То есть модуль 14 управления скоростью передает сигнал управления в модуль 15 энтропийного кодирования, в котором скорость передачи битов данных, подвергаемых кодированию со сжатием модулем 15 энтропийного кодирования, заканчивает обработку кодирования модуля 15 энтропийного кодирования в точке достижения его целевого значения или непосредственно перед достижением его целевого значения на основе информации данных кодирования из модуля 15 энтропийного кодирования. Модуль 15 энтропийного кодирования выводит данные кодирования в точке, в которой обработка кодирования заканчивается, в соответствии с сигналом управления, передаваемым из модуля 14 управления скоростью.The entropy encoding unit 15 is controlled to work in conjunction with the rate control unit 14, in which the bit rate in the output after compression encoding is generally constant. That is, the speed control unit 14 transmits a control signal to the entropy encoding unit 15, in which the bit rate of the data bits encoded with compression by the entropy encoding unit 15 completes the encoding processing of the entropy encoding unit 15 at the point of reaching its target value or immediately before reaching its target value values based on information of encoding data from entropy encoding unit 15. Entropy encoding unit 15 outputs encoding data at a point at which encoding processing ends in accordance with a control signal transmitted from rate control unit 14.

Обработка, выполняемая в модуле 10 вейвлет преобразования, будет подробно описана ниже. Вначале будет приведено общее описание вейвлет преобразования. С помощью вейвлет преобразования данных изображения, которое, в общем, представлено на фиг.2, выполняется обработка разделения данных изображения на пространственные частоты из верхних полос и нижних полос, рекурсивно повторяемая в отношении данных с пространственной частотой нижней полосы, полученной в результате разделения. Таким образом, путем размещения данных с пространственной частотой нижней полосы в меньшей области может быть более эффективно выполнено кодирование со сжатием.The processing performed in the wavelet transform module 10 will be described in detail below. First, a general description of the wavelet transform will be given. Using the wavelet transform of the image data, which is generally shown in FIG. 2, processing is performed for dividing the image data into spatial frequencies from the upper bands and lower bands, recursively repeated with respect to data with a spatial frequency of the lower band obtained by the separation. Thus, by arranging the data with the spatial frequency of the lower band in a smaller area, compression coding can be performed more efficiently.

Следует отметить, что на фиг.2 показан пример для случая, в котором обработка разделения в области компонента самой нижней полосы данных изображения повторяется три раза в области L компонента нижней полосы или области Н компонента верхней полосы, в результате чего получают уровень = 3 разделения. На фиг.2 "L" и "Н" обозначают компоненты нижней полосы и компоненты верхней полосы соответственно, и порядок "L" и "Н" показывает полосу как результат горизонтального разделения передней стороны и полосу как результат вертикального разделения задней стороны. Кроме того, цифры, предшествующие "L" и "Н", обозначают уровень разделения их области.It should be noted that figure 2 shows an example for the case in which the separation processing in the component region of the lowest band of image data is repeated three times in the region L of the component of the lower band or region H of the component of the upper band, resulting in a level = 3 separation. In FIG. 2, “L” and “H” denote the components of the lower strip and the components of the upper strip, respectively, and the order “L” and “H” shows the strip as a result of horizontal separation of the front side and the strip as a result of vertical separation of the rear side. In addition, the numbers preceding “L” and “H” indicate the level of separation of their area.

Кроме того, как можно видеть на примере, показанном на фиг.2, обработку выполняют поэтапно от области в правой нижней части экрана в направлении области, верхней левой части, в которую передают компоненты нижней полосы. То есть на примере, показанном на фиг.2, область, разделенная на четыре части, в которой область ЗИН в нижней правой части экрана, которая имеет компоненты последней нижней полосы (включает в себя большую часть компонентов верхней полосы), имеет область в верхней левой части экрана, разделенную на четыре и дополнительно разделенную на четыре части, и эта область в верхней левой части экрана дополнительно разделена на четыре части. Область в самом дальнем верхнем левом углу представляет собой область 0LL, которая имеет компоненты самой нижней полосы.In addition, as can be seen in the example shown in figure 2, the processing is performed in stages from the area in the lower right part of the screen in the direction of the area, the upper left part, into which the components of the lower band are transmitted. That is, in the example shown in FIG. 2, the four-part region in which the ZIN region in the lower right side of the screen, which has the components of the last lower band (includes most of the components of the upper band), has a region in the upper left parts of the screen, divided into four and further divided into four parts, and this area in the upper left part of the screen is further divided into four parts. The region in the farthest upper left corner is the 0LL region, which has the components of the lowest band.

Преобразование и разделение компонентов нижней полосы выполняют многократно, поскольку энергия изображения концентрируется в компонентах нижней полосы. Это также можно видеть на примере подполосы, сформированной, как показано на фиг.3В, в соответствии с переходом уровня разделения из состояния уровня = 1 разделения, как представлено на примере, показанном на фиг.3А в состояние уровня = 3 разделения, как показано на примере, показанном на фиг.3В. Например, уровень разделения вейвлет преобразования на фиг.2 равен 3, и, следовательно, формируется 10 подполос.The conversion and separation of the components of the lower band is performed repeatedly, since the image energy is concentrated in the components of the lower band. This can also be seen in the example of a subband formed as shown in FIG. 3B in accordance with the transition of the separation level from the separation level = 1 state, as shown in the example shown in FIG. 3A to the separation level = 3 state, as shown in the example shown in figv. For example, the separation level of the wavelet transform in FIG. 2 is 3, and therefore, 10 subbands are formed.

Модуль 10 вейвлет преобразования обычно выполняет описанную выше обработку, используя гребенку фильтров, выполненную с фильтром нижней полосы и фильтром верхней полосы. Следует отметить, что цифровой фильтр обычно имеет импульсный отклик, то есть коэффициент фильтра с множеством длин выводов, и поэтому требуется заранее выполнять буферизацию данных коэффициента или входных данных изображения только в количестве, требуемом для выполнения обработки фильтра. Кроме того, аналогично случаю выполнения вейвлет преобразования с использованием множества этапов, коэффициент вейвлет преобразования, генерируемый на предыдущем этапе, должен размещаться в буфере, только такое количество раз, которое может быть выполнена обработка в этом фильтре.The wavelet transform module 10 typically performs the processing described above using a filter bank configured with a lower band filter and a high band filter. It should be noted that a digital filter usually has an impulse response, that is, a filter coefficient with a plurality of output lengths, and therefore, buffering of the coefficient data or input image data is required in advance only in the amount required to perform filter processing. In addition, similarly to the case of performing a wavelet transform using many steps, the wavelet transform coefficient generated in the previous step should be placed in the buffer only as many times as can be processed in this filter.

Далее, как конкретный пример вейвлет преобразования, применимого в первом варианте выполнения настоящего изобретения, будет описан способ, в котором используется фильтр 5×3. Способ, в котором используется фильтр 5×3, представляет собой отличный способ, в котором вейвлет преобразование может быть выполнено с меньшим количеством отводов фильтра, и также используется со стандартом JPEG 2000, как описано со ссылкой на обычную методику.Next, as a specific example of the wavelet transform applicable in the first embodiment of the present invention, a method in which a 5 × 3 filter is used is described. A method in which a 5 × 3 filter is used is an excellent method in which wavelet transform can be performed with fewer filter taps, and is also used with the JPEG 2000 standard, as described with reference to a conventional technique.

Импульсный отклик (выражение Z-преобразования) фильтра 5×3 выполнен с фильтром Н0 (z) нижней полосы и фильтром H1 (z) верхней полосы, как показано в следующих выражениях (1) и (2). Из выражений (1) и (2) можно определить, что фильтр Н0 (z) нижней полосы должен иметь 5 отводов, и можно определить, что H1 (z) верхней полосы должен иметь 3 отвода.The impulse response (Z-transform expression) of the 5 × 3 filter is made with a lower band filter H 0 (z) and an upper band filter H 1 (z), as shown in the following expressions (1) and (2). From the expressions (1) and (2), it can be determined that the filter H 0 (z) of the lower band must have 5 taps, and it can be determined that H 1 (z) of the upper band must have 3 taps.

Figure 00000002
Figure 00000002

Figure 00000003
Figure 00000003

В соответствии с этими выражениями (1) и (2) коэффициенты компонентов нижней полосы и компонентов верхней полосы могут быть непосредственно рассчитаны. Теперь, используя методику подъема, можно уменьшить количество расчетов для обработки фильтра. Обзор обработки анализа на стороне фильтра с использованием вейвлет преобразования, в случае применения методики подъема для фильтра 5×3, будет представлен со ссылкой на фиг.4.In accordance with these expressions (1) and (2), the coefficients of the components of the lower band and the components of the upper band can be directly calculated. Now, using the lifting technique, you can reduce the number of calculations for filter processing. An overview of the analysis processing on the filter side using the wavelet transform, in the case of applying the lifting technique for a 5 × 3 filter, will be presented with reference to FIG. 4.

На фиг.4, на каждом участке самого верхнего этапа, участке среднего этапа и участке самого нижнего этапа, показаны колонки пикселей входных данных, вывод компонента верхней полосы и вывод компонента нижней полосы. На самом верхнем этапе нет необходимости ограничиваться колонкой пикселей входного изображения, но также может использоваться коэффициент, полученный при предыдущей обработке фильтра. Здесь участок самого верхнего этапа представляет собой колонку пикселей входного изображения, в которой квадратной меткой обозначен пиксель или строка с четным номером (начиная с 0), и круглой меткой обозначен пиксель или строка с нечетным номером.In Fig. 4, in each section of the uppermost stage, the middle stage section and the lower stage section, the columns of pixels of the input data, the output of the upper band component and the output of the lower band component are shown. At the uppermost stage, there is no need to be limited to the column of pixels of the input image, but the coefficient obtained from the previous filter processing can also be used. Here, the portion of the uppermost stage is a column of pixels of the input image in which a square mark indicates a pixel or line with an even number (starting at 0), and a round mark indicates a pixel or line with an odd number.

Вначале, на первом этапе генерируют коэффициент di1 компонента верхней полосы из колонки входных пикселей в соответствии со следующим выражением (3).First, in the first step, a coefficient d i 1 of the upper band component is generated from the column of input pixels in accordance with the following expression (3).

Figure 00000004
Figure 00000004

Затем, в качестве второго этапа генерируют коэффициент si1 компонента нижней полосы из следующего выражения (4), используя пиксель входного изображения с нечетным номером.Then, as a second step, a coefficient s i 1 of the lower band component is generated from the following expression (4) using an odd-numbered input image pixel.

Figure 00000005
Figure 00000005

Используя сторону анализа фильтра, данные входного изображения, таким образом, разделяют на компоненты нижней полосы и компоненты верхней полосы, путем обработки фильтрации.Using the filter analysis side, the input image data is thus divided into lower band components and upper band components by filtering processing.

Обзор обработки на стороне синтеза в фильтре для выполнения инверсного вейвлет преобразования, которое восстанавливает коэффициент, генерированный при вейвлет преобразовании, будет приведен со ссылкой на фиг.5. Фиг.5 соответствует фиг.4, описанной выше, в ней используется фильтр 5×3, и представлен пример применения методики подъема. На фиг.5 участок самого верхнего этапа представляет входной коэффициент, генерируемый с использованием вейвлет преобразования, в котором круглой меткой обозначен коэффициент верхней полосы, и квадратной меткой обозначен коэффициент нижней полосы.An overview of the synthesis side processing in the filter to perform the inverse wavelet transform, which restores the coefficient generated by the wavelet transform, will be described with reference to FIG. Figure 5 corresponds to figure 4 described above, it uses a 5 × 3 filter, and an example of the application of the lifting technique is presented. In Fig. 5, the portion of the uppermost stage represents an input coefficient generated using a wavelet transform, in which a round mark indicates the coefficient of the upper band and a square mark indicates the coefficient of the lower band.

Вначале, на первом этапе, в соответствии со следующим выражением (5), генерируют коэффициент si1 с четным номером (начиная с 0) из входных коэффициентов компонента нижней полосы и компонента верхней полосы.First, at the first stage, in accordance with the following expression (5), a coefficient s i 1 with an even number (starting from 0) is generated from the input coefficients of the lower band component and the upper band component.

Figure 00000006
Figure 00000006

Затем, на втором этапе, в соответствии со следующим выражением (6), генерируют коэффициент di0 с нечетным номером из коэффициента si0 с четным номером, сгенерированным на описанном выше первом этапе, и коэффициент di1 входных компонентов верхней полосы.Then, in a second step, in accordance with the following expression (6), generating a coefficient d i 0 of the odd-numbered coefficient s i 0 with an even number, generated in the first step described above, and the ratio d i 1 input highband components.

Figure 00000007
Figure 00000007

Используя сторону синтеза фильтра, таким образом, при обработке фильтрования синтезируют коэффициент компонентов нижней полосы и компонентов верхней полосы, и выполняют инверсное вейвлет преобразование.Using the filter synthesis side, thus, in the filtering processing, the coefficient of the components of the lower band and the components of the upper band are synthesized, and the inverse wavelet transform is performed.

Далее будет описан способ вейвлет преобразования в соответствии с первым вариантом выполнения настоящего изобретения. На фиг.6 показан пример обработки фильтрования с использованием подъема фильтра 5×3, которая выполнялась до уровня = 2 разделения, со ссылкой на фиг.4. На фиг.6 участок, показанный с левой стороны схемы, как фильтр анализа, представляет собой фильтр для модуля 10 вейвлет преобразования на стороне устройства 1 декодирования изображения. Кроме того, участок, показанный как фильтр синтеза с правой стороны схемы, представляет собой фильтр для модуля инверсного вейвлет преобразования на описанной ниже стороне устройства декодирования изображения.Next, a wavelet transform method in accordance with a first embodiment of the present invention will be described. FIG. 6 shows an example of filtering processing using a 5 × 3 filter lift, which was performed to separation level = 2, with reference to FIG. 4. 6, the portion shown on the left side of the circuit as an analysis filter is a filter for the wavelet transform module 10 on the side of the image decoding apparatus 1. In addition, the portion shown as a synthesis filter on the right side of the circuit is a filter for the inverse wavelet transform module on the side of the image decoding apparatus described below.

Используя приведенное ниже описание в отношении пикселя в левом верхнем углу экрана устройства дисплея или тому подобное, в качестве ведущего пикселя, можно сказать, что, например, эти пиксели сканируют от левого конца до правого конца экрана, для конфигурирования одной строки, и сканирование строк выполняется от верхнего конца экрана в направлении нижнего конца, в результате чего конфигурируют один экран.Using the description below with respect to a pixel in the upper left corner of the screen of a display device or the like as a leading pixel, it can be said that, for example, these pixels are scanned from the left end to the right end of the screen to configure one line, and line scanning is performed from the upper end of the screen towards the lower end, resulting in the configuration of one screen.

На фиг.6 колонка с левого конца представляет данные изображения, установленные так, что они соответствуют строке данных исходного изображения, выровненной в вертикальном направлении. То есть обработка фильтра с модулем 10 вейвлет преобразования выполняется по пикселям на экране, сканируемом вертикально, с использованием вертикального фильтра. Здесь показана обработка фильтра для первой колонки - третьей колонки уровня = 1 разделения с левого конца, и с четвертой по шестую колонки представляют обработку фильтра уровня = 2 разделения. Вторая колонка с левого конца представляет компонент верхней полосы, выводимый на основе изображения исходных данных изображения на левой стороне, и третья колонка с левого конца представляет компонент нижней полосы, выводимый на основе данных исходного изображения и выводимого компонента верхней полосы. Обработка фильтра, в которой уровень = 2 разделения, выполняется как выход обработки фильтра для уровня = 1 разделения, как показано в колонке 4 - колонке 6 с левого конца.6, a column at the left end represents image data set so that it corresponds to a row of data of the original image aligned in the vertical direction. That is, filter processing with the wavelet transform module 10 is performed on pixels on a screen scanned vertically using a vertical filter. This shows the filter processing for the first column - the third column of level = 1 separation from the left end, and the fourth to sixth columns represent the processing of the filter level = 2 separation. The second column from the left end represents the upper band component output based on the image of the original image data on the left side, and the third column from the left end represents the lower band component output based on the original image data and the output upper band component. Filter processing, in which level = 2 separation, is performed as the output of filter processing for level = 1 separation, as shown in column 4 - column 6 from the left end.

При обработке фильтра, в которой уровень = 1 разделения, данные коэффициента компонента верхней полосы рассчитывают на основе исходных пикселей данных изображения в качестве первого этапа обработки фильтра, и данные коэффициента компонента нижней полосы рассчитывают на основе данных коэффициента компонента верхней полосы, рассчитанных при обработке фильтра первого этапа и по исходным пикселям данных изображения. Обработка фильтра для одного примера уровня = 1 разделения показана в первой - третьей колонках с левой стороны (сторона анализа фильтра) на фиг.6. Рассчитанные данные коэффициента компонента верхней полосы сохраняют в модуле 12 буфера реконфигурирования коэффициента, как описано со ссылкой на фиг.1. Кроме того, рассчитанные данные коэффициента компонента нижней полосы сохраняют в модуле 11 буфера промежуточных расчетов.In filter processing in which the separation level = 1, the upper band component coefficient data is calculated based on the original pixels of the image data as the first filter processing step, and the lower band component coefficient data is calculated based on the upper band component coefficient data calculated during the filter processing of the first stage and source pixels of image data. The filter processing for one example of separation level = 1 is shown in the first to third columns on the left side (filter analysis side) in FIG. 6. The calculated coefficient coefficient data of the upper band component are stored in the coefficient reconfiguration buffer module 12, as described with reference to FIG. In addition, the calculated coefficient data of the lower band component are stored in the intermediate calculation buffer module 11.

На фиг.6 модуль 12 буфера реконфигурирования коэффициента представлен как участок, окруженный штрихпунктирной линией, и модуль 11 буфера промежуточных расчетов показан как участок, окруженный пунктирной линией.6, the coefficient reconfiguration buffer module 12 is represented as a portion surrounded by a dash-dot line, and the intermediate calculation buffer module 11 is shown as a portion surrounded by a dashed line.

Обработку фильтра, в которой уровень = 2 разделения, выполняется на основе результата уровня = 1 разделения, содержащегося в модуле 11 буфера промежуточных расчетов. При обработке фильтра с уровнем = 2 разделения данные коэффициента, рассчитанные как коэффициенты компонента нижней полосы при обработке фильтра на уровне = 1 разделения, используют как данные коэффициента, включающие в себя компоненты нижней полосы и компоненты верхней полосы, и при этом выполняют обработку фильтра, аналогичную обработке фильтра для уровня = 1 разделения. Данные коэффициента компонента верхней полосы и данные коэффициента компонента нижней полосы, рассчитанные при обработке фильтра с уровнем = 2 разделения, сохраняют в модуле 12 буфера реконфигурирования коэффициента, описанном со ссылкой на фиг.1.Filter processing, in which the level = 2 separation, is performed based on the result of the level = 1 separation contained in the intermediate calculation buffer module 11. When processing a filter with separation level = 2, coefficient data calculated as coefficients of the lower band component during filter processing at separation level = 1 are used as coefficient data including lower band components and upper band components, and filter processing similar to filter processing for level = 1 separation. The coefficient data of the upper band component and the coefficient data of the lower band component, calculated by processing the filter with separation level = 2, are stored in the coefficient reconfiguration buffer module 12 described with reference to FIG. 1.

В модуле 10 вейвлет преобразования обработка фильтра, как описано выше, выполняется в каждом из горизонтального направления и вертикального направления на экране. Например, вначале выполняют обработку фильтра с уровнем = 1 разделения в горизонтальном направлении, и сгенерированные данные коэффициента с компонентами верхней полосы и компонентами нижней полосы сохраняют в модуле 11 буфера промежуточных расчетов. Затем выполняют обработку фильтра с уровнем = 1 разделения в вертикальном направлении в отношении данных коэффициента, сохраненных в модуле 11 буфера промежуточных расчетов. Используя такую обработку в горизонтальном и вертикальном направлениях, в которой уровень = 1 разделения, формируют четыре области, которые представляют собой область 'НН и область HL, каждая из которых сформирована с помощью данных коэффициента, в результате дальнейшего разделения компонента верхней полосы на компоненты верхней полосы и компоненты нижней полосы, и область LH и область LL, каждая из которых сформирована данными коэффициента, путем дальнейшего разделения компонента нижней полосы на компоненты верхней полосы и компоненты нижней полосы.In the wavelet transform module 10, filter processing as described above is performed in each of the horizontal direction and the vertical direction on the screen. For example, first, filter processing with a separation level = 1 in the horizontal direction is performed, and the generated coefficient data with the upper band components and the lower band components is stored in the intermediate calculation buffer module 11. Then, filter processing is performed with the vertical level = 1 separation in relation to the coefficient data stored in the intermediate calculation buffer module 11. Using such processing in the horizontal and vertical directions, in which the separation level = 1, four regions are formed, which are the 'HH region and the HL region, each of which is formed using coefficient data, as a result of further separation of the upper band component into the upper band components and the components of the lower band, and the region LH and the region LL, each of which is formed by coefficient data, by further dividing the component of the lower band into the components of the upper band and the components of neither her band.

При уровне = 2 разделения обработку фильтра выполняют в отношении данных коэффициента компонентов нижней полосы, сгенерированных с уровнем = 1 разделения, в каждом из горизонтального направления и вертикального направления. То есть при уровне = 2 разделения область LL, сформированную путем разделения на уровне = 1 разделения, дополнительно делят на четыре области, дополнительно формируя таким образом область НН, область HL, область LH и область LL в пределах области LL.At a separation level = 2, filter processing is performed with respect to the coefficient data of the lower band components generated with the separation level = 1 in each of the horizontal direction and the vertical direction. That is, at the separation level = 2, the LL region formed by dividing at the division level = 1 is further divided into four regions, thereby additionally forming the HH region, the HL region, the LH region and the LL region within the LL region.

В первом варианте выполнения обработку фильтра с вейвлет преобразованием пошагово выполняют множество раз, разделяя обработку с приращением по несколько строк в вертикальном направлении экрана. Используя, например, фиг.6 при первоначальной обработке, используемой как обработка, начинаемая с первой строки на экране, выполняют обработку фильтра для семи строк, и обработку, выполняемую, как вторая обработка, начинаемая после этого с восьмой строки, выполняет обработку фильтра с приращением по четыре строки. Количество строк основано на необходимом количестве строк, для генерирования одной строки, соответствующей компонентам самой нижней полосы, после разделения на два компонентов верхней полосы и компонентов нижней полосы.In the first embodiment, filter processing with a wavelet transform is performed step by step many times, dividing the processing in increments of several lines in the vertical direction of the screen. Using, for example, FIG. 6, in the initial processing used as processing starting from the first line on the screen, filter processing for seven lines is performed, and processing performed as the second processing starting thereafter from the eighth line performs filter processing in increments four lines each. The number of rows is based on the required number of rows to generate one row corresponding to the components of the lowest band, after splitting into two components of the upper band and the components of the lower band.

После этого набор строк, необходимый для генерирования одной строки, соответствующей (данные коэффициента, соответствующие одной строке подполосы компонента самой нижней полосы) компонентам нижней полосы, включающим в себя другие подполосы, называется блоком строк (или участком). Здесь строка относится к одному ряду, который соответствует данным пикселя или данным коэффициента, сформированным в пределах изображения или поля, или в пределах каждой подполосы, соответствующей данным изображения перед вейвлет преобразованием. То есть блок строки (участок) относится к группе данных пикселей, которые соответствуют количеству строк, необходимых для генерирования данных коэффициентов, соответствующих одной строке подполосы компонента самой нижней полосы после вейвлет преобразования исходных данных изображения, перед вейвлет преобразованием, или группе данных коэффициента каждой подполосы, полученных путем вейвлет преобразования их группы данных пикселя.After that, the set of rows necessary to generate one row corresponding (coefficient data corresponding to one row of a subband of a component of the lowest band) to components of the lower band including other subbands is called a block of rows (or a section). Here, the row refers to one row that corresponds to pixel data or coefficient data generated within the image or field, or within each subband corresponding to the image data before the wavelet transform. That is, a row block (section) refers to a group of pixel data that corresponds to the number of rows needed to generate coefficient data corresponding to one row of a subband of a component of the lowest band after a wavelet transform of the original image data, before a wavelet transform, or a coefficient data group of each subband, obtained by wavelet transforming their pixel data groups.

В соответствии с фиг.6, коэффициент С5, полученный по результатам обработки фильтра уровня = 2 разделения, рассчитывают на основе коэффициент Са, сохраненного в модуле 11 буфера промежуточных расчетов, и коэффициент С4 сравнивают на основе коэффициента Са, коэффициента Сb и коэффициента Сс, сохраненных в буфере 11 промежуточных расчетов. Кроме того, коэффициент Сс рассчитывают на основе коэффициента С2 и коэффициента С3, сохраненных в модуле 12 буфера реконфигурирования коэффициента, а также на основе данных пикселя в пятой строке. Кроме того, коэффициент С3 рассчитывают на основе данных пикселя пятой строки - седьмой строки. Таким образом, для получения коэффициента С5 компонента нижней полосы с уровнем = 2 разделения необходимы данные пикселей в первой строке - седьмой строке.In accordance with FIG. 6, coefficient C5 obtained from the filter processing of the separation level = 2 filter is calculated based on coefficient C a stored in the intermediate calculation buffer module 11, and coefficient C4 is compared based on coefficient C a , coefficient C b, and coefficient C s stored in the buffer 11 intermediate calculations. In addition, the coefficient C c is calculated based on the coefficient C2 and the coefficient C3 stored in the coefficient reconfiguration buffer module 12, as well as on the basis of the pixel data in the fifth row. In addition, the coefficient C3 is calculated based on the pixel data of the fifth row - the seventh row. Thus, to obtain the coefficient C5 of the component of the lower band with the level = 2 separation, the pixel data in the first row - the seventh row is necessary.

И, наоборот, при обработке фильтра во второй раз и после этого, можно использовать данные коэффициента, уже рассчитанные до предыдущей обработки фильтра и сохраненные в модуле 12 буфера реконфигурирования коэффициента, что уменьшает необходимое количество строк.And, on the contrary, when processing the filter for the second time and after that, it is possible to use coefficient data already calculated before the previous filter processing and stored in the coefficient reconfiguration buffer module 12, which reduces the required number of lines.

Другими словами, в соответствии с фиг.6, для результатов обработки фильтра коэффициентов компонента нижней полосы, полученных на уровне 2 разделения, рассчитывают коэффициент С9, который представляет собой следующий коэффициент, следующий после коэффициента С5, на основе коэффициента С4 и коэффициента С8, а также коэффициента Сс, сохраненных в модуле 11 буфера промежуточных расчетов. Коэффициент С4 уже был рассчитан с использованием описанной выше обработки фильтра, выполняемой первый раз, и сохранен в модуле 12 буфера реконфигурирования коэффициента. Аналогично, коэффициент Сс уже был рассчитан при описанной выше обработке фильтра выполняемой первый раз, и сохранен в модуле 11 буфера промежуточных расчетов. В соответствии с этим при такой обработке фильтра, выполняемой второй раз, выполняется только обработка фильтра, предназначенная для нового расчета коэффициента С8. Такая новая обработка фильтра выполняется с использованием также восьмой строки - одиннадцатой строки.In other words, in accordance with FIG. 6, coefficient C9, which is the next coefficient following the coefficient C5, based on the coefficient C4 and the coefficient C8, and coefficient C c stored in the intermediate calculation buffer module 11. The coefficient C4 has already been calculated using the filter processing described above, performed for the first time, and stored in the coefficient reconfiguration buffer module 12. Similarly, the coefficient C has been calculated at the above-described filter processing performed for the first time, and saved in the module 11, midway calculation buffer. Accordingly, with such filter processing performed a second time, only filter processing is performed for a new calculation of coefficient C8. Such new filter processing is also performed using the eighth line — the eleventh line.

Таким образом, при обработке фильтра, выполняемой второй раз, и после этого можно использовать данные, уже рассчитанные до обработки фильтра, выполненной в предыдущий раз, и сохраненные в модуле 11 буфера промежуточных расчетов и в модуле 12 буфера реконфигурирования коэффициента, что позволяет каждый раз выполнять обработку с приращением, составляющим только четыре строки.Thus, when filter processing is performed a second time, and after that, data already calculated before filter processing performed the previous time and stored in the intermediate calculation buffer module 11 and in the coefficient reconfiguration buffer module 12 can be used, which allows each time processing in increments of only four lines.

Следует отметить, что в случае, когда количество строк на экране не соответствует кодированному количеству строк, строки данных исходного изображения дуплицируют определенным образом, так, чтобы они соответствовали кодированному количеству строк, после чего выполняют обработку фильтрацией.It should be noted that in the case when the number of lines on the screen does not match the encoded number of lines, the data lines of the original image are duplicated in a certain way so that they correspond to the encoded number of lines, after which filtering processing is performed.

Хотя подробное описание будет приведено ниже, в соответствии с настоящим изобретением, декодированное изображение может быть получено с небольшой задержкой, в случае передачи кодированных данных путем выполнения поэтапной обработки фильтрации, с получением только данных коэффициента, соответствующих одной строке компонента самой нижней полосы, разделенной на несколько раз по строкам всего экрана (с приращением по блокам строк).Although a detailed description will be given below, in accordance with the present invention, the decoded image can be obtained with a slight delay, in the case of transmitting encoded data by performing phased filtering processing, to obtain only coefficient data corresponding to one row of a component of the lowest band divided into several times across the lines of the entire screen (in increments of blocks of lines).

Для выполнения вейвлет преобразования, необходимы первый буфер, используемый для выполнения самого вейвлет преобразования, и второй буфер, предназначенный для сохранения коэффициента, генерируемого во время выполнения обработки вплоть до заданного уровня разделения. Первый буфер соответствует модулю 11 буфера промежуточного расчета, и на фиг.6 показан окруженным штрихпунктирной линией. Коэффициент, сохраненный во втором буфере, используется в случае декодирования, и представляет, таким образом, объект обработки энтропийного кодирования на последующем этапе.To perform the wavelet transform, you need the first buffer used to perform the wavelet transform itself, and a second buffer designed to save the coefficient generated during processing up to the specified separation level. The first buffer corresponds to the intermediate calculation buffer module 11, and Fig. 6 is shown surrounded by a dash-dot line. The coefficient stored in the second buffer is used in the case of decoding, and thus represents the object of processing of entropy encoding in the next step.

Обработка в модуле 13 реконфигурирования коэффициента будет описана ниже. Как описано выше, данные коэффициента, рассчитанные в модуле 10 вейвлет преобразования, сохранены в модуле 12 буфера реконфигирирования коэффициента, реконфигурированном с помощью модуля 13 реконфигирирования коэффициента, и считанные, и переданные в модуль 15 энтропийного кодирования.The processing in the coefficient reconfiguration module 13 will be described below. As described above, the coefficient data calculated in the wavelet transform module 10 is stored in the coefficient reconfiguration buffer module 12, reconfigured by the coefficient reconfiguration module 13, and read and transmitted to the entropy encoding module 15.

Как описано выше, при использовании вейвлет преобразования, коэффициенты генерируют от стороны компонента верхней полосы на сторону компонента нижней полосы. В примере по фиг.6, при выполнении в первый раз, коэффициент С1 компонента верхней полосы, коэффициент С2 и коэффициент С3 последовательно генерируют при обработке фильтра с уровнем = 1 разделения, из данных пикселя исходного изображения. Обработка фильтра с уровнем = 2 разделения затем выполняется для данных коэффициента компонента нижней полосы, полученных при обработке фильтра с уровнем = 1 разделения, в результате чего последовательно генерируют коэффициент С4 компонента нижней полосы и коэффициент С5. То есть первый раз данные коэффициента генерируют в порядке - коэффициент С1, коэффициент С2, коэффициент С3, коэффициент С4 и коэффициент С5. Генерирование данных коэффициента всегда выполняется в этом порядке (в порядке от верхней полосы до нижней полосы) на основе принципа вейвлет преобразования.As described above, when using the wavelet transform, coefficients are generated from the component side of the upper band to the component side of the lower band. In the example of FIG. 6, when executed for the first time, the coefficient C1 of the upper band component, coefficient C2, and coefficient C3 are sequentially generated when processing the filter with separation level = 1, from the pixel data of the original image. Filter processing with separation level = 2 is then performed for the lower band component coefficient data obtained by filter processing with separation level = 1, whereby a lower band component coefficient C4 and a coefficient C5 are successively generated. That is, the first time the coefficient data is generated in the order - coefficient C1, coefficient C2, coefficient C3, coefficient C4 and coefficient C5. The generation of coefficient data is always performed in this order (in order from the upper band to the lower band) based on the principle of wavelet transform.

И, наоборот, на стороне декодирования, для немедленного декодирования с малой задержкой, необходимо генерировать и выводить изображение из компонента нижней полосы. Поэтому реконфигурирование данных коэффициента, генерируемых на стороне кодирования со стороны компонента самой нижней полосы до стороны компонента верхней полосы, и передача их на сторону декодирования, являются предпочтительными.Conversely, on the decoding side, for immediate decoding with low delay, it is necessary to generate and output an image from a lower band component. Therefore, reconfiguring the coefficient data generated on the encoding side from the component side of the lowest band to the component side of the upper band and transmitting them to the decoding side are preferred.

Далее приведено подробное описание со ссылкой на фиг.6. С правой стороны на фиг.6 показана сторона фильтра синтеза, выполняющего инверсное вейвлет преобразование. Обработка синтеза, выполняемая в первый раз (обработка инверсного вейвлет преобразования), включающая в себя первую строку данных выходного изображения на стороне декодирования, выполняется с использованием коэффициента С4, коэффициента С5 и коэффициента С1 компонента самой нижней полосы и генерируемых при обработке фильтра, выполняемой в первый раз на стороне кодирования.The following is a detailed description with reference to Fig.6. On the right side of Fig.6 shows the side of the synthesis filter that performs the inverse wavelet transform. Synthesis processing performed for the first time (inverse wavelet transform processing) including the first row of output image data on the decoding side is performed using coefficient C4, coefficient C5 and coefficient C1 of the lowest band component and generated by the filter processing performed in the first times on the coding side.

То есть при выполняемой в первый раз обработке синтеза данные коэффициента передают со стороны кодирования на сторону декодирования в порядке коэффициент С5, коэффициент С4 и коэффициент С1, в результате чего на стороне декодирования выполняют обработку с использованием коэффициента С5 и коэффициента С4, для генерирования коэффициент Cf, используя обработку с уровнем = 2 синтезирования, которая представляет собой обработку синтезирования, соответствующую уровню = 2 разделения, и сохраняют коэффициент Cf в буфере. Обработку синтезирования для коэффициента Cf и коэффициента С1 затем выполняют с обработкой уровня = 1 синтезирования, которая представляет собой обработку синтезирования, соответствующую уровню = 1 разделения, в результате чего выводят первую строку.That is, when the synthesis processing is performed for the first time, the coefficient data is transmitted from the encoding side to the decoding side in the order of coefficient C5, coefficient C4 and coefficient C1, as a result of which, on the decoding side, processing is performed using coefficient C5 and coefficient C4 to generate coefficient Cf, using processing with a synthesis level = 2, which is a synthesis processing corresponding to a separation level = 2, and the coefficient Cf is stored in the buffer. The synthesis processing for the coefficient Cf and coefficient C1 is then performed with the synthesis level = 1 processing, which is a synthesis processing corresponding to the separation level = 1, whereby the first line is output.

Таким образом, при первоначально выполнении обработки синтезирования данные коэффициента, сгенерированные на стороне кодирования, в порядке коэффициент С1, коэффициент С2, коэффициент С3, коэффициент С4 и коэффициент С5, и сохраненные в модуле 12 буфера реконфигурирования коэффициента, реконфигурируют в порядке коэффициент С5, коэффициент С4, коэффициент С1 и т.д., и передают на сторону декодирования.Thus, when the synthesis processing is initially performed, the coefficient data generated on the encoding side in the order coefficient C1, coefficient C2, coefficient C3, coefficient C4 and coefficient C5, and stored in the coefficient reconfiguration buffer module 12, coefficient C5, coefficient C4 are reconfigured , coefficient C1, etc., and transmitted to the decoding side.

Следует отметить, что при использовании стороны фильтра синтеза, показанной с правой стороны на фиг.6, коэффициенты, переданные со стороны кодирования, обозначают с использованием номера коэффициента на стороне кодирования, вставленном в круглых скобках, и они представляют номер строки фильтра синтезирования за пределами круглых скобок. Например, коэффициент С1 (5) обозначает, что на стороне фильтра анализа с левой стороны на фиг.6 он представляет собой коэффициент С5, и на стороне фильтра синтеза он представляет собой первую строку.It should be noted that when using the synthesis filter side shown on the right side in FIG. 6, coefficients transmitted from the encoding side are denoted using the coefficient number on the encoding side inserted in parentheses, and they represent the line number of the synthesis filter outside the round brackets. For example, coefficient C1 (5) indicates that on the analysis filter side on the left side in FIG. 6, it represents coefficient C5, and on the synthesis filter side it represents the first row.

Обработка синтезирования на стороне декодирования с использованием данных коэффициента, генерированных с помощью обработки фильтра, выполняемой второй раз, и после этого на стороне кодирования, может выполняться с использованием данных коэффициента, передаваемых из синтезирования в случае обработки синтезирования предыдущего раза или со стороны кодирования. В примере, показанном на фиг.6, при обработке синтезирования, выполняемой во второй раз на стороне декодирования, которую выполняют с использованием коэффициента С8 компонента нижней полосы и коэффициента С9, генерируемого с использованием обработки фильтра, выполняемой второй раз, на стороне кодирования, дополнительно требуется декодировать коэффициент С2 и коэффициент С3, генерируемые при обработке фильтра, выполняемой первый раз на стороне кодирования, и декодируют со второй по пятую строки.Synthesis processing on the decoding side using coefficient data generated by filter processing performed a second time, and then on the encoding side, can be performed using coefficient data transmitted from the synthesis in the case of synthesizing processing the previous time or on the coding side. In the example shown in FIG. 6, when synthesizing processing is performed a second time on the decoding side, which is performed using the coefficient C8 of the lower band component and coefficient C9 generated using filter processing performed on the second time, on the encoding side, it is further required decode the coefficient C2 and the coefficient C3 generated by the filter processing performed for the first time on the encoding side, and decode from the second to the fifth line.

То есть с помощью обработки синтезирования, выполняемой второй раз, данные коэффициента передают со стороны кодирования на сторону декодирования в порядке коэффициент С9, коэффициент С8, коэффициент С2, коэффициент С3. На стороне декодирования, используя обработку с уровнем = 2 синтезирования, генерируют коэффициент Cg, с использованием коэффициента С8 и коэффициента С9, и коэффициента С4, передаваемых от стороны кодирования при обработке синтезирования, выполняемой первый раз. Коэффициент Сh генерируют, используя содействующий коэффициент Cg и описанный выше коэффициент С4, и коэффициент Cf генерируют с использованием процесса синтезирования, выполняемого в первый раз, и сохраняют в буфере, и коэффициент Ch сохраняют в буфере.That is, using the synthesizing processing performed a second time, the coefficient data is transmitted from the encoding side to the decoding side in the order coefficient C9, coefficient C8, coefficient C2, coefficient C3. On the decoding side, using the processing with the synthesis level = 2, the coefficient C g is generated using the coefficient C8 and the coefficient C9, and the coefficient C4 transmitted from the encoding side in the synthesis processing performed for the first time. The coefficient C h is generated using the facilitating coefficient C g and the coefficient C4 described above, and the coefficient C f is generated using the synthesizing process performed for the first time and stored in the buffer, and the coefficient Ch is stored in the buffer.

При обработке с уровнем = 1 синтезирования, обработку синтезирования выполняют с использованием коэффициента Cg и коэффициента Сh, генерируемых при обработке с уровнем = 2 синтезирования, и сохраненных буфере, коэффициента С2, передаваемого со стороны кодирования (представляется как коэффициент С6 (2) в фильтре синтезирования), и коэффициента С3 (представляется как коэффициент С7 (3) с фильтром синтезирования), и при этом декодируют со второй строки по пятую строку.When processing with synthesis level = 1, synthesis processing is performed using coefficient C g and coefficient C h generated during processing with level = 2 synthesis and stored in buffer, coefficient C2 transmitted from the encoding side (represented as coefficient C6 (2) in synthesis filter), and coefficient C3 (represented as coefficient C7 (3) with a synthesis filter), and at the same time decode from the second line to the fifth line.

Таким образом, при обработке синтеза, выполняемой во второй раз, данные коэффициента, генерируемые на стороне кодирования, как коэффициент С2, коэффициент С3 (коэффициент С4, коэффициент С5), коэффициент С6, коэффициент С7, коэффициент С8, коэффициент С9, реконфигурируют и передают на сторону декодирования в порядке коэффициент С9, коэффициент С8, коэффициент С2, коэффициент С3 и т.д.Thus, in the synthesis processing performed for the second time, coefficient data generated on the encoding side, such as coefficient C2, coefficient C3 (coefficient C4, coefficient C5), coefficient C6, coefficient C7, coefficient C8, coefficient C9, is reconfigured and transmitted to decoding side in order coefficient C9, coefficient C8, coefficient C2, coefficient C3, etc.

Таким образом, при использовании обработки третьего синтезирования и после нее так же, аналогично, данные коэффициента, сохраненные в модуле 12 буфера реконфигурирования, реконфигурируют определенным образом и передают в модуль декодирования, в котором строки декодируют с приращениями четыре строки.Thus, when using the third synthesis processing and after it, likewise, similarly, the coefficient data stored in the reconfiguration buffer module 12 is reconfigured in a certain way and transmitted to the decoding module, in which the lines are decoded in increments of four lines.

Следует отметить, что при обработке синтезирования на стороне декодирования, соответствующей обработке фильтра, включающей строки с нижнего конца экрана на стороне кодирования, все данные коэффициента, сгенерированные до этого момента и сохраненные в буфере, должны быть выведены, что, таким образом, увеличивает количество выводимых строк. В соответствии с примером, показанным на фиг.6, в последний раз были выведены восемь строк.It should be noted that during the synthesis processing on the decoding side corresponding to the filter processing including the lines from the lower end of the screen on the encoding side, all coefficient data generated up to this point and stored in the buffer should be output, which, therefore, increases the number of output lines. According to the example shown in FIG. 6, eight lines were last displayed.

Следует отметить, что обработка реконфигурирования данных коэффициента модулем 13 реконфигурирования коэффициента устанавливает адреса считывания в случае считывания данных коэффициента, сохраненных в модуле 12 буфера реконфигурирования коэффициента, например, в заданном порядке.It should be noted that the coefficient reconfiguration processing by the coefficient reconfiguration module 13 sets the read addresses in the case of reading the coefficient data stored in the coefficient reconfiguration buffer module 12, for example, in a predetermined order.

Указанная выше обработка будет подробно описана со ссылкой на фиг.7. На фиг.7 показан пример выполнения обработки фильтра с помощью вейвлет преобразования вплоть до уровня = 2 разделения, в которой используется фильтр 5×3. С модулем 10 вейвлет преобразования, в качестве одного примера, показанного в позиции А на фиг.7, выполняют обработку фильтра в первый раз для первой строки - седьмой строки данных входного изображения в каждом из горизонтального и вертикального направлений (In - 1 в позиции А на фиг.7).The above processing will be described in detail with reference to Fig.7. Figure 7 shows an example of filter processing using wavelet transform up to level = 2 separation, which uses a 5 × 3 filter. With the wavelet transform module 10, as one example, shown at position A in FIG. 7, filter processing is performed for the first time for the first row — the seventh row of input image data in each of the horizontal and vertical directions (In - 1 at position A on Fig.7).

При обработке фильтра, выполняемой в первый раз, при уровне = 1 разделения, генерируют данные коэффициента для трех строк, соответствующие коэффициенту С1, коэффициенту С2 и коэффициенту С3, и в качестве одного примера, приведенного в позиции В на фиг.7, каждый из них располагают в области НН, области HL и области LH, сформированных с уровнем = 1 разделения (WT-1 в позиции В на фиг.7).When filter processing is performed for the first time, at separation level = 1, coefficient data for three rows corresponding to coefficient C1, coefficient C2 and coefficient C3 is generated, and as one example, shown in position B in FIG. 7, each of them positioned in the HH region, the HL region, and the LH region formed with a separation level = 1 (WT-1 at position B in FIG. 7).

Кроме того, область LL, сформированную с уровнем = 1 разделения, дополнительно разделяют на четыре части при выполнении обработки фильтра в горизонтальном и вертикальном направлениях с уровнем = 2 разделения. С коэффициентом С5 и коэффициентом С4, сгенерированными с уровнем = 2 разделения, одну строку располагают в области LL по коэффициенту С5 в области LL с уровнем = 1 разделения, и одну строку располагают в каждой области НИ, области HL и области LH, по коэффициенту С4.In addition, the LL region formed with the separation level = 1 is further divided into four parts when performing filter processing in horizontal and vertical directions with the separation level = 2. With coefficient C5 and coefficient C4 generated with division level = 2, one row is located in the LL region by coefficient C5 in the LL region with level = 1 division, and one row is located in each NI region, HL region and LH region, by C4 coefficient .

При использовании обработки фильтра, выполняемой во второй раз и далее модулем 10 вейвлет преобразования, обработку фильтра выполняют с приращением по четыре строки (IN - 2..., как показано в позиции А на фиг.7), данные коэффициента генерируют с приращением две строки с уровнем = 1 разделения, и данные коэффициента генерируют с приращениями одна строка с уровнем = 2 разделения.When using filter processing performed for the second time and then by the wavelet transform module 10, the filter processing is performed in four-line increments (IN - 2 ..., as shown in position A in Fig. 7), the coefficient data is incremented in two lines with level = 1 division, and coefficient data generates in increments one row with level = 2 divisions.

В соответствии с примером второго раза, показанным на фиг.6, данные коэффициента, соответствующие двум строкам для коэффициента С6 и коэффициента С7, генерируют при обработке фильтра на уровне = 1 разделения, и в качестве одного примера, показанного в позиции В на фиг.7, и располагают так, что они следуют после данных коэффициента, которые были сгенерированы при обработке фильтра, выполненной первый раз в области НН, области HL и области LH, сформированных с уровнем = 1 разделения. В области LL с уровнем = 1 разделения коэффициент С9, соответствующий одной строке, сгенерированной при обработке фильтра с уровнем = 2 разделения, располагается в области LL, и коэффициент С8, соответствующий одной строке, располагается в каждой из области НН, области HL и области LH.According to a second time example shown in FIG. 6, coefficient data corresponding to two rows for coefficient C6 and coefficient C7 is generated by filter processing at separation level = 1, and as one example, shown at position B in FIG. 7 , and positioned so that they follow the coefficient data that were generated by filter processing performed for the first time in the HH region, the HL region, and the LH region formed with a separation level = 1. In the LL region with the separation level = 1, the coefficient C9 corresponding to one row generated during filter processing with the division level = 2 is located in the LL region, and the coefficient C8 corresponding to one row is located in each of the HH region, the HL region, and the LH region .

В случае декодирования данных, подвергавшихся вейвлет преобразованию, как показано в позиции В на фиг.7, в качестве одного примера, показанного в позиции С на фиг.7, выводится первая строка при обработке синтезирования, выполняемой в первый раз на стороне декодирования (Out-1 в позиции С на фиг.7), которая соответствует обработке фильтра, выполняемой первый раз с использованием первой строки - седьмой строки на стороне кодирования. После этого четыре строки одновременно выводят на стороне декодирования (Out-2 в позиции С на фиг.7), которая соответствует обработке фильтра второго раза, до тех пор, пока не наступит последний раз на стороне кодирования. Восемь строк выводят на стороне декодирования, которая соответствует обработке фильтра, для последнего раза на стороне кодирования.In the case of decoding data subjected to wavelet transform, as shown in position B in Fig. 7, as one example, shown in position C in Fig. 7, the first line is output in the synthesis processing performed for the first time on the decoding side (Out- 1 at position C in Fig. 7), which corresponds to the filter processing performed for the first time using the first line, the seventh line on the encoding side. After that, four lines are simultaneously output on the decoding side (Out-2 at position C in Fig. 7), which corresponds to the filter processing a second time, until the last time on the encoding side. Eight lines are output on the decoding side, which corresponds to the filter processing, for the last time on the encoding side.

Данные коэффициента, генерируемые модулем 10 вейвлет преобразования со стороны компонента верхней полосы на сторону компонента нижней полосы, последовательно сохраняют в модуле 12 буфера реконфигурирования коэффициента. В модуле 13 реконфигурирования коэффициента, когда данные коэффициента накапливаются в модуле 12 буфера реконфигурирования коэффициента, до тех пор, пока не станет возможным выполнение описанного выше реконфигурирования коэффициента, данные коэффициента реконфигурируют в необходимом порядке и считывают из модуля 12 буфера реконфигурирования коэффициента. Считанные данные коэффициента последовательно передают в модуль 15 энтропийного кодирования.The coefficient data generated by the wavelet transform module 10 from the component side of the upper band to the component side of the lower band is sequentially stored in the module 12 of the coefficient reconfiguration buffer. In the coefficient reconfiguration module 13, when the coefficient data is accumulated in the coefficient reconfiguration buffer module 12, until it becomes possible to perform the coefficient reconfiguration described above, the coefficient data is reconfigured in the necessary order and read from the coefficient reconfiguration buffer module 12. The read coefficient data is sequentially transmitted to the entropy coding unit 15.

Модуль 15 энтропийного кодирования управляет операцией кодирования так, чтобы скорость следования битов выходных данных стала равной целевому значению скорости следования битов на основе сигнала управления, передаваемого из модуля 14 управления скоростью следования, и выполняет энтропийное кодирование в отношении переданных данных коэффициента. Кодированные данные, после энтропийного кодирования, передают на сторону декодирования. В качестве способа кодирования можно рассмотреть известную методику, такую как кодирование Хаффмана, или арифметическое кодирование. Конечно, такой способ не должен ограничиваться этими подходами, и можно использовать любой другой способ кодирования, который позволяет выполнять обработку инверсного кодирования.Entropy encoding unit 15 controls the encoding operation so that the bit rate of the output data becomes equal to the target bit rate based on the control signal transmitted from the rate control unit 14, and performs entropy encoding with respect to the transmitted coefficient data. The encoded data, after entropy encoding, is transmitted to the decoding side. As a coding method, a well-known technique such as Huffman coding or arithmetic coding can be considered. Of course, such a method should not be limited to these approaches, and any other coding method that allows inverse coding processing can be used.

Следует отметить, что если модуль 15 энтропийного кодирования вначале выполняет квантование в отношении данных коэффициента, считываемых из модуля 13 реконфигурирования коэффициента, и выполняет обработку кодирования источника информации, такую как кодирование Хаффмана, или арифметическое кодирование в отношении полученного коэффициента квантования, можно ожидать дополнительных преимуществ в связи с улучшением сжатия. В качестве способа такого квантования можно использовать любой способ и, например, общеиспользуемое средство, то есть средство разделения данных для W коэффициента на размер А шага квантования так, как показано в следующем выражении (7).It should be noted that if the entropy coding unit 15 first quantizes with respect to the coefficient data read from the coefficient reconfiguration unit 13 and performs encoding processing of the information source, such as Huffman coding, or arithmetic coding with respect to the obtained quantization coefficient, additional advantages can be expected in due to improved compression. As a method of such quantization, any method and, for example, a commonly used tool, that is, a means of dividing data for the W coefficient by the size A of the quantization step, as shown in the following expression (7), can be used.

Figure 00000008
Figure 00000008

Как описано со ссылкой на фиг.6 и фиг.7, в первом варианте выполнения в соответствии с настоящим изобретением, модуль 10 вейвлет преобразования выполняет обработку вейвлет преобразования с последовательным приращением множества строк (с приращением блоков строк) данных изображения. Кодированные данные, кодированные с помощью модуля энтропийного 15 кодирования, выводят с последовательными приращениями в виде таких блоков строк. То есть в случае выполнения обработки, вплоть до уровня = 2 разделения, с использованием фильтра 5×3, для вывода одного экрана данных, вывод получают как одну строку для первого раза, четыре строки для каждого второго раза и далее до последнего раза, и восемь строк выводят в последний раз.As described with reference to FIG. 6 and FIG. 7, in a first embodiment in accordance with the present invention, the wavelet transform module 10 performs wavelet transform processing with sequentially incrementing a plurality of rows (incrementing row blocks) of image data. The encoded data encoded by the entropy encoding module 15 is output in sequential increments in the form of such blocks of strings. That is, in the case of processing, up to level = 2 separation, using a 5 × 3 filter to display one data screen, the output is received as one line for the first time, four lines for every second time and then to the last time, and eight lines are displayed for the last time.

Следует отметить, что в случае пополнения для данных коэффициента после реконфигурирования с использованием модуля 13 реконфигурирования коэффициента энтропийного кодирования, например, в случае выполнения энтропийного кодирования для строки первого коэффициента С5 с обработкой фильтра, выполняемой в первый раз, как показано, например, на фиг.6, отсутствует историческая строка, то есть отсутствует строка, уже генерированная данными коэффициента. В соответствии с этим, в таком случае, только одну строку подвергают энтропийному кодированию. И, наоборот, в случае кодирования строки коэффициента С1, строки с коэффициентом С5 и коэффициентом С4 становятся историческими строками. Такое множество строк, приближающихся друг к другу, можно рассмотреть как строки, которые можно конфигурировать, используя аналогичные данные, таким образом, выполнение энтропийного кодирования одновременно для множества строк является эффективным.It should be noted that in the case of replenishment for coefficient data after reconfiguration using module 13 for reconfiguring the entropy coding coefficient, for example, in the case of performing entropy coding for the row of the first coefficient C5 with filter processing performed for the first time, as shown, for example, in FIG. 6, there is no historical row, i.e. there is no row already generated by the coefficient data. Accordingly, in this case, only one line is subjected to entropy encoding. Conversely, in the case of encoding a string of coefficient C1, lines with coefficient C5 and coefficient C4 become historical rows. Such a plurality of strings approaching each other can be considered as strings that can be configured using similar data, thus performing entropy coding for a plurality of strings simultaneously is efficient.

Кроме того, как описано выше, в отношении модуля 10 вейвлет преобразования, описан пример выполнения обработки фильтра с вейвлет преобразованием, с использованием фильтра 5×3, но не должен ограничиваться этим примером. Например, при использовании модуля 10 вейвлет преобразования можно использовать фильтр с большим количеством отводов, такой как, например, фильтр 9×7. В этом случае, если количество отводов больше, количество строк накапливаемых фильтром также увеличивается, в результате чего время задержки от ввода данных изображения до вывода кодированных данных становится большим.In addition, as described above, with respect to the wavelet transform module 10, an example of performing filter processing with a wavelet transform using a 5 × 3 filter is described, but should not be limited to this example. For example, when using module 10 of the wavelet transform, you can use a filter with a large number of taps, such as, for example, a 9 × 7 filter. In this case, if the number of taps is greater, the number of lines accumulated by the filter also increases, as a result of which the delay time from inputting image data to outputting encoded data becomes large.

Кроме того, в приведенном выше описании уровень разделения вейвлет преобразования был описан как уровень = 2 разделения для целей описания, но не должен ограничиваться этим, и уровни разделения могут быть дополнительно увеличены. Чем сильнее уровень разделения будет увеличен, тем лучшую и большую степень сжатия можно реализовать. Например, в общем случае, при использовании вейвлет преобразования, обработка фильтра повторяется вплоть до уровня = 4 разделения. Следует отметить, что по мере увеличения уровня разделения время задержки также существенно увеличивается.In addition, in the above description, the separation level of the wavelet transform has been described as separation level = 2 for the purpose of description, but should not be limited to this, and separation levels can be further increased. The stronger the separation level will be increased, the better and greater compression ratio can be realized. For example, in the general case, when using wavelet transform, filter processing is repeated up to level = 4 separation. It should be noted that as the separation level increases, the delay time also increases significantly.

В соответствии с этим, в случае применения первого варианта выполнения настоящего изобретения в действительной системе, желательно определять количество отводов фильтра или уровня разделения с учетом времени задержки или качества изображения декодированного изображения, требуемого в системе. Количество отводов фильтра или уровень разделения не обязательно должны иметь фиксированное значение, но их также можно выбирать соответствующим образом.Accordingly, in the case of applying the first embodiment of the present invention in an actual system, it is desirable to determine the number of filter taps or the separation level taking into account the delay time or image quality of the decoded image required in the system. The number of filter taps or the separation level need not have a fixed value, but they can also be selected accordingly.

Далее, со ссылкой на блок-схему последовательности операций, представленную на фиг.8, будет описан конкретный пример потока обработки для всего процесса кодирования в соответствии с устройством 1 кодирования изображения, такого, как описано выше.Next, with reference to the flowchart of FIG. 8, a specific example of a processing stream for the entire encoding process in accordance with the image encoding apparatus 1, such as described above, will be described.

После начала обработки кодирования, на этапе S1, модуль 10 вейвлет преобразования устанавливает номер А блока строк, предназначенного для обработки в исходную установку. В нормальных случаях номер А устанавливается равным "1". После окончания установки на этапе S2 модуль 10 вейвлет преобразования получает данные изображения для количества строк, необходимого (то есть одного блока строк) для генерирования одной строки А-й строки из верхней части подполосы самой нижней полосы, на этапе S3 выполняет обработку фильтра вертикального анализа для выполнения фильтрования анализа так, чтобы данные изображения были выстроены в вертикальном направлении экрана, как его данные изображения, и на этапе S4 выполняет обработку фильтрования горизонтального анализа для выполнения фильтрования анализа в отношении данных изображения, выстроенных в горизонтальном направлении экрана.After the coding processing is started, in step S1, the wavelet transform module 10 sets the number A of the string block to be processed in the initial setting. In normal cases, number A is set to "1". After the installation is completed, in step S2, the wavelet transform module 10 obtains image data for the number of rows needed (i.e., one block of rows) to generate one row of the Ath row from the top of the subband of the lowest band, in step S3, the vertical analysis filter is processed for performing analysis filtering so that the image data is aligned in the vertical direction of the screen as its image data, and in step S4, the horizontal analysis filtering processing is performed to perform filtration analysis with respect to the image data arrayed in the horizontal direction of the screen.

На этапе S5 модуль 10 вейвлет преобразования определяет, была ли выполнена обработка фильтрования анализа до последнего уровня, и в случае определения, что уровень разделения не достиг последнего уровня, обработку возвращают на этап S3, на котором обработку фильтрования анализа на этапе S3 и этапе S4 повторяют для текущего уровня разделения.In step S5, the wavelet transform module 10 determines whether analysis filtering processing has been performed to the last level, and if it is determined that the separation level has not reached the last level, the processing returns to step S3, in which the analysis filtering processing in step S3 and step S4 are repeated for the current split level.

В случае, когда на этапе S5 определяют, что обработка фильтрования анализа была выполнена до последнего уровня, модуль 10 вейвлет преобразования переводит обработку на этап S6.In the case where it is determined in step S5 that the analysis filtering processing has been performed to the last level, the wavelet transform unit 10 transfers the processing to step S6.

На этапе S6 модуль 13 реконфигурирования коэффициента реконфигурирует коэффициент блока А строки (блок А-й строки формирует верхнюю часть изображения (поля, в случае способа чересстрочного представления)) в порядке от нижней полосы до верхней полосы. На этапе S7 модуль 15 энтропийного кодирования подвергает коэффициент энтропийному кодированию с построчным приращением. После окончания энтропийного кодирования на этапе S8 модуль 15 энтропийного кодирования выполняет внешнее преобразование кодированных данных блока А строки.In step S6, the coefficient reconfiguration module 13 reconfigures the coefficient of the row block A (the block of the A-th line forms the upper part of the image (fields, in the case of the interlaced representation method)) in the order from the lower band to the upper band. In step S7, the entropy encoding unit 15 subjects the coefficient to entropy coding in incremental increments. After the entropy encoding is completed in step S8, the entropy encoding unit 15 performs an external conversion of the encoded data of the row block A.

Модуль 10 вейвлет преобразования выполняет последовательное приращение значения для номера А на "единицу" на этапе S9, подвергая обработке следующий блок строк, и на этапе S10 определяет, имеются или нет необработанные входные строки изображения для данного изображения (поля, в случае способа чересстрочного представления), предназначенные для обработки. В случае, если будет определено, что существуют необработанные входные строки изображения, обработка возвращается на этап S2, и после этого обработка повторяется для нового блока строк, предназначенных для обработки.The wavelet transform module 10 sequentially increments the value for number A by “unit” in step S9, processing the next block of lines, and in step S10 determines whether or not raw input image lines for the given image exist (fields, in the case of the interlaced representation method) intended for processing. If it is determined that there are unprocessed input image lines, the processing returns to step S2, and then the processing is repeated for a new block of lines intended for processing.

Как описано выше, обработка на этапах S2-S10 многократно выполняется для кодирования каждого блока строк. В случае определения на этапе S10, что больше нет необработанных входных строк изображения, модуль 10 вейвлет преобразования заканчивает обработку кодирования для этого изображения. Новый процесс кодирования начинается для следующего изображения.As described above, the processing in steps S2-S10 is repeatedly performed to encode each block of strings. If it is determined in step S10 that there are no more raw image input lines, the wavelet transform module 10 ends the encoding processing for this image. A new encoding process begins for the next image.

В случае обычного способа вейвлет преобразование, вначале выполняется обработка фильтрования горизонтального анализа для всего изображения (поля, в случае способа чересстрочного представления), затем выполняют обработку фильтрования вертикального анализа для всего изображении. Аналогично, обработку фильтрования горизонтального анализа и обработку фильтрования вертикального анализа затем последовательно выполняют для всего полученного компонента нижней полосы. Как указано выше, обработку фильтрования анализа повторяют рекурсивно, до тех пор, пока уровень разделения не достигнет конечного уровня. В соответствии с этим, результаты каждого процесса фильтрования анализа должны содержаться в буфере, но в таком случае требуется, чтобы буфер содержал результаты фильтрования всего изображения (поля, в случае способа чересстрочного представления) или всего компонента нижней полосы на уровне разделения в этот момент времени, что требует большой емкости запоминающего устройства (количество содержащихся данных очень велико).In the case of the conventional wavelet transform method, the horizontal analysis filtering processing for the entire image is first performed (fields, in the case of the interlaced representation method), then the vertical analysis filtering processing for the entire image is performed. Similarly, the horizontal analysis filtering processing and the vertical analysis filtering processing are then sequentially performed for the entire lower band component obtained. As indicated above, the analysis filtering processing is repeated recursively until the separation level reaches the final level. In accordance with this, the results of each analysis filtering process should be contained in a buffer, but in this case, it is required that the buffer contains the results of filtering the entire image (field, in the case of interlaced representation) or the entire component of the lower band at the separation level at this point in time, which requires a large capacity storage device (the amount of data contained is very large).

Кроме того, в этом случае, если вейвлет преобразование для всего изображения (поля, в случае способа чересстрочного представления) не заканчивается, на следующих этапах нельзя выполнять реконфигурирование коэффициента или энтропийное кодирование, что, таким образом, значительно увеличивает задержку по времени.In addition, in this case, if the wavelet transform for the entire image (field, in the case of the method of interlacing) does not end, it is not possible to reconfigure the coefficient or entropy coding in the next steps, which thus significantly increases the time delay.

И, наоборот, в случае модуля 10 вейвлет преобразования устройства 1 кодирования изображения, обработку фильтрования вертикального анализа и обработку фильтрования горизонтального анализа постоянно выполняют с приращением в виде блоков строк до последнего уровня, как описано выше, так, что по сравнению с обычным способом, количество данных, которое должно содержаться (размещено в буфере) одновременно (в течение одного периода времени), будет небольшим, что существенно уменьшает емкость запоминающего устройства, выделяемую для буфера. Кроме того, путем выполнения обработки фильтрования анализа до последнего уровня последующие этапы для обработки реконфигурирования коэффициента или обработки энтропийного кодирования также могут выполняться (то есть реконфигурирование коэффициента или энтропийное кодирование могут выполняться с приращением по блокам строк). В соответствии с этим время задержки может быть значительно уменьшено по сравнению с обычным способом.Conversely, in the case of the module 10, the wavelet transform of the image encoding apparatus 1, the vertical analysis filtering processing and the horizontal analysis filtering processing are constantly performed in increments in the form of line blocks to the last level, as described above, so that in comparison with the usual method, the number the data that should be contained (placed in the buffer) at the same time (for one period of time) will be small, which significantly reduces the storage capacity allocated to the buffer. In addition, by performing analysis filtering processing to the last level, subsequent steps for processing coefficient reconfiguration or entropy coding processing can also be performed (i.e., coefficient reconfiguration or entropy coding can be performed incrementally in line blocks). Accordingly, the delay time can be significantly reduced compared to the conventional method.

На фиг.9 показан один пример конфигурации устройства декодирования изображения, соответствующего устройству 1 кодирования изображения, показанному на фиг.1. Кодированные данные, выводимые из модуля 15 энтропийного кодирования (выход кодированных данных на фиг.1) устройства 1 кодирования изображения, показанного на фиг.1, передают в модуль 21 энтропийного декодирования устройства 20 декодирования изображения по фиг.9 (вход кодированных данных на фиг.9), выполняют декодирование в отношении энтропийного кодирования и получают данные коэффициента. Данные коэффициента сохраняют в модуле 22 буфера коэффициента. В модуле 23 инверсного вейвлет преобразования используют данные коэффициента, сохраненные в модуле 22 буфера коэффициента, для выполнения обработки фильтра синтезирования с использованием фильтра синтезирования, как описано, например, со ссылкой на фиг.5 и фиг.6, и снова сохраняют результаты обработки фильтра синтезирования в модуле 22 буфера коэффициента. Модуль 23 инверсного вейвлет преобразования повторяет эту обработку в соответствии с уровнем разделения для получения декодированных данных изображения (выходных данных изображения).FIG. 9 shows one example of a configuration of an image decoding apparatus corresponding to the image encoding apparatus 1 shown in FIG. 1. The encoded data output from the entropy encoding unit 15 (encoded data output in FIG. 1) of the image encoding apparatus 1 shown in FIG. 1 is transmitted to the entropy decoding unit 21 of the image decoding apparatus 20 in FIG. 9 (the encoded data input in FIG. 9), decoding is performed with respect to entropy coding, and coefficient data is obtained. The coefficient data is stored in module 22 of the coefficient buffer. In the inverse wavelet transform module 23, coefficient data stored in the coefficient buffer module 22 is used to perform synthesis filter processing using the synthesis filter, as described, for example, with reference to FIG. 5 and FIG. 6, and again the results of the synthesis filter processing are stored in module 22 of the coefficient buffer. The inverse wavelet transform module 23 repeats this processing in accordance with the separation level to obtain decoded image data (output image data).

Далее, со ссылкой на блок-схему последовательности операций, показанную на фиг.10, будет описан конкретный пример потока обработки всего процесса декодирования, выполняемого устройством 20 декодирования изображения, такого как представлено выше.Next, with reference to the flowchart shown in FIG. 10, a specific example of the processing flow of the entire decoding process performed by the image decoding apparatus 20, such as described above, will be described.

После начала процесса декодирования на этапе S31 модуль 21 энтропийного декодирования получает кодированные данные, и на этапе S32 подвергает кодированные данные энтропийному декодированию с приращением по строкам. На этапе S33 модуль 22 буфера коэффициента содержит коэффициенты, декодированные и полученные таким образом. На этапе S34 модуль 23 инверсного вейвлет преобразования определяет, был ли накоплен в модуле 22 буфера коэффициента коэффициент, соответствующий одному блоку строк, и если определяется, что он не был накоплен, обработка возвращается на этап S31, после чего выполняется обработка, и модуль 23 инверсного вейвлет преобразования ожидает до тех пор, пока не накопится коэффициент, соответствующий одному блоку строк модуле 22 буфера коэффициента.After the decoding process has been started in step S31, the entropy decoding unit 21 obtains encoded data, and in step S32, the encoded data is entropy decoded in row increments. In step S33, the coefficient buffer module 22 contains coefficients decoded and thus obtained. In step S34, the inverse wavelet transform module 23 determines whether a coefficient corresponding to one block of rows has been accumulated in the coefficient buffer module 22, and if it is determined that it has not been accumulated, the processing returns to step S31, after which the processing is performed and the inverse module 23 the wavelet of the conversion waits until a coefficient corresponding to one block of lines is accumulated by the module 22 of the coefficient buffer.

В случае, если на этапе S34 будет определено, что коэффициент, соответствующий одному блоку строк, был накоплен в модуле 22 буфера коэффициента, модуль 23 инверсного вейвлет преобразования переводит обработку на этап S35 и считывает коэффициент, соответствующий одному блоку строк, который содержится в модуле 22 буфера коэффициента.If it is determined in step S34 that the coefficient corresponding to one block of rows has been accumulated in the coefficient buffer module 22, the inverse wavelet transform module 23 transfers the processing to step S35 and reads the coefficient corresponding to one row block that is contained in the module 22 buffer coefficient.

Модуль 23 инверсного вейвлет преобразования подвергает считанный коэффициент обработке фильтрования вертикального синтезирования, при которой выполняется обработка фильтрования синтезирования относительно коэффициентов, выстроенных в вертикальном направлении экрана, и на этапе S37 выполняет обработку фильтрования горизонтального синтезирования, при которой выполняется обработка фильтрования синтезирования в отношении коэффициентов, выстроенных в горизонтальном направлении экрана, и на этапе S38 определяет, была ли закончена обработка фильтрования синтезирования для уровня 1 (уровень, на котором значение уровня разделения равно "единице"), то есть определяет, было ли выполнено инверсное преобразование для состояния перед вейвлет преобразованием, и если будет определено, что уровень 1 не был достигнут, обработка возвращается на этап S36, в результате чего обработка фильтрования на этапе S36 и этапе S37 повторяется.The inverse wavelet transform module 23 exposes the read coefficient to the vertical synthesis filtering processing, in which the synthesis filtering processing is performed with respect to the coefficients aligned in the vertical direction of the screen, and in step S37, the horizontal synthesis filtering processing is performed, in which the synthesis filtering processing is performed with respect to the coefficients arranged in the horizontal direction of the screen, and in step S38 determines whether processing has been completed the synthesis filtering filter for level 1 (the level at which the separation level value is “one”), that is, it determines whether the inverse transformation was performed for the state before the wavelet transformation, and if it is determined that level 1 has not been reached, the processing returns to step S36, whereby the filtering processing in step S36 and step S37 is repeated.

На этапе S38, если будет определено, что обработка инверсного преобразования закончилась до уровня 1, модуль 23 инверсного вейвлет преобразования переводит обработку на этап S39 и выводит данные изображения, полученные при обработке инверсного преобразования.In step S38, if it is determined that the inverse transform processing has ended to level 1, the inverse wavelet transform module 23 transfers the processing to step S39 and outputs image data obtained in the inverse transform processing.

На этапе S40 модуль 21 энтропийного декодирования определяет, следует или нет закончить обработку декодирования, и в случае определения, что ввод кодированных данных происходит с перерывами и что обработка декодирования не должна быть закончена, обработка возвращается на этап S31, и обработка после этого повторяется. Кроме того, на этапе S40, в случае, когда ввод кодированных данных заканчивается и т.д., так, что обработка декодирования заканчивается, модуль 21 энтропийного декодирования заканчивает обработку декодирования.In step S40, the entropy decoding unit 21 determines whether or not to complete the decoding processing, and if it is determined that the input of the encoded data is intermittent and that the decoding processing should not be completed, the processing returns to step S31, and the processing is then repeated. In addition, in step S40, in the case where the input of the encoded data ends, etc., so that the decoding processing ends, the entropy decoding unit 21 ends the decoding processing.

В случае использования обычного способа инверсного вейвлет преобразования вначале выполняют фильтрацию горизонтального синтезирования для всех коэффициентов на обрабатываемом уровне разделения в горизонтальном направлении экрана, и затем выполняют вертикальное фильтрование синтезирования в вертикальном направлении экрана. То есть каждый раз, когда выполняют обработку фильтрования синтезирования, результат обработки фильтрования синтезирования требуется содержать в буфере, но в таком случае в буфере требуется содержать результаты фильтрования синтезирования для уровня разделения в этот момент времени и также все коэффициенты на следующем уровне разделения, что требует большой емкости запоминающего устройства (количество данных, которые должны содержаться, велико).In the case of using the conventional inverse wavelet transform method, first, horizontal synthesis filtering is performed for all coefficients at the processed separation level in the horizontal direction of the screen, and then vertical synthesis filtering is performed in the vertical direction of the screen. That is, each time the synthesis filtering processing is performed, the result of the synthesis filtering processing needs to be contained in the buffer, but in this case, the synthesis filtering results for the separation level at this point in time and also all the coefficients at the next separation level are required in the buffer, which requires a large storage capacity (the amount of data to be contained is large).

Кроме того, в этом случае вывод данных изображения не выполняется до тех пор, пока не будет выполнено все инверсное вейвлет преобразование в пределах изображения (поля, в случае способа чересстрочного представления), поэтому время задержки от входа до выхода значительно увеличивается.In addition, in this case, the output of image data is not performed until all the inverse wavelet transforms are performed within the image (fields, in the case of interlaced representation), so the delay time from input to output is significantly increased.

И, наоборот, в случае модуля 23 инверсного вейвлет преобразования такого устройства 20 декодирования изображения, как описано выше, обработка фильтрования вертикального синтезирования и обработка фильтрования горизонтального синтезирования выполняются постоянно с приращением по блокам строк, вплоть до уровня 1, в результате чего, по сравнению с обычным способом, количество данных, которое требуется размещать в буфере одновременно (в течение одного периода времени), будет мало, что, таким образом, способствует уменьшению объема запоминающего устройства, которое требуется выделять для буфера. Кроме того, при выполнении обработки фильтрования синтезирования (обработки инверсного вейвлет преобразования), вплоть до уровня 1, данные изображения могут выводиться последовательно, пока не будут получены все данные изображения в пределах изображения (с приращением в виде блоков строк), таким образом, по сравнению с обычным способом, время задержки можно значительно уменьшить.Conversely, in the case of the inverse wavelet transform module 23 of such an image decoding apparatus 20, as described above, the vertical synthesis filtering processing and the horizontal synthesis filtering processing are performed continuously in increments of line blocks, up to level 1, resulting in, in comparison with in the usual way, the amount of data that needs to be placed in the buffer at the same time (for one period of time) will be small, which, thus, helps to reduce the amount of memory its device that you want to allocate for the buffer. In addition, when performing synthesis filtering processing (inverse wavelet transform processing), up to level 1, image data can be output sequentially until all image data within the image is obtained (in increments of string blocks), thus, compared with the usual way, the delay time can be significantly reduced.

Работой различных элементов устройства 1 кодирования изображения, показанного на фиг.1, или устройства 20 декодирования изображения, показанного на фиг.9 (обработка кодирования по фиг.8 или обработка декодирования по фиг.10), управляют в соответствии с заданной программой, с использованием, например, не представленного ЦПУ (центральное процессорное устройство). Программа сохранена заранее, например, в не показанном ПЗУ (постоянное запоминающее устройство). Однако устройство этим не ограничивается, и все устройство может работать при взаимодействии сигналов синхронизации или сигналов управления между каждым элементом, содержащим устройство кодирования изображения или устройство декодирования изображения. Кроме того, устройство кодирования изображения или устройство декодирования изображения могут быть реализованы с использованием программных средств, работающих в компьютерном устройстве.The operation of the various elements of the image encoding apparatus 1 shown in FIG. 1 or the image decoding apparatus 20 shown in FIG. 9 (the encoding processing of FIG. 8 or the decoding processing of FIG. 10) is controlled in accordance with a predetermined program using , for example, not presented by the CPU (central processing unit). The program is stored in advance, for example, in a ROM not shown (read only memory). However, the device is not limited to this, and the entire device can operate by the interaction of synchronization signals or control signals between each element containing the image encoding device or image decoding device. In addition, an image encoding device or an image decoding device may be implemented using software running on a computer device.

Далее будет описан второй вариант выполнения в соответствии с настоящим изобретением. Во втором варианте выполнения используется компоновка, в которой в системе, такой, как описана выше в первом варианте выполнения, различные элементы устройства 1 кодирования изображения и устройства 20 декодирования изображения работают одновременно, выполняя, таким образом, обработку кодирования со сжатием и обработку декодирования изображения с меньшей задержкой.Next, a second embodiment in accordance with the present invention will be described. In the second embodiment, an arrangement is used in which, in a system such as described above in the first embodiment, various elements of the image encoding apparatus 1 and the image decoding apparatus 20 operate simultaneously, thereby performing compression encoding processing and image decoding processing with less delay.

Следует отметить, что в соответствии со вторым вариантом выполнения устройство 1 кодирования изображения и устройство 20 декодирования изображения, описанные выше в первом варианте выполнения со ссылкой на фиг.1 - фиг.10, а также способ кодирования и способ декодирования могут применяться таким же образом, поэтому их описание здесь не будет приведено.It should be noted that in accordance with the second embodiment, the image encoding apparatus 1 and the image decoding apparatus 20 described above in the first embodiment with reference to FIGS. 1 to 10, as well as the encoding method and decoding method, can be applied in the same way, therefore, their description will not be given here.

На фиг.11 схематично представлены одновременно выполняемые операции, например, различными элементами устройства 1 кодирования изображения и устройства 20 декодирования изображения, в соответствии со вторым вариантом выполнения настоящего изобретения. Фиг.11 соответствует описанной выше фиг.7. Вейвлет преобразование WT-1, выполняемое в первый раз, выполняется (позиция В на фиг.11) в модуле 15 энтропийного кодирования в отношении вводимых In-1 данных изображения (позиция на фиг.11). Как описано со ссылкой на фиг.6, вейвлет преобразование WT-1, выполняемое в первый раз, начинается в момент времени, в который поступают первые три строки, и генерируется коэффициент С1. То есть от момента ввода данных In - 1 изображения до начала вейвлет преобразования WT-1 генерируется задержка, соответствующая трем строкам.11 schematically shows simultaneously performed operations, for example, by various elements of an image encoding apparatus 1 and an image decoding apparatus 20, in accordance with a second embodiment of the present invention. 11 corresponds to the above FIG. 7. The WT-1 wavelet transform, performed for the first time, is performed (position B in FIG. 11) in the entropy encoding unit 15 with respect to the In-1 input image data (position in FIG. 11). As described with reference to FIG. 6, the wavelet transform WT-1, performed for the first time, starts at the point in time at which the first three lines arrive, and a coefficient C1 is generated. That is, from the moment of inputting the In - 1 image data to the beginning of the WT-1 wavelet transform, a delay corresponding to three lines is generated.

Сгенерированные данные коэффициента сохраняют в модуле 12 буфера реконфигурирования коэффициента. После этого данные входного изображения подвергают вейвлет преобразованию, и когда обработка, выполняемая первый раз, заканчивается, обработка переходит к вейвлет преобразованию WT-2, выполняемому во второй раз.The generated coefficient data is stored in module 12 of the coefficient reconfiguration buffer. After that, the input image data is subjected to the wavelet transform, and when the processing performed for the first time ends, the processing proceeds to the WT-2 wavelet transform performed for the second time.

Данные In-2 изображения вводят с целью вейвлет преобразования WT-2, выполняемого во второй раз, и вейвлет преобразование WT-2 выполняют одновременно, реконфигурируя Ord-1 трех коэффициентов, которые представляют собой коэффициент С1, коэффициент С4 и коэффициент С5, с использованием модуля 13 реконфигурирования коэффициента (С по фиг.11).The In-2 image data is input for the second time WT-2 wavelet transform, and the WT-2 wavelet transform is performed simultaneously by reconfiguring the Ord-1 of three coefficients, which are coefficient C1, coefficient C4 and coefficient C5, using the module 13 reconfiguration of the coefficient (C in FIG. 11).

Следует отметить, что задержки от конца вейвлет преобразования WT-1 до начала реконфигурирования Ord-1 могут представлять собой задержки, соответствующие конфигурации устройства или системы, например задержки, связанные с передачей сигнала управления, представляющего инструкцию на начало процесса реконфигурирования, в модуль 13 реконфигурирования коэффициента, задержку, необходимую для начала обработки, выполняемой модулем 13 реконфигурирования коэффициента в отношении сигнала управления, или задержку, необходимую для обработки программы, и не представляют собой фактическую задержку обработки кодирования.It should be noted that the delays from the end of the WT-1 wavelet transform to the start of Ord-1 reconfiguration can be delays corresponding to the configuration of a device or system, for example, delays associated with the transmission of a control signal representing an instruction to start the reconfiguration process to coefficient coefficient reconfiguration module 13 , the delay necessary to start processing performed by the coefficient reconfiguration module 13 with respect to the control signal, or the delay necessary to process the program s, and do not represent actual delay of the coding processing.

Данные коэффициента считывают из буфера 12 реконфигурирования коэффициента, в порядке, в котором заканчивается реконфигурирование, передают в модуль 15 энтропийного кодирования и подвергают энтропийному кодированию ЕС-1 (позиция D на фиг.11). Энтропийное кодирование ЕС-1 может начинаться без ожидания окончания всего реконфигурирования трех коэффициентов; коэффициента С1, коэффициента С4 и коэффициента С5. Например, в момент времени окончания реконфигурирования для одной строки от коэффициента С5, который выводят первым, энтропийное кодирование может начаться для коэффициента С5. В этом случае задержка от начала обработки реконфигурирования Ord-1 до начала обработки энтропийного кодирования ЕС-1 соответствует одной строке.The coefficient data is read from the coefficient reconfiguration buffer 12, in the order in which the reconfiguration ends, passed to the entropy encoding unit 15 and subjected to the EC-1 entropy encoding (position D in FIG. 11). Entropy coding of EC-1 can begin without waiting for the end of the entire reconfiguration of the three coefficients; coefficient C1, coefficient C4 and coefficient C5. For example, at the time of the end of reconfiguration for one line from coefficient C5, which is output first, entropy coding may begin for coefficient C5. In this case, the delay from the start of the Ord-1 reconfiguration processing to the start of the EC-1 entropy encoding processing corresponds to one line.

Кодированные данные, на которых заканчивается энтропийное кодирование ЕС-1, выполняемое модулем 15 энтропийного кодирования, передают в устройство 20 декодирования изображения через определенного рода путь передачи (Е на фиг.11). Что касается пути передачи для передачи кодированных данных, можно рассмотреть, например, сеть передачи данных, такую как Интернет. В этом случае кодированные данные передают по IP (ПИ, протокол Интернет). Однако компоновка не ограничивается этим, и другие пути передачи кодированных данных могут представлять собой интерфейс передачи данных, такой как IEEE 1394 (ИИЭР, Институт инженеров по электротехнике и радиоэлектронике), или беспроводный канал передачи данных, представленный стандартом IEEE 802.11 или тому подобное.The encoded data at which the EU-1 entropy encoding ends, performed by the entropy encoding module 15, is transmitted to the image decoding apparatus 20 through a certain transmission path (E in FIG. 11). As for the transmission path for transmitting encoded data, one can consider, for example, a data network such as the Internet. In this case, the encoded data is transmitted over IP (PI, Internet Protocol). However, the arrangement is not limited to this, and other encoded data transmission paths may be a data transmission interface, such as IEEE 1394 (IEEE, Institute of Electrical and Electronics Engineers), or a wireless data transmission channel introduced by IEEE 802.11 or the like.

После ввода данных изображения, состоящих из нескольких строк, соответствующих обработке, выполняемой первый раз, в устройство 1 кодирования изображения, последовательно вводят данные изображения в нижней кромке экрана. В устройстве 1 кодирования изображения, в соответствии с вводом In-n данных изображения (n равно 2 или больше), как описано выше, вейвлет преобразование WT-n, реконфигурирование Ord-n, и энтропийное кодирование ЕС-n выполняют с приращением по четыре строки. Реконфигурирование Ord и энтропийное кодирование ЕС для обработки последнего раза в устройстве 1 кодирования изображения выполняют для шести строк. Эту обработку выполняют одновременно в устройстве 1 кодирования изображения, как, например, показано в позиции А на фиг.11 - позиции D на фиг.11.After entering the image data, consisting of several lines corresponding to the processing performed for the first time, in the image encoding device 1, image data is sequentially input at the lower edge of the screen. In the image encoding apparatus 1, in accordance with the input of In-n image data (n is 2 or more), as described above, the WT-n wavelet transform, Ord-n reconfiguration, and EC-n entropy encoding are performed in four-line increments . Reconfiguration of Ord and EU entropy encoding for processing the last time in the image encoding apparatus 1 is performed for six lines. This processing is performed simultaneously in the image encoding device 1, as, for example, shown in position A in FIG. 11 — position D in FIG. 11.

Кодированные данные, которые кодированы с использованием энтропийного кодирования ЕС-1 в устройстве 1 кодирования изображения, передают через путь передачи данных в устройство декодирования изображения и передают в модуль 21 энтропийного декодирования. Модуль 21 энтропийного декодирования последовательно подвергает переданные кодированные данные, которые кодированы с использованием энтропийного кодирования ЕС-1 по iEC-1, энтропийному кодированию и восстанавливает данные коэффициента (позиция F на фиг.11). Данные восстановленного коэффициента последовательно сохраняют в модуле 22 буфера коэффициента. После сохранения данных коэффициента в модуле 22 буфера коэффициента в количестве, составляющем только количество, которое можно подвергать инверсному вейвлет преобразованию, модуль 23 инверсного вейвлет преобразования считывает данные коэффициента из модуля 22 буфера коэффициента и выполняет инверсное вейвлет преобразование iWT-1, используя считанные данные коэффициента (позиция G на фиг.11).The encoded data, which is encoded using the EC-1 entropy encoding in the image encoding apparatus 1, is transmitted via the data transmission path to the image decoding apparatus and transmitted to the entropy decoding module 21. Entropy decoding module 21 sequentially transmits the transmitted encoded data, which is encoded using the EC-1 entropy encoding to iEC-1, to entropy encoding and restores the coefficient data (position F in FIG. 11). The restored coefficient data is sequentially stored in the coefficient buffer module 22. After storing the coefficient data in the coefficient buffer module 22 in an amount that is only the amount that can be subjected to the inverse wavelet transform, the inverse wavelet transform module 23 reads the coefficient data from the coefficient buffer module 22 and performs the inverse wavelet transform iWT-1 using the read coefficient data ( position G in FIG. 11).

Как описано со ссылкой на фиг.6, модуль iWT-1 инверсного вейвлет преобразования с модулем 23 инверсного вейвлет преобразования может начать работу в момент времени, когда коэффициент С4 и коэффициент С5 сохранены в модуле 22 буфера коэффициента. В соответствии с этим задержка от начала декодирования iEC-1, вводимая модулем 21 энтропийного декодирования, до начала инверсного вейвлет преобразования iWT-1, выполняемого модулем 23 инверсного вейвлет преобразования, соответствует двум строкам.As described with reference to FIG. 6, the inverse wavelet transform module iWT-1 with the inverse wavelet transform module 23 may start operating at a point in time when coefficient C4 and coefficient C5 are stored in coefficient buffer module 22. Accordingly, the delay from the start of iEC-1 decoding introduced by the entropy decoding module 21 to the beginning of the inverse wavelet transform iWT-1 performed by the inverse wavelet transform module 23 corresponds to two lines.

После инверсного вейвлет преобразования iWT-1 для этих трех строк, соответствующих окончанию вейвлет преобразования, выполняемого первый раз в модуле 23 инверсного вейвлет преобразования, выполняют вывод Out-1 данных изображения, сгенерированных в результате инверсного вейвлет преобразования iWT-1 (позиция Н на фиг.11). При выводе Out-1 выполняют вывод данных изображения первой строки, как описано со ссылкой на фиг.6 и на фиг.7.After the inverse wavelet transform iWT-1 for these three lines corresponding to the end of the wavelet transform performed for the first time in the inverse wavelet transform module 23, Out-1 outputs image data generated by the inverse wavelet transform iWT-1 (position H in FIG. eleven). When outputting Out-1, the image data of the first line is output, as described with reference to FIG. 6 and FIG.

После ввода данных кодированного коэффициента, соответствующих трем строкам, в результате обработки, выполняемой первый раз в устройстве 1 кодирования изображения, для устройства 20 декодирования изображения, последовательно вводят данные коэффициента, кодированные при энтропийном кодировании ЕС-n (n равно 2 или больше). В устройстве 20 декодирования изображения выполняют энтропийное декодирование iEC-n и инверсное вейвлет преобразование iWT-n в отношении входных данных коэффициента с приращением, равным четырем строкам, как описано выше, и последовательно выполняют вывод Out-n восстановленных данных изображения, восстановленных с помощью инверсного вейвлет преобразования iWT-n. Энтропийное декодирование iEC и инверсное вейвлет преобразование iWT, соответствующее последнему разу, устройства кодирования изображения выполняют для шести строк и выводят Out восемь строк. Эти процессы выполняют одновременно в устройстве декодирования изображения, как представлено на примерах в позиции F на фиг.11 - позиции Н на фиг.11.After entering the encoded coefficient data corresponding to three lines as a result of the processing performed for the first time in the image encoding apparatus 1, for the image decoding apparatus 20, coefficient data encoded in the entropy encoding EC-n (n is 2 or more) is sequentially input. The image decoding apparatus 20 performs iEC-n entropy decoding and iWT-n inverse wavelet transform with respect to the input coefficient data in four-line increments as described above, and Out-n outputting the reconstructed image data restored by the inverse wavelet is sequentially performed iWT-n conversions. The iEC entropy decoding and iWT inverse wavelet transform corresponding to the last time, image encoding devices execute for six lines and output Out eight lines. These processes are performed simultaneously in the image decoding device, as shown in the examples at position F in figure 11 - position H in figure 11.

Как описано выше, благодаря одновременному выполнению различной обработки в устройстве 1 кодирования изображения и в устройстве 20 декодирования изображения, в порядке от верхнего участка экрана до его нижнего участка, обработка сжатия изображения и обработка декодирования изображения могут выполняться с небольшой задержкой.As described above, by simultaneously performing various processing in the image encoding apparatus 1 and the image decoding apparatus 20, in order from the upper portion of the screen to its lower portion, image compression processing and image decoding processing may be performed with a slight delay.

Время задержки от ввода изображения до вывода изображения, в случае выполнения вейвлет преобразования, вплоть до уровня = 2 разделения, с использованием фильтра 5×3, рассчитывают со ссылкой на фиг.11. Время задержки от ввода первой строки данных изображения в устройство 1 кодирования изображения до вывода первой строки данных изображения из устройства 20 декодирования изображения представляет собой общую сумму элементов, представленных ниже. Следует отметить, что задержки, отличающиеся в соответствии с конфигурацией системы, такие как задержки на пути передачи данных или задержки, соответствующие фактическому времени обработки различных частей устройства, здесь исключены.The delay time from image input to image output, in the case of a wavelet transform, up to a separation level = 2, using a 5 × 3 filter, is calculated with reference to FIG. 11. The delay time from inputting the first row of image data into the image encoding apparatus 1 to outputting the first row of image data from the image decoding apparatus 20 is the total sum of the elements presented below. It should be noted that delays that differ in accordance with the system configuration, such as delays in the data transmission path or delays corresponding to the actual processing time of various parts of the device, are omitted here.

(1) Задержка D WT от ввода первой строки до окончания вейвлет преобразования WT-1, соответствующего семи строкам.(1) Delay D WT from entering the first line to the end of the wavelet transform WT-1 corresponding to seven lines.

(2) Время D Ord, которое соответствует реконфигурированию Ord-1 всего для трех строк.(2) Time D Ord, which corresponds to reconfiguring Ord-1 for just three lines.

(3) Время D EC, в соответствии с энтропийным кодированием ЕС-1, которое соответствует трем строкам.(3) Time D EC, according to the entropy coding of EC-1, which corresponds to three lines.

(4) Время D iEC в соответствии с энтропийным декодированием iEC-1, которое соответствует трем строкам.(4) Time D iEC in accordance with the entropy decoding of iEC-1, which corresponds to three lines.

(5) Время D iWT в соответствии с инверсным вейвлет преобразованием iWT-1, которое соответствует трех строкам.(5) Time D iWT in accordance with the inverse wavelet transform iWT-1, which corresponds to three lines.

Задержки, вводимые описанными выше различными элементами, будут рассчитаны со ссылкой на фиг.11. Задержка D WT в пункте (1) соответствует по времени десяти строкам. Каждое время D-Ord в пункте (2), время D EC в пункте (3), время D iEC в пункте (4) и время D iWT в пункте (5) соответствует времени трех строк. Кроме того, в устройстве 1 кодирования изображения энтропийное кодирование ЕС-1 может быть начато после начала реконфигурирования Ord-1 одной строки. Аналогично, в устройстве 20 декодирования изображения инверсное вейвлет преобразование iWT-1 может быть начато после начала энтропийного декодирования iEC-1 двух строк. Кроме того, энтропийное декодирование iEC-1 может начать обработку в момент времени кодирования, соответствующий окончанию обработки одной строки при энтропийном кодировании ЕС-1.Delays introduced by the various elements described above will be calculated with reference to FIG. 11. The delay D WT in point (1) corresponds to ten lines in time. Each D-Ord time in step (2), D EC time in step (3), D iEC time in step (4), and D iWT time in step (5) corresponds to the time of three lines. In addition, in the image encoding apparatus 1, entropy encoding of EC-1 can be started after the start of reconfiguration of Ord-1 of one line. Similarly, in the image decoding apparatus 20, the inverse wavelet transform iWT-1 can be started after two lines of entropy decoding iEC-1 have begun. In addition, iEC-1 entropy decoding can begin processing at the time of encoding, corresponding to the end of processing of one line in entropy encoding of EC-1.

В соответствии с этим примером, задержка по времени от ввода первой строки данных изображения в устройство кодирования изображения до вывода первой строки данных изображения из устройства декодирования соответствует 10+1+1+2+3=17 строкам.According to this example, the time delay from inputting the first line of image data into the image encoding device to outputting the first line of image data from the decoding device corresponds to 10 + 1 + 1 + 2 + 3 = 17 lines.

Более конкретный пример будет приведен для учета задержки времени. В случае, когда входные данные изображения представляют собой чересстрочный видеосигнал для HDTV (ТВВЧ, телевидение высокой четкости), один кадр конфигурируют, например, с разрешающей способностью 1920 пикселей на 1080 строк, и одно поле составляет 1920 пикселей на 540 строк. В соответствии с этим, если частота кадров равна 30 Гц, одно поле, состоящее из 540 строк, вводят в устройство 1 кодирования изображения в момент времени 16,67 мс (=1 секунда/60 полей).A more specific example will be given to account for the time delay. In the case where the input image data is an interlaced video signal for HDTV (HDTV, high definition television), one frame is configured, for example, with a resolution of 1920 pixels per 1080 lines, and one field is 1920 pixels per 540 lines. Accordingly, if the frame rate is 30 Hz, one field consisting of 540 lines is input to the image encoding device 1 at a time of 16.67 ms (= 1 second / 60 fields).

В соответствии с этим, время задержки при вводе данных изображения, соответствующих семи строкам, составляет 0,216 мс (=16,67 мс × 7/540 строк), что представляет собой чрезвычайно малое время, например, по сравнению со временем возобновления одного поля. Кроме того, что касается суммарных значений описанной выше задержки D WT в пункте (1), времени D Ord в пункте (2), времени D EC в пункте (3), времени D iEC в пункте (4), и времени D iWT в пункте (5), количество обрабатываемых строк мало, поэтому время задержки чрезвычайно сокращено. Если элементы, выполняющие различную обработку, скомпонованы в виде аппаратных средств, время обработки может быть дополнительно сокращено.Accordingly, the delay time for entering image data corresponding to seven lines is 0.216 ms (= 16.67 ms × 7/540 lines), which is an extremely short time, for example, compared with the time of renewal of one field. In addition, with regard to the total values of the delay D WT described above in paragraph (1), the time D Ord in paragraph (2), the time D EC in paragraph (3), the time D iEC in paragraph (4), and the time D iWT in paragraph (5), the number of processed lines is small, so the delay time is extremely reduced. If the elements performing various processing are arranged in the form of hardware, the processing time can be further reduced.

Далее будет описан третий вариант выполнения настоящего варианта выполнения. В описанных выше первом и втором вариантах выполнения данные коэффициента реконфигурируют после выполнения вейвлет преобразования в устройстве 1 кодирования изображения. В отличие от этого, в третьем варианте выполнения в соответствии с настоящим изобретением реконфигурирование данных выполняют после энтропийного кодирования. То есть в устройстве кодирования изображения в данном случае энтропийное кодирование выполняют для коэффициентов, сгенерированных после выполнения вейвлет преобразования для входных данных изображения, и обработку реконфигурирования выполняют для данных после энтропийного кодирования. Таким образом, путем выполнения реконфигурирования данных коэффициента, после выполнения энтропийного кодирования, можно уменьшить объем сохранения, требуемый для буфера реконфигурирования коэффициента.Next, a third embodiment of the present embodiment will be described. In the first and second embodiments described above, the coefficient data is reconfigured after performing the wavelet transform in the image encoding apparatus 1. In contrast, in a third embodiment according to the present invention, data reconfiguration is performed after entropy encoding. That is, in the image encoding apparatus, in this case, entropy encoding is performed for the coefficients generated after performing the wavelet transform for the input image data, and reconfiguration processing is performed for the data after entropy encoding. Thus, by performing reconfiguration of the coefficient data, after performing entropy coding, it is possible to reduce the amount of storage required for the coefficient reconfiguration buffer.

Например, в случае, когда точность бита входных данных изображения составляет 8 бит, если вейвлет преобразование выполняют до множественного уровня разделения, точность бита генерируемых данных коэффициента становится приблизительно 12 бит, например. В случае выполнения обработки реконфигурирования коэффициента перед обработкой энтропийного кодирования модуль буфера реконфигурирования коэффициента должен сохранять заданное количество строк, соответствующее данным коэффициента с точностью бита 12 бит. В результате компоновки данных коэффициента, сгенерированных при вейвлет преобразовании, которые подвергаются обработке реконфигурирования после энтропийного кодирования, буфер реконфигурирования коэффициента может сохранять данные, сжатые в результате энтропийного кодирования, что требует только небольшой емкости запоминающего устройства.For example, in the case where the bit accuracy of the input image data is 8 bits, if the wavelet transform is performed to a multiple separation level, the bit accuracy of the generated coefficient data becomes approximately 12 bits, for example. If the coefficient reconfiguration processing is performed before the entropy encoding processing, the coefficient reconfiguration buffer module must save the specified number of lines corresponding to the coefficient data with a bit accuracy of 12 bits. As a result of compiling the coefficient data generated by the wavelet transform, which undergo reconfiguration processing after entropy encoding, the coefficient reconfiguration buffer can store data compressed as a result of entropy encoding, which requires only a small storage capacity.

На фиг.12 показан пример устройства кодирования изображения в соответствии с третьим вариантом выполнения настоящего изобретения. Участок на фиг.12, общий с описанной выше фиг.1, имеет те же номера ссылочных позиций, и его подробное описание не будет приведено.12 shows an example of an image encoding apparatus according to a third embodiment of the present invention. The plot in Fig. 12, common with the above-described Fig. 1, has the same reference numerals and will not be described in detail.

Данные входного изображения временно сохраняют в модуле 11 буфера промежуточного расчета устройства 30 кодирования изображения. Модуль 10 вейвлет преобразования выполняет заданное вейвлет преобразование в отношении данных изображения, сохраненных в модуле 11 буфера промежуточного расчета, как описано в отношении первого варианта выполнения. Данные коэффициента, сгенерированные с использованием вейвлет преобразования, передают в модуль 15 энтропийного кодирования. Модуль 15 энтропийного кодирования работает совместно с модулем 14 управления скоростью следования данных, и им управляют так, чтобы скорость передачи битов выходных данных кодирования со сжатием была примерно равна фиксированному значению, и выполняют обработку энтропийного кодирования в отношении передаваемых данных коэффициента. То есть модуль 15 энтропийного кодирования кодирует полученные коэффициенты в том же порядке, в каком они были получены, независимо от порядка коэффициентов.The input image data is temporarily stored in the intermediate calculation module 11 of the image encoding device 30. The wavelet transform module 10 performs a predetermined wavelet transform with respect to image data stored in the intermediate calculation buffer module 11, as described with respect to the first embodiment. The coefficient data generated using the wavelet transform is passed to the entropy coding unit 15. The entropy encoding unit 15 works in conjunction with the data rate control unit 14 and is controlled so that the bit rate of the compression encoding output is approximately equal to a fixed value, and entropy encoding is processed with respect to the transmitted coefficient data. That is, entropy coding unit 15 encodes the obtained coefficients in the same order in which they were received, regardless of the order of the coefficients.

Кодированные данные, в которых данные коэффициента, сгенерированные с помощью вейвлет преобразования, подвергают энтропийному кодированию с использованием модуля 15 энтропийного кодирования, временно сохраняют в модуле 31 буфера реконфигурирования кодирования. Модуль 32 реконфигурирования кодирования реконфигурирует и считывает кодированные данные из модуля 31 буфера реконфигурирования кодирования до тех пор, пока кодированные данные, которые должны быть реконфигурированы, не будут сохранены в модуле 31 буфера реконфигурирования кодирования. Как уже было описано в отношении первого варианта выполнения, данные коэффициента, сгенерированные модулем 10 вейвлет преобразования, генерируют в порядке от компонентов верхней полосы до компонентов нижней полосы со стороны верхнего конца экрана в направлении к стороне нижнего конца. Для вывода данных изображения на стороне декодирования с малой задержкой данные кодирования, сохраненные в модуле 31 буфера реконфигурирования кодирования, реконфигурируют в порядке от компонентов нижней полосы до компонентов верхней полосы данных коэффициента с использованием вейвлет преобразования и считывают.Coded data in which coefficient data generated by a wavelet transform is entropy encoded using entropy encoding unit 15 is temporarily stored in encoding reconfiguration buffer module 31. The encoding reconfiguration module 32 reconfigures and reads the encoded data from the encoding reconfiguration buffer module 31 until the encoded data to be reconfigured is stored in the encoding reconfiguration buffer module 31. As already described with respect to the first embodiment, the coefficient data generated by the wavelet transform module 10 is generated in order from the components of the upper band to the components of the lower band from the upper end of the screen toward the lower end. In order to output the image data on the low-delay decoding side, the encoding data stored in the encoding reconfiguration buffer module 31 is reconfigured in order from the components of the lower band to the components of the upper band of the coefficient data using the wavelet transform and read.

Кодированные данные, считанные из модуля 31 буфера реконфигурирования кодирования, передают в путь передачи, например, как выходные кодированные данные.The encoded data read from the encoding reconfiguration buffer module 31 is transmitted to the transmission path, for example, as output encoded data.

Следует отметить, что данные, кодированные и выведенные устройством 30 кодирования изображения в соответствии с третьим вариантом выполнения, могут быть декодированы устройством 20 декодирования изображения, в соответствии с первым вариантом выполнения, описанным со ссылкой на фиг.9, аналогично случаю, описанному в первом варианте выполнения. То есть кодированные данные, вводимые в устройство 20 декодирования изображения, например, через путь передачи данных, подвергают декодированию при энтропийном кодировании в модуле 21 энтропийного декодирования, и данные коэффициента восстанавливают. Восстановленные данные коэффициента последовательно сохраняют в модуле 22 буфера коэффициента. Модуль 23 инверсного вейвлет преобразования подвергает данные коэффициента, сохраненные в модуле 22 буфера коэффициента, инверсному вейвлет преобразованию и выводит данные изображения.It should be noted that the data encoded and output by the image encoding device 30 in accordance with the third embodiment can be decoded by the image decoding device 20 in accordance with the first embodiment described with reference to FIG. 9, similarly to the case described in the first embodiment fulfillment. That is, the encoded data input to the image decoding apparatus 20, for example, via a data transmission path, is decoded by entropy encoding in the entropy decoding unit 21, and the coefficient data is restored. The reconstructed coefficient data is sequentially stored in the coefficient buffer module 22. The inverse wavelet transform module 23 exposes the coefficient data stored in the coefficient buffer module 22 to the inverse wavelet transform and outputs image data.

Далее будет описан четвертый вариант выполнения в соответствии с настоящим изобретением. В описанных выше первом варианте выполнения - третьем варианте выполнения выполняют обработку реконфигурирования данных коэффициента, генерируемых при вейвлет преобразовании на стороне устройства кодирования изображения, как, например, показано на фиг.13. В отличие от этого, в четвертом варианте выполнения настоящего изобретения обработку реконфигурирования данных коэффициента, генерируемых при вейвлет преобразовании, выполняют на стороне устройства декодирования изображения, как, например, показано на фиг.14.Next, a fourth embodiment of the present invention will be described. In the first embodiment, the third embodiment described above, the reconfiguration of the coefficient data generated by the wavelet transform on the side of the image encoding device is performed, for example, as shown in FIG. 13. In contrast, in a fourth embodiment of the present invention, reconfiguration processing of coefficient data generated by the wavelet transform is performed on the side of the image decoding apparatus, as, for example, shown in FIG.

При обработке реконфигурирования данных коэффициента, генерируемых при вейвлет преобразовании, как описано в указанном выше третьем варианте выполнения, требуется относительно большой объем сохранения в буфере реконфигурирования коэффициента, а также требуется высокая производительность при обработке для выполнения самой обработки реконфигурирования коэффициента. В этом случае также, если производительность обработки на стороне устройства кодирования изображения выше, чем определенная величина, даже если обработку реконфигурирования коэффициента выполняют на стороне устройства кодирования изображения, не возникают проблемы, как описано в первом - третьем вариантах выполнения.When processing the reconfiguration of the coefficient data generated by the wavelet transform, as described in the above third embodiment, a relatively large amount of storage in the coefficient reconfiguration buffer is required, and also high processing performance is required to perform the coefficient reconfiguration processing itself. In this case, also, if the processing performance on the side of the image encoding device is higher than a certain amount, even if the coefficient reconfiguration processing is performed on the side of the image encoding device, there are no problems, as described in the first to third embodiments.

Здесь представлены ситуации, в которых устройство кодирования изображения установлено в устройстве с относительно малыми вычислительными возможностями, таком как мобильные терминалы, такие как терминалы сотового телефона или КПК (карманный персональный компьютер). Например, широкое распространение получили выпущенные недавно продукты, в которых функция фотографии добавлена в терминал сотового телефона (называются терминалом сотового телефона с функцией камеры). Можно рассмотреть ситуацию, в которой данные изображения, которые представляют собой изображения, снятые устройством сотового телефона с функцией камеры, подвергают кодированию сжатия с использованием вейвлет преобразования и энтропийного кодирования и передают через беспроводный или кабельный канал передачи данных.Here are situations in which an image encoding device is installed in a device with relatively small computing capabilities, such as mobile terminals, such as cell phone or PDA (Pocket PC) terminals. For example, recently released products are widely used, in which the photo function is added to the cell phone terminal (called a cell phone terminal with a camera function). You can consider a situation in which image data, which is the image taken by a camera phone with a camera function, is subjected to compression encoding using wavelet transform and entropy encoding and transmitted via a wireless or cable data channel.

Такие мобильные терминалы имеют ограниченные возможности обработки своего ЦПУ и также имеют верхний предел емкости памяти. Поэтому нагрузка, связанная с обработкой при использовании описанного выше реконфигурирования коэффициента, представляет собой проблему, которую нельзя игнорировать.Such mobile terminals have limited processing capabilities of their CPUs and also have an upper limit on memory capacity. Therefore, the processing load using the coefficient reconfiguration described above is a problem that cannot be ignored.

Таким образом, в качестве одного примера, показанного на фиг.14, при построении обработки реконфигурирования на стороне устройства декодирования изображения нагрузка на сторону устройства кодирования изображения может быть уменьшена, что позволяет устанавливать устройство кодирования изображения в устройствах с относительно малыми возможностями обработки, таких как мобильный терминал.Thus, as one example shown in FIG. 14, when constructing the reconfiguration processing on the side of the image decoding device, the load on the side of the image encoding device can be reduced, which allows installing the image encoding device in devices with relatively low processing capabilities, such as mobile terminal.

На фиг.15 показан пример конфигурации устройства кодирования изображения, применимого к четвертому варианту выполнения. Следует отметить, что на фиг.15 участки, общие с описанной выше фиг.1, обозначены теми же номерами ссылочных позиций, и их подробное описание здесь не приведено.FIG. 15 shows an example configuration of an image encoding apparatus applicable to the fourth embodiment. It should be noted that in Fig. 15, the areas common with the one described above in Fig. 1 are denoted by the same reference numerals, and their detailed description is not given here.

Конфигурация устройства 41 кодирования изображения, показанная на фиг.15, представлена как конфигурация, в которой модуль 13 реконфигурирования коэффициента и модуль 12 буфера реконфигурирования коэффициента устранены из конфигурации устройства 1 кодирования изображения, показанной на описанной выше фиг.1. Другими словами, в четвертом варианте выполнения в устройстве 41 кодирования изображения используется конфигурация, в которой применяется комбинация модуля 10 вейвлет преобразования, модуля 11 буфера промежуточных расчетов, модуля 15 энтропийного кодирования и модуля 14 управления скоростью следования битов.The configuration of the image encoding device 41 shown in FIG. 15 is presented as a configuration in which the coefficient reconfiguration module 13 and the coefficient reconfiguration buffer module 12 are removed from the configuration of the image encoding device 1 shown in FIG. 1 above. In other words, in the fourth embodiment, the image encoding device 41 uses a configuration in which a combination of the wavelet transform module 10, the intermediate calculation buffer module 11, the entropy encoding module 15, and the bit rate control module 14 are used.

Входные данные изображения временно накапливают в модуле 11 буфера промежуточного расчета. Модуль 10 вейвлет преобразования выполняет вейвлет преобразование данных изображения, накаливаемых в модуле 11 буфера промежуточного расчета, и последовательно передает сгенерированные данные коэффициента в порядке генерируемых данных коэффициента в модуль 15 энтропийного кодирования. То есть генерируемые данные коэффициента передают в модуль 15 энтропийного кодирования в порядке от компонентов верхней полосы до компонентов нижней полосы в соответствии с порядком вейвлет преобразования. Модуль 15 энтропийного кодирования выполняет энтропийное кодирование в отношении переданных коэффициентов, при этом скоростью следования битов выходных данных управляют с помощью модуля 14 управления скоростью следования битов. Данные коэффициента, генерируемые при вейвлет преобразовании, выводят как кодированные данные, которые были подвергнуты энтропийному кодированию.The input image data is temporarily accumulated in the intermediate calculation buffer module 11. The wavelet transform module 10 performs the wavelet transform of the image data incandescent in the intermediate calculation buffer module 11, and sequentially transmits the generated coefficient data in the order of the generated coefficient data to the entropy encoding module 15. That is, the generated coefficient data is transmitted to the entropy coding unit 15 in an order from the components of the upper band to the components of the lower band in accordance with the order of the wavelet transform. The entropy encoding unit 15 performs entropy encoding with respect to the transmitted coefficients, wherein the bit rate of the output data is controlled by the bit rate control unit 14. The coefficient data generated by the wavelet transform is output as encoded data that has been subjected to entropy encoding.

На фиг.16 показан один пример конфигурации устройства декодирования изображения в соответствии с четвертым вариантом выполнения. Следует отметить, что на фиг.16 участки, общие с описанной выше фиг.9, обозначены теми же номерами ссылочных позиций, и их подробное описание здесь не приведено.FIG. 16 shows one configuration example of an image decoding apparatus according to a fourth embodiment. It should be noted that in Fig.16 areas that are common with the above-described Fig.9 are denoted by the same reference numbers, and their detailed description is not given here.

Кодированные данные, выводимые из модуля 15 энтропийного кодирования, устройства 41 кодированного изображения, описанного на фиг.15, подают в модуль 21 энтропийного декодирования устройства 42 декодирования изображения на фиг.16, подвергают энтропийному кодированию, и они становятся данными коэффициента. Данные коэффициента сохраняют в модуле 43 буфера реконфигурирования коэффициента через модуль 22 буфера коэффициента. После накопления данных коэффициента в модуле 43 буфера реконфигурирования коэффициента до тех пор, пока не будут сконфигурированы данные коэффициента, модуль 23 инверсного вейвлет преобразования выполняет реконфигурирование данных коэффициента, сохраненных в модуле 43 буфера реконфигурирования коэффициента, в порядке от компонентов нижней полосы до компонентов верхней полосы, и считывает данные коэффициента, затем выполняет обработку инверсного вейвлет преобразования, используя данные коэффициента в считанном порядке. В случае использования фильтра 5×3, его компоновка будет такой, как показана на описанной выше фиг.14.The encoded data output from the entropy encoding unit 15 of the encoded image device 41 described in FIG. 15 is supplied to the entropy decoding unit 21 of the image decoding device of FIG. 16, is entropy encoded, and they become coefficient data. The coefficient data is stored in the coefficient reconfiguration buffer module 43 through the coefficient buffer module 22. After the coefficient data is accumulated in the coefficient reconfiguration buffer module 43 until the coefficient data is configured, the inverse wavelet transform module 23 reconfigures the coefficient data stored in the coefficient reconfiguration buffer module 43 in the order from the lower band components to the upper band components, and reads the coefficient data, then performs inverse wavelet transform processing using the coefficient data in a read order. In the case of using a 5 × 3 filter, its arrangement will be as shown in FIG. 14 described above.

То есть при выполнении обработки от начала одного фрейма, например, в момент времени декодирования коэффициента С1, коэффициента С4 и коэффициента С5, при энтропийном кодировании, сохраненных в модуле 43 буфера реконфигурирования коэффициента, модуль 23 инверсного вейвлет преобразования считывает данные коэффициента из модуля 43 буфера реконфигурирования коэффициента и выполняет обработку инверсного вейвлет преобразования. Данные, подвергаемые инверсному вейвлет преобразованию в модуле 23 инверсного вейвлет преобразования, последовательно выводят как данные выходного изображения.That is, when processing from the start of one frame, for example, at the time of decoding of coefficient C1, coefficient C4 and coefficient C5, during entropy encoding stored in coefficient reconfiguration buffer module 43, the inverse wavelet transform module 23 reads the coefficient data from reconfiguration buffer module 43 coefficient and performs inverse wavelet transform processing. The data subjected to the inverse wavelet transform in the inverse wavelet transform module 23 is sequentially output as output image data.

Следует отметить, что в случае четвертого варианта выполнения, так же, как описано в отношении описанного выше второго варианта выполнения со ссылкой на фиг.11, одновременно выполняют обработку в различных элементах устройства 41 кодирования изображения и передачу данных кодирования по пути передачи данных и обработку в различных элементах устройства 42 декодирования изображения.It should be noted that in the case of the fourth embodiment, in the same way as described with respect to the second embodiment described above with reference to FIG. 11, simultaneously processing in various elements of the image encoding apparatus 41 and transmitting encoding data along the data transmission path and processing to various elements of the image decoding apparatus 42.

Далее будет описан пятый вариант выполнения настоящего изобретения. В пятом варианте выполнения кодированные данные, передаваемые между устройством кодирования изображения и устройством декодирования изображения в соответствии с первым вариантом выполнения - четвертым вариантом выполнения, компонуют в виде пакетов.Next, a fifth embodiment of the present invention will be described. In the fifth embodiment, encoded data transmitted between the image encoding device and the image decoding device according to the first embodiment, the fourth embodiment, is arranged in packets.

На фиг.17 показана принципиальная схема, описывающая пример того, как выполняют обмен кодированными данными. В случае примера, показанного на фиг.17, аналогично другим вариантам выполнения, описанным выше, данные изображения подвергают вейвлет преобразованию при вводе в виде последовательных приращений в виде блоков строк, соответствующих только заданному количеству строк (подполоса 51). В случае достижения заданного уровня разделения вейвлет преобразования строки коэффициента от подполосы самой нижней полосы до подполосы самой верхней полосы реконфигурируют в обратном порядке по сравнению с порядком, в котором они были сгенерированы, то есть в порядке от нижней полосы до верхней полосы.On Fig shows a schematic diagram describing an example of how to perform the exchange of encoded data. In the case of the example shown in FIG. 17, similarly to the other embodiments described above, the image data is subjected to wavelet transform when inputted in the form of sequential increments in the form of blocks of lines corresponding to only a given number of lines (subband 51). If the specified level of separation of the wavelet transform of the coefficient line from the subband of the lowest band to the subband of the highest band is reached, reconfigured in the reverse order compared to the order in which they were generated, that is, in the order from the lower band to the upper band.

В подполосе 51 на фиг.17 каждый из участков, разделенных на структуры диагональных строк, вертикальных строк и волнистых строк, имеет разные блоки строк (как показано стрелками, белое пространство подполосы 51 также разделено на последовательные приращения блоков строк, и его обрабатывают). Коэффициенты блоков строк после реконфигурирования подвергают энтропийному кодированию, как описано выше, при этом генерируют кодированные данные.In subband 51 in FIG. 17, each of the sections divided into patterns of diagonal lines, vertical lines and wavy lines has different line blocks (as shown by arrows, the white space of subband 51 is also divided into consecutive increments of line blocks, and it is processed). The coefficients of the row blocks after reconfiguration are subjected to entropy encoding, as described above, while encoded data is generated.

Здесь, если устройство кодирования изображения передает кодированные данные в этом же виде, например, в устройстве декодирования изображения могут возникнуть трудности, связанные с идентификацией границ различных блоков строк (или может потребоваться сложная обработка). Таким образом, в настоящем варианте выполнения используется компоновка, в которой устройство кодирования изображения прикрепляет заголовок к кодированным данным через приращение, равное, например, блокам строк, и передает пакет, сформированный из заголовка и кодированных данных.Here, if the image encoding device transmits the encoded data in the same form, for example, difficulties may arise in the image decoding device associated with identifying the boundaries of various blocks of lines (or complex processing may be required). Thus, in the present embodiment, a layout is used in which the image encoding apparatus attaches the header to the encoded data in increments of, for example, blocks of lines, and transmits a packet formed from the header and encoded data.

Другими словами, после того как устройство кодирования изображения сгенерирует кодированные данные (данные кодера) для первого блока строк (Lineblock-1), кодированные данные пакетируют и передают как пакет 61 передачи в устройство декодирования изображения, как показано на фиг.17. После приема устройством декодирования изображения пакета (принятого пакета 71) его кодированные данные декодируют.In other words, after the image encoding device generates encoded data (encoder data) for the first block of lines (Lineblock-1), the encoded data is packetized and transmitted as a transmission packet 61 to the image decoding device, as shown in FIG. After the decoding device receives an image of a packet (received packet 71), its encoded data is decoded.

Аналогично, после генерирования устройством кодирования изображения второго блока строк (Lineblock-2) кодированных данных кодированные данные пакетируют и передают как пакет 62 передачи в устройство декодирования изображения. После приема устройством декодирования изображения пакета (принятого пакета 72) его кодированные данные декодируют. И снова, аналогично, после того как устройство кодирования изображения сгенерирует третий блок строк (Lineblock-3) кодированных данных, кодированные данные пакетируют и передают как пакет 63 передачи в устройство декодирования изображения. После приема устройством декодирования изображения пакета (принятый пакет 73), его кодированные данные декодируют.Similarly, after the image encoding device generates a second block of lines (Lineblock-2) of encoded data, the encoded data is packetized and transmitted as a transmission packet 62 to the image decoding device. After the decoding device receives an image of a packet (received packet 72), its encoded data is decoded. And again, similarly, after the image encoding device generates a third block of lines (Lineblock-3) of encoded data, the encoded data is packetized and transmitted as a transmission packet 63 to the image decoding device. After the decoding device receives a packet image (received packet 73), its encoded data is decoded.

Устройство кодирования изображения и устройство декодирования изображения повторяют описанную выше обработку до конечного Х-ого блока строк (Lineblock-X) (пакет 64 передачи, принятый пакет 74). Таким образом, в устройстве декодирования изображения генерируют декодированное изображение 81.The image encoding device and the image decoding device repeat the processing described above to the final Xth block of lines (Lineblock-X) (transmission packet 64, received packet 74). Thus, in the image decoding apparatus, a decoded image 81 is generated.

На фиг.18 представлен пример конфигурации заголовка. Как описано выше, пакет содержит заголовок (Header) 91 и кодированные данные, Header 91 включает в себя описание номера (NUM) 93 блока строк и длины (LEN) 94 кодированных данных.On Fig presents an example configuration of the header. As described above, the packet contains a header (Header) 91 and encoded data, Header 91 includes a description of the number (NUM) 93 of a row block and the length (LEN) 94 of the encoded data.

Устройство декодирования изображения может легко идентифицировать границы каждого блока строк путем считывания этой информации, включенной в заголовок, добавленный к принятым кодированным данным, уменьшая, таким образом, нагрузку при обработке декодирования или время обработки.The image decoding apparatus can easily identify the boundaries of each block of lines by reading this information included in the header added to the received encoded data, thereby reducing the decoding processing load or processing time.

Следует отметить, что, как показано на фиг.18, также может быть добавлено описание размера (от Δ1 до Δn) 92 шага квантования с приращениями в подполосах, конфигурирующих блок строк. Таким образом, устройство декодирования изображения может выполнять инверсное квантование с приращениями в подполосах, что, таким образом, позволяет выполнять дополнительный подробный контроль качества изображения.It should be noted that, as shown in FIG. 18, a size description (from Δ1 to Δn) of 92 quantization steps with increments in subbands configuring a block of rows can also be added. Thus, the image decoding apparatus can perform inverse quantization in increments in the subbands, which thus allows for additional detailed image quality control.

Кроме того, устройство кодирования изображения и устройство декодирования изображения могут быть скомпонованы так, что они будут одновременно (в виде магистральной обработки) выполнять описанные выше различные процессы кодирования, пакетирования, обмена пакетами и декодирования, как описано в четвертом варианте выполнения, с приращениями размера в блоке строк.In addition, the image encoding device and the image decoding device can be arranged so that they simultaneously (in the form of trunk processing) perform the various processes of encoding, packetization, packet exchange and decoding described above, as described in the fourth embodiment, with size increments of block of lines.

Таким образом, время задержки до момента, когда выходное изображение будет получено в устройстве декодирования изображения, можно значительно уменьшить. Например, на фиг.17 показан пример работы с использованием движущихся изображений, представленных с чередованием (60 полей/секунду). В этом примере время для одного поля составляет 1 секунда - 60 = приблизительно 16,7 мс, но благодаря одновременному выполнению различной обработки, вывод изображения может быть получен со временем задержки приблизительно 5 мс.Thus, the delay time until the output image is received in the image decoding apparatus can be significantly reduced. For example, FIG. 17 shows an example of operation using moving images presented alternately (60 fields / second). In this example, the time for one field is 1 second - 60 = approximately 16.7 ms, but due to the simultaneous execution of various processing, image output can be obtained with a delay time of approximately 5 ms.

Далее будет описан шестой вариант выполнения в соответствии с настоящим изобретением. В шестом варианте выполнения будет описан конкретный пример энтропийного кодирования в устройстве кодирования изображения и энтропийного декодирования в устройстве декодирования изображения, в различных описанных выше вариантах выполнения. В различных описанных выше вариантах выполнения может использоваться любой способ энтропийного кодирования, но при использовании такого способа, представленного в настоящем варианте выполнения, устройство кодирования изображения может выполнять кодирование с более простыми расчетами, что уменьшает время задержки, использование вычислительного ресурса и емкости запоминающего устройства буфера и т.п.Next, a sixth embodiment in accordance with the present invention will be described. In a sixth embodiment, a specific example of entropy encoding in an image encoding device and entropy decoding in an image decoding device in the various embodiments described above will be described. In the various embodiments described above, any entropy encoding method can be used, but when using the method presented in the present embodiment, the image encoding device can perform encoding with simpler calculations, which reduces the delay time, the use of computing resource and buffer storage capacity and etc.

Следует отметить, что, как описано выше, в различных вариантах выполнения, кодирование может выполняться после квантования данных коэффициента в случае энтропийного кодирования, но то же можно сказать для настоящего варианта выполнения, в результате энтропийное кодирование может выполняться после выполнения квантования данных коэффициента, или данные коэффициента могут подвергаться энтропийному кодированию без квантования. Однако, как будет описано ниже, способ с выполнением квантования способствует повышению качества изображения, поэтому ниже будет описано только энтропийное кодирование с выполненным квантованием. Другими словами, энтропийное кодирование без выполнения квантования не приведено в этом описании, но описание энтропийного кодирования с выполненным квантованием может в нем использоваться.It should be noted that, as described above, in various embodiments, encoding can be performed after quantization of the coefficient data in the case of entropy encoding, but the same can be said for the present embodiment, as a result, entropy encoding can be performed after quantization of the coefficient data, or data coefficients can be subjected to entropy coding without quantization. However, as will be described below, the method with performing quantization improves image quality, therefore, only entropy encoding with quantization performed will be described below. In other words, entropy encoding without quantization is not given in this description, but a description of entropy encoding with quantization performed can be used in it.

Кроме того, ниже, в следующем описании, может быть не приведено реконфигурирование коэффициента. В различных описанных выше вариантах выполнения представлено описание для случая энтропийного кодирования реконфигурированных данных коэффициента, для случая реконфигурирования кодированных данных после энтропийного кодирования и для случая реконфигурирования данных коэффициента после энтропийного декодирования. Однако используемое здесь реконфигурирование, в принципе, представляет собой процесс выполнения обработки инверсного вейвлет преобразования с высокой скоростью и, в основном, не связано с обработкой энтропийного кодирования (и обработкой энтропийного декодирования). Кроме того, даже в случае выполнения реконфигурирования коэффициента его реконфигурирование выполняется в пределах блоков строк, поэтому, в принципе, оно не влияет на энтропийное кодирование, которое будет описано в настоящем варианте выполнения, хотя конкретное его содержание будет описано ниже. Другими словами, способ энтропийного кодирования в соответствии с настоящим примером может использоваться аналогично в случае данных коэффициента кодирования, порядок которых был изменен, или в случае кодирования данных коэффициента перед реконфигурированием. В соответствии с этим, описание реконфигурирования коэффициента не будет приведено для упрощения следующего ниже описания.In addition, the reconfiguration of the coefficient may not be given below in the following description. In the various embodiments described above, a description is provided for the case of entropy encoding of reconfigured coefficient data, for the case of reconfiguring encoded data after entropy encoding, and for the case of reconfiguring coefficient data after entropy decoding. However, the reconfiguration used here is, in principle, a process of performing inverse wavelet transform processing at a high speed and is mainly not related to entropy encoding processing (and entropy decoding processing). In addition, even in the case of performing reconfiguration of the coefficient, its reconfiguration is performed within the blocks of rows, therefore, in principle, it does not affect the entropy coding, which will be described in the present embodiment, although its specific content will be described below. In other words, the entropy coding method according to the present example can be used similarly in the case of coding coefficient data whose order has been changed, or in the case of coding coefficient data before reconfiguration. Accordingly, a description of the reconfiguration of the coefficient will not be given to simplify the following description.

Другими словами, ниже энтропийное кодирование в соответствии с настоящим вариантом выполнения будет описано для случая, в котором выполняется обработка квантования в модуле 15 энтропийного кодирования устройства 41 кодирования изображения по четвертому варианту выполнения, показанному на фиг.15. Следует отметить, что по аналогичным причинам устройство декодирования изображения также будет описано только в соответствии с таким устройством кодирования изображения, и описание в отношении случаев реконфигурирования коэффициента или без выполнения инверсного квантования не будет приведено.In other words, the entropy encoding according to the present embodiment will be described below for a case in which quantization processing is performed in the entropy encoding unit 15 of the image encoding apparatus 41 of the fourth embodiment shown in FIG. 15. It should be noted that for similar reasons, the image decoding device will also be described only in accordance with such an image encoding device, and no description will be given regarding cases of coefficient reconfiguration or without performing inverse quantization.

На фиг.19 показана блок-схема, иллюстрирующая конфигурацию примера устройства кодирования изображения, в котором используется настоящее изобретение.19 is a block diagram illustrating a configuration of an example image encoding apparatus using the present invention.

Устройство 111 кодирования изображения имеет модуль 121 вейвлет преобразования, модуль 122 квантования и модуль 123 энтропийного кодирования.The image encoding device 111 has a wavelet transform module 121, a quantization module 122, and an entropy encoding module 123.

Модуль 121 вейвлет преобразования, например, соответствует модулю 10 вейвлет преобразования по фиг.15 и выполняет аналогичную обработку. То есть изображение (данные), используемое как сигнал компонента, который подвергли необходимому сдвигу уровня постоянного тока, вводят, например, в модуль 121 вейвлет преобразования.The wavelet transform module 121, for example, corresponds to the wavelet transform module 10 of FIG. 15 and performs similar processing. That is, the image (data) used as the signal of the component that has undergone the necessary DC level shift is introduced, for example, into the wavelet transform module 121.

Модуль 121 вейвлет преобразования выполняет вейвлет преобразование входного изображения и разделяет это изображение на множество подполос. Модуль 121 вейвлет преобразования передает вейвлет коэффициент подполосы, полученный в результате вейвлет преобразования, в модуль 122 квантования.The wavelet transform module 121 performs a wavelet transform of the input image and divides this image into multiple subbands. The wavelet transform module 121 transfers the wavelet subband coefficient obtained as a result of the wavelet transform to the quantization module 122.

Модуль 122 квантования выполняет квантование вейвлет коэффициентов, переданных из модуля 121 вейвлет преобразования, и передает полученные коэффициенты квантования как его результат в модуль 123 энтропийного кодирования.The quantization module 122 quantizes the wavelet coefficients transmitted from the wavelet transform module 121 and transmits the obtained quantization coefficients as its result to the entropy encoding module 123.

Модуль 123 энтропийного кодирования выполняет энтропийное кодирование в отношении коэффициентов квантования, переданных из модуля 122 квантования, и выводит полученные, таким образом, коды как кодированное изображение (данные). Изображения, выводимые из модуля 123 энтропийного кодирования, могут после выполнения обработки управления скоростью следования битов, например, быть пакетированы и записаны или переданы в другие устройства (не показаны), подключенные к устройству 111 кодирования изображения.Entropy encoding unit 123 performs entropy encoding with respect to quantization coefficients transmitted from quantization unit 122, and outputs the codes thus obtained as an encoded image (data). The images output from the entropy encoding unit 123 may, after performing bit rate control processing, for example, be packetized and recorded or transmitted to other devices (not shown) connected to the image encoding device 111.

То есть модуль 122 квантования и модуль 123 энтропийного кодирования соответствуют, например, модулю 15 энтропийного кодирования и модулю 14 управления скоростью следования битов на фиг.15.That is, the quantization module 122 and the entropy encoding module 123 correspond, for example, to the entropy encoding module 15 and the bit rate control module 14 in FIG.

Далее, со ссылкой на фиг.20 и фиг.21, будет описан модуль 123 энтропийного кодирования по фиг.19.Next, with reference to FIG. 20 and FIG. 21, the entropy encoding module 123 of FIG. 19 will be described.

Например, как показано на фиг.20, одна подполоса конфигурирована из шести строк, от строки L1 до строки L6, и положение, соответствующее пикселю на строке в системе координат ху, обозначается как (х, у). Теперь, в каждой из диаграмм строки координата х в положении левого конца обозначается как 0, и координата у в строке L1 обозначается как 0.For example, as shown in FIG. 20, one subband is configured of six lines, from line L1 to line L6, and the position corresponding to a pixel on the line in the xy coordinate system is denoted as (x, y). Now, in each of the line diagrams, the x coordinate at the left end position is denoted by 0, and the y coordinate in the L1 row is denoted by 0.

Коэффициенты квантования в выражении в плоскости битов и в каждом положении (х, у) для подполос вводят в порядке растрового сканирования от строки L1 до строки L6, от модуля 122 квантования до модуля 123 энтропийного кодирования.The quantization coefficients in the expression in the bit plane and in each position (x, y) for the subbands are entered in raster scan order from line L1 to line L6, from quantization module 122 to entropy encoding module 123.

Другими словами, вначале коэффициент квантования, соответствующий левой оконечной координате (0, 0) строки L1, вводят в модуль 123 энтропийного кодирования. Далее коэффициент после квантования, соответствующий координате, расположенной рядом справа (1, 0) от координаты (0, 0), вводят в модуль 123 энтропийного кодирования, и коэффициенты после квантования, соответствующие соответствующим координатам, распложенным рядом с координатами, в которые были введены коэффициенты после квантования, последовательно вводят в модуль 123 энтропийного кодирования до тех пор, пока не будет получена координата на правом конце строки L1. После ввода всех коэффициентов, прошедших квантование в координатах на строке L1, коэффициенты после квантования, соответствующие каждой координате на строке L2, от координаты левого конца строки L2 (0, 1) последовательно до координаты на правом конце, вводят в модуль 123 энтропийного кодирования, и аналогично от строки L3 до строки L6, квантованные коэффициенты, соответствующие координатам на каждой строке, вводят в модуль 123 энтропийного кодирования.In other words, first, a quantization coefficient corresponding to the left end coordinate (0, 0) of the line L1 is input to the entropy coding unit 123. Next, the coefficient after quantization, corresponding to the coordinate located next to the right (1, 0) from the coordinate (0, 0), is entered into the entropy coding module 123, and the coefficients after quantization corresponding to the corresponding coordinates located next to the coordinates into which the coefficients were entered after quantization, they are sequentially introduced into entropy coding unit 123 until a coordinate is obtained at the right end of line L1. After entering all the coefficients that have been quantized in coordinates on the line L1, the coefficients after quantization corresponding to each coordinate on the line L2, from the coordinate of the left end of the line L2 (0, 1) sequentially to the coordinate on the right end, are entered into the entropy encoding module 123, and similarly, from row L3 to row L6, quantized coefficients corresponding to the coordinates on each row are input to entropy encoding unit 123.

Например, на фиг.21, как показано в верхнем левой части схемы, после ввода двенадцати квантованных коэффициентов в модуль 123 энтропийного кодирования, в порядке от координаты на левом конце строки L1 на фиг.20, модуль 123 энтропийного кодирования кодирует квантованные коэффициенты с приращениями, равными заданному количеству w (w=4 на фиг.21), которое определено заранее.For example, in FIG. 21, as shown in the upper left part of the diagram, after entering the twelve quantized coefficients into the entropy encoding unit 123, in order from the coordinate at the left end of the line L1 in FIG. 20, the entropy encoding unit 123 encodes the quantized incremental coefficients, equal to a given amount w (w = 4 in FIG. 21), which is predetermined.

Далее квантованные коэффициенты, представленные в верхней левой части на фиг.21, каждый из которых выражен абсолютными значениями его кода, разделенными на двоичные цифры (выражение в плоскости бита), и на примере, показанном на фиг.21, квантованные коэффициенты "-0101", "+0011", "-0110", "+0010", "+0011", "+0110", "0000", "-ООН", "+1101","-0100", "+0111" и "-1010" на одной строке (строке L1 на фиг.20) вводят в данном порядке в модуль 123 энтропийного кодирования.Next, the quantized coefficients presented in the upper left part of Fig. 21, each of which is expressed in absolute values of its code, divided into binary digits (expression in the bit plane), and in the example shown in Fig. 21, the quantized coefficients "-0101" , "+0011", "-0110", "+0010", "+0011", "+0110", "0000", "-UN", "+1101", "- 0100", "+0111" and “-1010” on one line (line L1 in FIG. 20) is entered in this order into entropy encoding unit 123.

Каждый квантованный коэффициент состоит из кода квантованного коэффициента, выраженного как "+" (положительный) или "-" (отрицательный) (ниже называется знаком (Sign) квантованных коэффициентов), и абсолютного значения квантованного коэффициента, выраженного в двоичной форме. На фиг.21, в битах, представляющих значения каждой цифры абсолютного значения квантованных коэффициентов, бит на верхней стороне на чертеже представляет бит наивысшего порядка (бит разряда с наивысшим порядком). В соответствии с этим, в квантованном коэффициенте "-0101" его знак равен "-", и абсолютное значение, выраженное в двоичной форме, равно "0101", поэтому десятичное представление такого квантованного коэффициента составляет "-5".Each quantized coefficient consists of a code of a quantized coefficient expressed as "+" (positive) or "-" (negative) (hereinafter referred to as the Sign of quantized coefficients) and the absolute value of the quantized coefficient expressed in binary form. In FIG. 21, in bits representing the values of each digit of the absolute value of the quantized coefficients, the bit on the upper side in the figure represents the highest order bit (highest order bit). Accordingly, in the quantized coefficient “-0101”, its sign is “-”, and the absolute value expressed in binary form is “0101”, so the decimal representation of such a quantized coefficient is “-5”.

Вначале, модуль 123 энтропийного кодирования определяет, равны ли 0 все квантованные коэффициенты (абсолютные значения) одной входной строки, и в соответствии с результатами определения выводит код, обозначающий, равны ли 0 все квантованные коэффициенты строки, предназначенные для кодирования. В случае определения, что все квантованные коэффициенты равны 0, модуль 123 энтропийного кодирования выводит 0 в качестве кода, обозначающего, равны или нет 0 все квантованные коэффициенты строки, и заканчивает кодирование квантованных коэффициентов строки, выполняемое в настоящее время. Кроме того, в случае, когда определяется, что значение всех квантованных коэффициентов не равно 0 (не только для квантованных коэффициентов, равных 0), модуль 123 энтропийного кодирования выводит 1 как код, обозначающий, что все или нет квантованные коэффициенты строки равны 0.First, the entropy encoding unit 123 determines whether all quantized coefficients (absolute values) of one input string are equal to 0, and according to the determination results, outputs a code indicating whether all quantized coefficients of the string intended for encoding are equal to 0. If it is determined that all the quantized coefficients are 0, the entropy encoding unit 123 outputs 0 as a code indicating whether or not all quantized row coefficients are equal to 0 and ends the encoding of the quantized row coefficients currently being executed. In addition, in the case where it is determined that the value of all quantized coefficients is not 0 (not only for quantized coefficients equal to 0), entropy encoding module 123 outputs 1 as a code indicating that all or not quantized row coefficients are 0.

В случае, когда вводят двенадцать квантованных коэффициентов, показанных в верхней левой части чертежа, переменная задержка квантованных коэффициентов вводимой строки равна не только 0, тогда модуль 123 энтропийного кодирования выводит 1 в виде кода, как показано в верхней правой части чертежа.In the case where the twelve quantized coefficients shown in the upper left part of the drawing are introduced, the variable delay of the quantized coefficients of the input string is not only 0, then the entropy encoding module 123 outputs 1 in the form of a code, as shown in the upper right part of the drawing.

После того как код 1, обозначающий, что не все квантованные коэффициенты равны О, будет выведен как код, обозначающий, все или нет квантованные коэффициенты строки равны 0, далее модуль 123 энтропийного кодирования выполняет кодирование первых четырех (w) входных квантованных коэффициентов "-0101", "+0011", "-0110" и "+0010".After code 1, indicating that not all quantized coefficients are equal to O, will be output as a code indicating whether or not all quantized row coefficients are 0, then entropy encoding module 123 encodes the first four (w) input quantized coefficients "-0101 "," +0011 "," -0110 "and" +0010 ".

Модуль 123 энтропийного кодирования сравнивает максимальные значащие разряды четырех последовательных квантованных коэффициентов, введенных в этот момент времени (значение переменной В на фиг.21), с максимальными значащими разрядами четырех (w) квантованных, кодированных (введенных) в предыдущий раз, определяет, был ли изменен максимальный значащий разряд, и выводит код, обозначающий максимальные значащие разряды квантованных коэффициентов.Entropy coding unit 123 compares the maximum significant bits of four consecutive quantized coefficients entered at this point in time (the value of variable B in FIG. 21) with the maximum significant bits of four (w) quantized, encoded (entered) the previous time, determines whether the maximum significant digit is changed, and displays a code indicating the maximum significant bits of the quantized coefficients.

Теперь максимальные значащие разряды представляют собой максимальные значащие разряды квантованного коэффициента, имеющего наибольшие значения, из четырех (w) квантованных коэффициентов, которые должны быть кодированы вместе. Другими словами, максимальный значащий разряд обозначает, с квантованным коэффициентом, имеющим наибольшее абсолютное значение, из четырех квантованных коэффициентов, в каком разряде находится 1 с наибольшим порядком. В соответствии с этим, максимальный значащий разряд из четырех квантованных коэффициентов "-0101", "+0011", "-0110" и "+0010", которые должны быть кодированы вместе, например, равен "3", что представляет собой разряд, в котором находится 1 наибольшего порядка, для квантованного коэффициента "-0110", имеющего наибольшее абсолютное значение.Now, the maximum significant bits represent the maximum significant bits of the quantized coefficient having the largest values of the four (w) quantized coefficients that must be encoded together. In other words, the maximum significant digit indicates, with the quantized coefficient having the largest absolute value, of the four quantized coefficients, in which digit is the 1 with the highest order. Accordingly, the maximum significant bit of the four quantized coefficients "-0101", "+0011", "-0110" and "+0010", which must be encoded together, for example, is equal to "3", which is a bit, which contains 1 of the highest order for the quantized coefficient "-0110", which has the largest absolute value.

Кроме того, код, обозначающий максимальные значащие разряды квантованных коэффициентов, состоит из кода, идентифицирующего, изменился ли максимальный значащий разряд, код, обозначающий, увеличился или уменьшился максимальный значащий разряд, и код, обозначающий величину изменения максимального значащего разряда, в случае, когда максимальный значащий разряд не изменился, код, обозначающий, увеличился или уменьшился ли максимальный значащий разряд, и код, обозначающий величину изменения максимального значащего разряда, не выводят.In addition, the code denoting the maximum significant bits of the quantized coefficients consists of a code identifying whether the maximum significant bit has changed, a code indicating whether the maximum significant bit has increased or decreased, and a code indicating the magnitude of the change in the maximum significant bit, in the case where the maximum the significant digit has not changed, a code indicating whether the maximum significant digit has increased or decreased, and a code indicating the magnitude of the change in the maximum significant digit is not output.

В случае, когда максимальный значащий разряд изменился, по результатам сравнения максимальных значащих разрядов, модуль 123 энтропийного кодирования выводит код 1, обозначающий, что максимальный значащий разряд изменился, и в случае, когда максимальный значащий разряд не изменился, выводит код 0, обозначающий, что максимальный значащий разряд не изменился.In the case when the maximum significant digit has changed, according to the results of comparing the maximum significant bits, entropy encoding module 123 outputs a code 1 indicating that the maximum significant digit has changed, and in the case where the maximum significant digit has not changed, displays a code 0 indicating that the maximum significant digit has not changed.

Кроме того, что касается определения того, изменился ли или нет максимальный значащий разряд, в случае, когда четыре квантованных коэффициента вводят в первый раз, то есть в случае, когда вводят первые квантованные коэффициенты подполосы, предназначенной для кодирования (например, в случае, когда четыре квантованных коэффициента вводят с левой стороны, в порядке строки L1 по фиг.20), при этом отсутствуют квантованные коэффициенты подполосы, которые были кодированы ранее, поэтому максимальный значащий разряд ранее кодированных четырех (w) квантованных коэффициентов устанавливается равным 0.In addition, with regard to determining whether or not the maximum significant digit has changed, in the case when the four quantized coefficients are introduced for the first time, that is, in the case when the first quantized coefficients of the subband intended for encoding are introduced (for example, in the case when four quantized coefficients are entered on the left side, in the order of the line L1 of Fig. 20), while there are no quantized subband coefficients that were previously encoded, therefore, the maximum significant bit of the previously encoded four (w) kva The adjusted coefficients are set equal to 0.

В соответствии с этим, модуль 123 энтропийного кодирования сравнивает максимальный значащий разряд четырех квантованных коэффициентов "-0101", "+0011", "-0110" и "+0010", введенных в этот раз, который представляет собой 3, с максимальным значащим разрядом четырех квантованных коэффициентов, кодированных в предыдущий раз, который равен 0, и выводит код 1, поскольку максимальный значащий разряд изменился.Accordingly, entropy encoding module 123 compares the maximum significant bit of the four quantized coefficients “-0101”, “+0011”, “-0110” and “+0010” entered this time, which is 3, with the maximum significant bit four quantized coefficients encoded the previous time, which is 0, and outputs code 1 because the maximum significant digit has changed.

Кроме того, модуль 123 энтропийного кодирования выводит код, обозначающий, увеличился ли или уменьшился максимальный значащий разряд после кода 1, обозначающего, что максимальный значащий разряд изменился. Здесь модуль 123 энтропийного кодирования выводит 0, в случае, когда максимальный значащий разряд увеличился, и выводит 1, когда максимальный значащий разряд уменьшился.In addition, entropy encoding unit 123 outputs a code indicating whether the maximum significant digit has increased or decreased after code 1, indicating that the maximum significant digit has changed. Here, entropy encoding unit 123 outputs 0 when the maximum significant bit has increased, and outputs 1 when the maximum significant bit has decreased.

Предыдущий максимальный значащий разряд был равен 0, и текущий максимальный значащий разряд равен 3, поэтому, как показано в верхней правой части на чертеже, модуль 123 энтропийного кодирования выводит код 0, обозначающий, что максимальный значащий разряд увеличился.The previous maximum significant digit was 0, and the current maximum significant digit was 3, therefore, as shown in the upper right part of the drawing, entropy encoding module 123 outputs a code 0 indicating that the maximum significant digit has increased.

Кроме того, после вывода кода, обозначающего, увеличился ли или уменьшился максимальный значащий разряд, модуль 123 энтропийного кодирования выводит код, обозначающий, насколько максимальный значащий разряд увеличился или уменьшился, с помощью, например, кода, обозначающего величину изменения максимального значащего разряда. В частности, при величине изменения максимального значащего разряда (то есть при величине увеличения или величине уменьшения), равной n, модуль 123 энтропийного кодирования выводит (n-1) код Os и выводит код 1 после этих Os.In addition, after outputting a code indicating whether the maximum significant bit has increased or decreased, the entropy coding unit 123 outputs a code indicating how much the maximum significant bit has increased or decreased, using, for example, a code indicating the magnitude of the change in the maximum significant bit. In particular, when the magnitude of the change in the maximum significant digit (that is, when the magnitude of the increase or the magnitude of the decrease) is n, the entropy encoding unit 123 outputs the (n-1) code Os and outputs the code 1 after these Os.

В случае кодирования первых четырех квантованных коэффициентов, показанных на фиг.3, величина изменения максимального значащего разряда равна 3 (=3-0), в результате чего модуль 123 энтропийного кодирования выводит две (=3-1) Os, и дополнительно выводит 1 в качестве кода.In the case of encoding the first four quantized coefficients shown in FIG. 3, the magnitude of the change in the maximum significant digit is 3 (= 3-0), as a result of which the entropy encoding module 123 outputs two (= 3-1) Os, and additionally outputs 1 to quality of code.

Затем модуль 123 энтропийного кодирования выводит код для максимальных значащих разрядов, обозначающих абсолютное значение каждого из четырех (w), квантованных коэффициентов, которые должны быть кодированы в это время. То есть модуль 123 энтропийного кодирования выводит в отношении каждого квантованного коэффициента код, обозначающий величину каждого разряда для абсолютного значения квантованного коэффициента, от наибольшего разряда значащих разрядов, обозначенных максимальным значащим разрядом, в порядке к наименьшему разряду.Then, entropy coding unit 123 outputs a code for maximum significant digits indicating the absolute value of each of the four (w) quantized coefficients that must be encoded at this time. That is, entropy coding unit 123 outputs, for each quantized coefficient, a code indicating the value of each digit for the absolute value of the quantized coefficient, from the largest digit of the significant digits indicated by the maximum significant digit, in order to the smallest digit.

Квантованные коэффициенты, которые должны быть кодированы в это время, представляют собой "-0101", "+0011", "-0110" и "+0010", поэтому модуль 123 энтропийного кодирования вначале выводит код для максимальных значащих разрядов, обозначающих абсолютное значение квантованного коэффициента "-0101", введенного первым. Здесь максимальный значащий разряд равен 3, поэтому модуль 123 энтропийного кодирования выводит значение "1" наибольшего разряда из значащих разрядов, обозначенных максимальным значащим разрядом квантованного коэффициента "-0101" (то есть третий разряд), значение "0" разряда, на единицу меньшее наибольшего разряда (второй разряда) и значение "1" для наименьшего другого разряда. Таким образом выводят код "101" для значащих разрядов, обозначающих абсолютное значение квантованного коэффициента "-0101".The quantized coefficients to be encoded at this time are "-0101", "+0011", "-0110" and "+0010", so entropy encoding module 123 first outputs a code for the maximum significant digits indicating the absolute value of the quantized coefficient "-0101" entered first. Here, the maximum significant digit is 3, therefore, the entropy coding module 123 outputs the value “1” of the largest digit from the significant digits indicated by the maximum significant digit of the quantized coefficient “-0101” (that is, the third digit), the value “0” of the digit is one less than the largest discharge (second discharge) and the value "1" for the smallest other discharge. Thus, the code "101" is derived for significant digits indicating the absolute value of the quantized coefficient "-0101".

Таким же образом модуль 123 энтропийного кодирования выводит в данном порядке коды "011", "110" и "010" для значащих разрядов, обозначающих абсолютные величины квантованных коэффициентов "+0011", "-0110" и "+0010". В соответствии с этим, "101011110010" выводят как код для максимальных значащих разрядов, обозначающих абсолютные значения каждого из "-0101", "+0011", "-0110" и "+0010". Таким образом, модуль 123 энтропийного кодирования кода выводит код длиной, соответствующей максимальным значащим разрядам четырех квантованных коэффициентов, которые должны быть кодированы как код, обозначающий абсолютные значения квантованных коэффициентов.In the same way, entropy encoding module 123 outputs in this order the codes “011”, “110” and “010” for significant digits indicating the absolute values of the quantized coefficients “+0011”, “-0110” and “+0010”. Accordingly, "101011110010" is output as a code for the maximum significant digits indicating the absolute values of each of "-0101", "+0011", "-0110" and "+0010". Thus, the entropy code encoding unit 123 outputs a code with a length corresponding to the maximum significant bits of the four quantized coefficients, which should be encoded as a code indicating the absolute values of the quantized coefficients.

Наконец, модуль 123 энтропийного кодирования выводит код, обозначающий знак каждого из четырех (w) квантованных коэффициентов, в которых абсолютное значение не равно 0. Теперь, в случае, когда знак квантованного коэффициента представляет собой "+" (положительный), модуль 123 энтропийного кодирования выводит код 0, и в случае, когда знак квантованного коэффициента "-" (отрицательный), выводит код 1.Finally, entropy coding unit 123 outputs a code denoting the sign of each of the four (w) quantized coefficients in which the absolute value is not 0. Now, in the case where the sign of the quantized coefficient is “+” (positive), entropy coding unit 123 outputs code 0, and in the case where the sign of the quantized coefficient is “-” (negative), it outputs code 1.

Квантованные коэффициенты, которые должны быть кодированы в этот раз, представляют собой "-0101", "+0011", "-0110" и "+0010", и знаки этих квантованных коэффициентов представляют собой по порядку отрицательный, положительный, отрицательный, положительный, как показано в верхней правой части чертежа, при этом модуль 123 энтропийного кодирования выводит "1010" как код, обозначающий знак каждого из квантованных коэффициентов.The quantized coefficients to be encoded this time are "-0101", "+0011", "-0110" and "+0010", and the signs of these quantized coefficients are in order negative, positive, negative, positive, as shown in the upper right part of the drawing, the entropy coding unit 123 outputs “1010” as a code indicating the sign of each of the quantized coefficients.

После кодирования введенных в первый раз четырех квантованных коэффициентов модуль 123 энтропийного кодирования снова кодирует следующие последовательные четыре квантованных коэффициента "+0011", "+0110", "0000" и "-0011".After encoding the four quantized coefficients introduced for the first time, the entropy encoding module 123 again encodes the next four consecutive quantized coefficients of “+0011”, “+0110”, “0000” and “-0011”.

Таким же образом, как и в случае кодирования квантованных коэффициентов, введенных первыми (в предыдущий раз), модуль 123 энтропийного кодирования вначале сравнивает максимальный значащий разряд четырех (w) квантованных коэффициентов, вновь введенных в этот раз, с максимальными значащими разрядами четырех (w) квантованных коэффициентов, кодированных в предыдущий раз.In the same way as in the case of encoding the quantized coefficients introduced first (the previous time), the entropy encoding module 123 first compares the maximum significant bit of the four (w) quantized coefficients newly introduced this time with the maximum significant bits of four (w) quantized coefficients encoded the previous time.

Максимальный значащий разряд четырех (w) квантованных коэффициентов, введенных в этот раз, "+0011", "+0110", "0000" и "-0011", равен "3", что представляет собой разряд, в котором располагается 1 наивысшего порядка, для квантованного коэффициента "+0110", имеющего наибольшее абсолютное значение, и он имеет такое же значение, что и максимальные значащие разряды квантованных коэффициентов, кодированных в предыдущий раз, поэтому модуль 123 энтропийного кодирования выводит код 0, обозначающий, что максимальный значащий разряд не изменился.The maximum significant digit of the four (w) quantized coefficients introduced this time, "+0011", "+0110", "0000" and "-0011", is "3", which is the discharge in which 1 of the highest order is located , for the quantized coefficient "+0110" having the largest absolute value, and it has the same value as the maximum significant bits of the quantized coefficients encoded the previous time, therefore, the entropy encoding module 123 outputs a code 0 indicating that the maximum significant bit is not has changed.

Далее, модуль 123 энтропийного кодирования выводит код "011110000011", в котором код для максимальных значащих разрядов "011", "110", "000" и "011" обозначает абсолютные значения каждого из четырех (w) квантованных коэффициентов "+0011", "+0110", "0000" и "-0011", которые должны быть кодированы в этот раз, выстроенных в указанном порядке.Further, entropy encoding module 123 outputs a code “011110000011” in which the code for the maximum significant digits “011”, “110”, “000” and “011” denotes the absolute values of each of the four (w) quantized coefficients “+0011", "+0110", "0000" and "-0011", which should be encoded this time, arranged in that order.

После вывода кода, обозначающего абсолютные значения квантованных коэффициентов, модуль 123 энтропийного кодирования выводит код, обозначающий знак каждого из четырех (w) квантованных коэффициентов, абсолютное значение которых не равно 0.After outputting a code indicating the absolute values of the quantized coefficients, the entropy coding unit 123 outputs a code indicating the sign of each of the four (w) quantized coefficients, the absolute value of which is not 0.

Квантованные коэффициенты, которые должны быть кодированы в этот раз, представляют собой "+0011", "+0110", "0000" и "-0011", и третий квантованный коэффициент "0000" имеет абсолютное значение ноль, в результате чего модуль 123 энтропийного кодирования выводит код "001", обозначающий знаки этих квантованных коэффициентов, которые не равны 0, "+0011", "+0110" и "-0011" (положительный, положительный, отрицательный).The quantized coefficients to be encoded this time are “+0011”, “+0110”, “0000” and “-0011”, and the third quantized coefficient “0000” has an absolute value of zero, resulting in an entropy module 123 encoding outputs the code "001", indicating the signs of these quantized coefficients that are not equal to 0, "+0011", "+0110" and "-0011" (positive, positive, negative).

После кодирования четырех квантованных коэффициента "+0011", "+0110", "0000" и "-0011" модуль 123 энтропийного кодирования затем кодирует следующие последовательные четыре квантованных коэффициента "+1101", "-0100", "+0111" и "-0101".After encoding the four quantized coefficients "+0011", "+0110", "0000" and "-0011", the entropy encoding module 123 then encodes the following four consecutive quantized coefficients of "+1101", "-0100", "+0111" and " 0101 ".

Модуль 123 энтропийного кодирования вначале сравнивает максимальный значащий разряд четырех (w) квантованных коэффициентов, вновь введенных в этот раз, с максимальными значащими разрядами четырех квантованных коэффициентов, кодированных в предыдущий раз.Entropy coding unit 123 first compares the maximum significant bit of the four (w) quantized coefficients newly introduced this time with the maximum significant bits of the four quantized coefficients encoded the previous time.

Максимальный значащий разряд четырех (w) квантованных коэффициентов, введенных в этот раз, "+1101", "-0100", "+0111" и "-0101" равен "4", что представляет собой разряд, в котором располагается 1 наибольшего порядка для квантованного коэффициента "+1101", имеющего наибольшее абсолютное значение, и он отличается от максимальных значащих разрядов "3" квантованных коэффициентов, кодированных в предыдущий раз, в результате чего модуль 123 энтропийного кодирования выводит код 1, обозначающий, что максимальный значащий разряд изменился.The maximum significant digit of the four (w) quantized coefficients introduced this time, "+1101", "-0100", "+0111" and "-0101" is "4", which is the discharge in which 1 of the highest order is located for the quantized coefficient “+1101” having the largest absolute value, and it differs from the maximum significant bits “3” of the quantized coefficients encoded the previous time, as a result of which the entropy coding unit 123 outputs a code 1 indicating that the maximum significant digit has changed.

Кроме того, предыдущий максимальный значащий разряд был равен 3, и максимальный значащий разряд в этот раз равен 4, в результате чего модуль 123 энтропийного кодирования выводит код 0, обозначающий, что максимальный значащий разряд увеличился, как показано с правой стороны на чертеже.In addition, the previous maximum significant digit was 3, and the maximum significant digit this time was 4, as a result of which the entropy encoding module 123 outputs a code 0 indicating that the maximum significant digit has increased, as shown on the right side of the drawing.

Кроме того, модуль 123 энтропийного кодирования выводит код, обозначающий, насколько увеличился максимальный значащий разряд. В этом случае величина изменения максимального значащего разряда равна 1 (=4-3), в результате чего модуль энтропийного кодирования выводит 0 (=1-1), нули, и дополнительно выводит 1 (то есть выводит код 1).In addition, entropy coding unit 123 outputs a code indicating how much the maximum significant digit has increased. In this case, the magnitude of the change in the maximum significant digit is 1 (= 4-3), as a result of which the entropy coding module outputs 0 (= 1-1), zeros, and additionally outputs 1 (that is, outputs code 1).

Далее модуль 123 энтропийного кодирования выводит код "11010100011010", в котором код для максимальных значащих разрядов "1101", "0100", "0111" и "1010", обозначающий абсолютные значения каждого из четырех (w) квантованных коэффициентов "+1101", "-0100", "+0111" и "-1010", которые должны быть кодированы в этот раз, был выстроен в указанном порядке.Next, entropy encoding module 123 outputs the code “11010100011010”, in which the code for the maximum significant digits is “1101”, “0100”, “0111” and “1010”, indicating the absolute values of each of the four (w) quantized coefficients “+1101", "-0100", "+0111" and "-1010", which should be encoded this time, was arranged in the indicated order.

После вывода кода, обозначающего абсолютные значения квантованных коэффициентов, модуль 123 энтропийного кодирования выводит код, обозначающий знак каждого из четырех (w) квантованных коэффициентов, для которых квантованный коэффициент не равен 0.After outputting a code indicating the absolute values of the quantized coefficients, the entropy coding unit 123 outputs a code indicating the sign of each of the four (w) quantized coefficients for which the quantized coefficient is not 0.

Квантованные коэффициенты, предназначенные для кодирования в этот раз, представляют собой "+1101", "-0100", "+0111" и "-010", и знаки этих квантованных коэффициентов представляют собой в указанном порядке положительный, отрицательный, положительный, отрицательный, как показано в нижней правой части на чертеже, при этом модуль 123 энтропийного кодирования выводит код "0101", обозначающий знак каждого из квантованных коэффициентов.The quantized coefficients to be encoded this time are "+1101", "-0100", "+0111" and "-010", and the signs of these quantized coefficients are in this order positive, negative, positive, negative, as shown in the lower right part of the drawing, the entropy coding unit 123 outputs a code “0101” indicating the sign of each of the quantized coefficients.

Модуль 123 энтропийного кодирования, таким образом, кодирует последовательное заданное количество (w) входных квантованных коэффициентов. Таким образом, после кода, обозначающего, были ли выведены все или нет квантованные коэффициенты в строке, предназначенные для кодирования, равные 0, и код, обозначающий, что не все квантованные коэффициенты строки равны 0, выводят из модуля 123 энтропийного кодирования, затем выводят код, обозначающий максимальные значащие разряда для w квантованных коэффициентов, код, обозначающий абсолютные значения (выражение в плоскости битов) w квантованных коэффициентов, и код, обозначающий знаки квантованных коэффициентов.Entropy encoding unit 123 thus encodes a sequential predetermined number (w) of input quantized coefficients. Thus, after a code indicating whether or not all quantized coefficients in a row intended for encoding were 0, and a code indicating that not all quantized row coefficients are 0, are derived from entropy encoding module 123, then a code is output denoting the maximum significant digits for w quantized coefficients, a code denoting the absolute values (expression in the bit plane) of w quantized coefficients, and a code denoting the signs of the quantized coefficients.

Что касается кода, обозначающего максимальные значащие разряда из этих w квантованных коэффициентов, код, обозначающий абсолютные значения w квантованных коэффициентов, и код, обозначающий знаки квантованных коэффициентов, код, обозначающий максимальные значащие разряда следующих w квантованных коэффициентов, код, обозначающий абсолютные значения w квантованных коэффициентов, и код, обозначающий знаки квантованных коэффициентов, повторно выводят до тех пор, пока все квантованные коэффициенты в этой строке не будут кодированы.Regarding the code denoting the maximum significant bits of these w quantized coefficients, the code denoting the absolute values of w quantized coefficients and the code denoting the signs of the quantized coefficients, the code denoting the maximum significant bits of the next w quantized coefficients, the code denoting the absolute values of w quantized coefficients , and a code denoting the signs of the quantized coefficients is repeatedly output until all the quantized coefficients in this row are encoded.

Далее приведено описание кодирования квантованных коэффициентов в порядке растрового сканирования, но порядок, в котором квантованные коэффициенты кодируют, не обязательно должен представлять собой порядок растрового сканирования. Например, в случае кодирования квантованных коэффициентов подполосы, показанном на фиг.20, может быть составлена компоновка, в которой квантованные коэффициенты кодированы в положениях (0, 0), (0, 1), (0, 2) и (0, 3) (то есть в положениях с левого конца на чертеже каждой из строки L1 до строки L4), и следующие квантованные коэффициенты кодируют в положениях (1, 0), (1, 1), (1, 2) и (1, 3) и так далее, причем квантованные коэффициенты в четырех положениях, вертикально совмещенных на чертеже, используются как w квантованных коэффициентов и кодированных в указанном порядке w одновременно.The following is a description of the encoding of the quantized coefficients in raster scan order, but the order in which the quantized coefficients encode does not have to be a raster scan order. For example, in the case of encoding the quantized subband coefficients shown in FIG. 20, an arrangement can be made in which the quantized coefficients are encoded at (0, 0), (0, 1), (0, 2) and (0, 3) (i.e., in the positions from the left end in the drawing of each of the line L1 to the line L4), and the following quantized coefficients are encoded in positions (1, 0), (1, 1), (1, 2) and (1, 3) and so on, with the quantized coefficients in four positions vertically aligned in the drawing, used as w quantized coefficients and encoded in the specified time d w simultaneously.

Модуль 123 энтропийного кодирования, показанный на фиг.1, который выполняет такую обработку, как описанная выше, выполнен, как более подробно показано на фиг.22.Entropy encoding module 123, shown in FIG. 1, which performs processing such as described above, is implemented as shown in more detail in FIG.

Модуль 123 энтропийного кодирования включает в себя модуль 161 определения строки, модуль 162 кодирования КПД (VLC, код переменной длины), модуль 163 расчета максимального значащего разряда, модуль 164 кодирования КПД, модуль 165 выделения значащего разряда, модуль 166 кодирования КПД, модуль 167 выделения знака, модуль 168 кодирования КПД и модуль 169 соединения кода.Entropy encoding module 123 includes a string determination module 161, an efficiency coding module (VLC, variable length code) 162, a maximum significant discharge calculation module 163, an efficiency encoding module 164, a significant discharge allocation module 165, an efficiency encoding module 166, an allocation module 167 sign, efficiency encoding module 168 and code connection module 169.

Квантованные коэффициенты, выводимые из модуля 122 квантования (фиг.19), передают (вводят) в модуль 161 определения строки, модуль 163 расчета максимального значащего разряда, модуль 165 выделения значащего разряда и модуль 167 выделения знака.The quantized coefficients output from the quantization module 122 (FIG. 19) are transmitted (input) to the string determination module 161, the maximum significant digit calculation module 163, the significant digit allocation module 165 and the sign extraction module 167.

Модуль 161 определения строки определяет, равны ли 0 все квантованные коэффициенты одной строки, предназначенной для кодирования, введенные из модуля 122 квантования, и предоставляет информацию, обозначающую результаты этого определения, в модуль 162 кодирования КПД.Row determination module 161 determines whether all quantized coefficients of one row intended for encoding entered from quantization module 122 are equal to 0, and provides information indicating the results of this determination to efficiency encoding module 162.

На основе информации, обозначающей результаты определения, выполненного с помощью модуля 161 определения строки, модуль 162 кодирования КПД выводит код, обозначающий, равны ли 0 все квантованные коэффициенты строки, предназначенные для кодирования, в модуль 169 соединения кода.Based on the information indicating the results of the determination made using the row determination module 161, the efficiency encoding module 162 outputs a code indicating whether all quantized row coefficients intended for encoding are equal to 0 to the code connection module 169.

Модуль 163 расчета максимального значащего разряда рассчитывает максимальные значащие разряды для w непрерывных квантованных коэффициентов, введенных из модуля 122 квантования, и предоставляет информацию, обозначающую результаты своих расчетов, в модуль 164 кодирования КПД и модуль 165 выделения значащего разряда.The maximum significant digit calculation module 163 calculates the maximum significant bits for w continuous quantized coefficients input from the quantization module 122 and provides information indicating the results of its calculations to the efficiency encoding module 164 and the significant digit extraction module 165.

На основе информации, обозначающей результаты расчета, из модуля 163 расчета максимального значащего разряда, модуль 164 кодирования КПД передает код, обозначающий максимальные значащие разряда для w квантованных коэффициентов, в модуль 169 соединения кода.Based on the information indicating the calculation results from the maximum significant discharge calculation module 163, the efficiency coding module 164 transmits a code indicating the maximum significant discharge for w quantized coefficients to the code connection module 169.

На основе информации, обозначающей результаты расчета, из модуля 163 расчета максимального значащего разряда, модуль 165 выделения значащего разряда выделяет значащий разряд для w квантованных коэффициентов, передаваемых из модуля 122 квантования, и передает (данные) о выделенных значащих разрядах квантованных коэффициентов в модуль 166 кодирования КПД и модуль 167 выделения знака.Based on the information indicating the calculation results from the maximum significant discharge calculation unit 163, the significant discharge allocation unit 165 extracts a significant discharge for w quantized coefficients transmitted from the quantization module 122 and transmits (data) about the selected significant bits of the quantized coefficients to the encoding module 166 Efficiency and character extraction module 167.

Модуль 166 кодирования КПД кодирует абсолютные значения этих квантованных коэффициентов на основе значащих разрядов квантованных коэффициентов из модуля 165 выделения значащего разряда и передает абсолютные значения квантованных коэффициентов, полученных в результате, в модуль 169 соединения кода.The efficiency encoding module 166 encodes the absolute values of these quantized coefficients based on the significant bits of the quantized coefficients from the significant bit allocation module 165 and transmits the absolute values of the quantized coefficients resulting in the code connecting module 169.

Модуль 167 выделения знака выделяет знаки квантованных коэффициентов, передаваемых из модуля 122 квантования, на основе значащих разрядов по квантованным коэффициентам, из модуля 165 выделения значащего разряда и передает (данные) выделенные знаки в модуль 168 кодирования КПД.The sign extraction module 167 extracts the signs of the quantized coefficients transmitted from the quantization module 122, based on the significant bits of the quantized coefficients, from the significant bit allocation module 165 and transmits (data) the extracted characters to the efficiency encoding module 168.

Модуль 168 кодирования КПД кодирует (данные) выделенные знаки, передаваемые из модуля 167 выделения знака, и передает код, обозначающий знаки квантованных коэффициентов, полученных таким образом, в модуль 169 соединения кода.The efficiency encoding module 168 encodes (data) extracted characters transmitted from the character extraction module 167, and transmits a code indicating the signs of the quantized coefficients thus obtained to the code connection module 169.

Модуль 169 соединения кода соединяет код, обозначающий, равны ли 0 все квантованные коэффициенты строки, код, обозначающий максимум значащих разрядов, код, обозначающий абсолютное значение квантованных коэффициентов, и код, обозначающий знаки квантованных коэффициентов, переданных из модуля 162 кодирование КПД, модуля 164 кодирования КПД, модуля 166 кодирования КПД и модуля 168 кодирования КПД соответственно, и выводит в качестве кодированного изображения (данных).Code connection module 169 connects a code indicating whether all quantized row coefficients are equal to 0, a code indicating maximum significant bits, a code indicating the absolute value of the quantized coefficients, and a code indicating the signs of the quantized coefficients transmitted from the efficiency encoding module 162, encoding module 164 Efficiency, Efficiency coding module 166 and Efficiency coding module 168, respectively, and outputs as an encoded image (data).

Далее обработка кодирования, выполняемая устройством 111 кодирования изображения (фиг.19), будет описана со ссылкой на блок-схему последовательности операций, показанную на фиг.23. Эта обработка кодирования начинается после ввода изображения (данных), предназначенного для кодирования, в модуль 121 вейвлет преобразования.Next, the encoding processing performed by the image encoding apparatus 111 (Fig. 19) will be described with reference to the flowchart shown in Fig. 23. This encoding processing starts after the image (data) intended for encoding is input into the wavelet transform module 121.

На этапе S111 модуль 121 вейвлет преобразования подвергает входное изображение вейвлет преобразованию, разделяет входное изображение на множество подполос, и передает вейвлет коэффициенты каждой подполосы в модуль 122 квантования.In step S111, the wavelet transform module 121 subjects the input image to the wavelet transform, splits the input image into multiple subbands, and transmits the wavelet coefficients of each subband to quantization module 122.

На этапе S112 модуль 122 квантования выполняет квантование вейвлет коэффициентов, переданных из модуля 121 вейвлет преобразования, и передает полученные в результате квантованные коэффициенты в модуль 123 энтропийного кодирования. Таким образом, квантованные коэффициенты каждого из положений в подполосе в выражении плоскости бита, которое было описано со ссылкой, например, на фиг.21, вводят в модуль 123 энтропийного кодирования.In step S112, the quantization module 122 quantizes the wavelet coefficients transmitted from the wavelet transform module 121, and transmits the resulting quantized coefficients to the entropy encoding module 123. Thus, the quantized coefficients of each of the positions in the subband in the bit plane expression, which has been described with reference to, for example, in FIG. 21, are input to entropy encoding unit 123.

На этапе S113 модуль 123 энтропийного кодирования выполняет обработку энтропийного кодирования и заканчивает обработку кодирования. Хотя подробно обработка энтропийного кодирования будет описана ниже, при обработке энтропийного кодирования, как описано со ссылкой на фиг.21, модуль 123 энтропийного кодирования одновременно кодирует последовательное заданное количество (w) квантованных коэффициентов, переданных из модуля 122 квантования, и выводит, в виде кодированного изображения (данных), код, обозначающий, равны ли 0 все квантованные коэффициенты в строке, которая предназначена для кодирования, код, обозначающий максимальные значащие разряды w квантованных коэффициентов, код, обозначающий абсолютные значения квантованных коэффициентов, и код, обозначающий знаки квантованных коэффициентов.In step S113, the entropy encoding unit 123 performs entropy encoding processing and ends the encoding processing. Although the entropy encoding processing will be described in detail below, in the entropy encoding processing as described with reference to FIG. 21, the entropy encoding module 123 simultaneously encodes a sequential predetermined number (w) of quantized coefficients transmitted from the quantization module 122 and outputs it as encoded image (data), a code indicating whether all quantized coefficients are equal to 0 in the line that is intended for encoding, a code indicating the maximum significant bits w of the quantized coefficient in the code indicating the absolute values of the quantized coefficients, and code indicating the signs of the quantized coefficients.

Таким образом, устройство 111 кодирования изображения кодирует и выводит входное изображение.Thus, the image encoding apparatus 111 encodes and outputs an input image.

Далее, со ссылкой на фиг.24, будет описана обработка энтропийного кодирования, соответствующая обработке, выполняемой на этапе S113 по фиг.23.Next, with reference to FIG. 24, entropy encoding processing corresponding to the processing performed in step S113 of FIG. 23 will be described.

На этапе S112, показанном на фиг.23, квантованные коэффициенты, выводимые из модуля 122 квантования, передают (вводят) в модуль 161 определения строки, модуль 163 расчета максимального значащего разряда, модуль 165 выделения значащего разряда, модуль 167 выделения знака, модуль 123 энтропийного кодирования (фиг.22).In step S112 shown in FIG. 23, the quantized coefficients output from the quantization module 122 are passed (input) to the row determination module 161, the maximum significant digit calculation module 163, the significant digit allocation module 165, the sign extraction module 167, the entropy module 123 encoding (Fig.22).

На этапе S141 модуль 161 определения строки принимает переменную у, обозначающую строку подполосы, которая должна быть теперь кодирована как у=0, и сохраняет это значение.In step S141, the row determination module 161 receives a variable y denoting a subband string, which should now be encoded as y = 0, and stores this value.

Например, в случае кодирования квантованных коэффициентов подполосы, показанных на фиг.20, модуль 161 определения строки принимает переменную у, обозначающую строки (строку L1 - строку L6) как у=0. Следует отметить, что строка у, обозначенная переменной у, обозначает строку, в которой координата у в каждом положении (х, у) на строке подполосы равна у. В соответствии с этим, в случае, когда переменная у, которую сохраняет модуль 161 определения строки, равна, например, у=0, строка, обозначенная этой переменной, становится строкой L1, в которой координата у в каждом положении строки равна 0.For example, in the case of encoding the quantized subband coefficients shown in FIG. 20, row determination module 161 takes a variable y denoting rows (row L1 to row L6) as y = 0. It should be noted that the string y, denoted by the variable y, denotes the string in which the coordinate y in each position (x, y) on the row of the subband is equal to y. Accordingly, in the case where the variable y, which the string determination module 161 stores, is, for example, y = 0, the string denoted by this variable becomes the string L1, in which the coordinate y in each position of the string is 0.

На этапе S142 модуль 163 расчета максимального значащего разряда принимает переменную Binit, обозначающую максимальные значащие разряды из w квантованных коэффициентов, введенных первыми на строке (у-1), которая представляет строку, расположенную перед строкой у, обозначенную переменной у, сохраненной в модуле 161 определения строки, как Binit=0, и сохраняет это значение.In step S142, the maximum significant digit calculation module 163 receives the Binit variable denoting the maximum significant bits of the w quantized coefficients introduced first on the line (y-1), which represents the line before the line y, indicated by the variable y stored in the determination unit 161 strings like Binit = 0, and saves that value.

Например, в случае, когда строка (у-1) представляет собой строку L1, показанную на фиг.20, значение переменной Binit, обозначающее максимальный значащий разряд w квантованных коэффициентов, введенных первыми на строке (у-1), представляет собой максимальный значащий разряд из w квантованных коэффициентов от левой кромки строки L1 на чертеже, то есть w квантованных коэффициентов в положениях (0, 0), (1, 0), ..., (w-1, 0). Кроме того, в случае, когда переменная у, сохраненная в модуле 161 определения строки, равна у=0, строка (у-1) не существует, в результате значение переменной Binit представляет собой Binit=0.For example, in the case where the row (y − 1) is the row L1 shown in FIG. 20, the value of the variable Binit denoting the maximum significant digit w of the quantized coefficients introduced first on the row (y − 1) is the maximum significant digit of w quantized coefficients from the left edge of line L1 in the drawing, that is, w quantized coefficients at positions (0, 0), (1, 0), ..., (w-1, 0). In addition, in the case where the variable y stored in the string definition module 161 is equal to y = 0, the string (y − 1) does not exist, as a result, the value of the variable Binit is Binit = 0.

На этапе S143 модуль 161 определения строки определяет, равны ли 0 (абсолютные значения) всех квантованных коэффициентов строки у, обозначенной переменной у, сохраненной в нем. Например, в случае, когда строка у представляет собой строку L1, показанную на фиг.20, модуль 161 определения строки определяет, что все квантованные коэффициенты равны 0, в случае, когда все квантованные коэффициенты в положениях (х, у) на строке L1 равны 0.In step S143, the row determination module 161 determines whether 0 (absolute values) of all quantized coefficients of the row y, denoted by the variable y stored in it, are equal. For example, in the case where the string y is the string L1 shown in FIG. 20, the string determination module 161 determines that all the quantized coefficients are 0, in the case where all the quantized coefficients in the positions (x, y) on the string L1 are equal 0.

В случае, когда на этапе S143 будет определено, что все квантованные коэффициенты равны 0, модуль 161 определения строки генерирует информацию, обозначающую, что все квантованные коэффициенты равны 0, и передает ее в модуль 62 кодирования КПД и модуль 163 расчета максимального значащего разряда, и поток обработки переходит на этап S144.In the case where it will be determined in step S143 that all the quantized coefficients are 0, the row determination module 161 generates information indicating that all the quantized coefficients are 0, and transmits it to the efficiency encoding module 62 and the maximum significant discharge calculating module 163, and the processing flow proceeds to step S144.

На этапе S144, на основе информации, обозначающей, что все квантованные коэффициенты равны 0, модуль 162 кодирования КПД выводит (передает) код 0, обозначающий, что все квантованные коэффициенты в строке, которая должна быть кодирована, равны 0, в модуль 169 соединения кода. Модуль 169 соединения кода принимает код 0, переданный из модуля 162 кодирования КПД, и выводит его без изменения как код, полученный в результате кодирования квантованных коэффициентов строки у.In step S144, based on the information indicating that all the quantized coefficients are 0, the efficiency coding unit 162 outputs (transmits) a code 0 indicating that all the quantized coefficients in the row to be encoded are 0 to the code connecting unit 169 . The code connection module 169 receives the code 0 transmitted from the efficiency encoding module 162 and outputs it without modification as the code obtained by encoding the quantized coefficients of the string y.

На этапе S145 модуль 163 расчета максимального значащего разряда устанавливает значение переменой Binit, сохраненной в нем, равным Binit=0, и обновляет переменную Binit на основе информации, обозначающей, что все квантованные коэффициенты равны 0, из модуля 161 определения строки.In step S145, the maximum significant digit calculation unit 163 sets the value of the variable Binit stored in it to Binit = 0, and updates the variable Binit based on information indicating that all the quantized coefficients are 0 from the row determination unit 161.

На этапе S146 модуль 161 определения строки определяет, имеются ли или нет необработанные строки в строках кодируемой подполосы. То есть модуль 161 определения строки определяет, были ли кодированы квантованные коэффициенты для всех строк кодируемой подполосы. Например, в случае кодирования квантованных коэффициентов подполосы, показанном на фиг.20, модуль 161 определения строки определяет, что отсутствуют необработанные строки в точке, в которой были кодированы квантованные коэффициенты во всех положениях на строке L1-L6.In step S146, the line determination module 161 determines whether or not the raw lines are in the lines of the encoded subband. That is, row determination module 161 determines whether quantized coefficients have been encoded for all rows of the encoded subband. For example, in the case of encoding the quantized subband coefficients shown in FIG. 20, the row determination module 161 determines that there are no raw rows at the point at which the quantized coefficients were encoded at all positions on the row L1-L6.

В случае, когда на этапе S146 будет определено, что существует необработанная строка, модуль 161 определения строки переводит поток обработки на этап S147, для кодирования квантованных коэффициентов в каждом положении в следующей строке, то есть, в строке (у+1).In the case where it is determined in step S146 that there is an unprocessed row, the row determination module 161 transfers the processing flow to step S147 to encode the quantized coefficients at each position in the next row, that is, in the row (y + 1).

На этапе S147 модуль 161 определения строки выполняет последовательное приращение переменной у, обозначающей сохраненную строку как у=у+1, возвращает поток обработки на этап S143 и снова выполняет описанную выше последующую обработку.In step S147, the line determination module 161 sequentially increments the variable y denoting the stored line as y = y + 1, returns the processing flow to step S143, and again performs the subsequent processing described above.

И, наоборот, в случае, когда на этапе S146 определяется, что больше нет необработанных строк, квантованные коэффициенты для всех строк, составляющих подполосу, были кодированы, и, таким образом, модуль 161 определения строки заканчивает обработку энтропийного кодирования, поток возвращается на этап S 113 по фиг.23, и обработка кодирования заканчивается.Conversely, in the case where it is determined in step S146 that there are no more raw rows, the quantized coefficients for all the rows making up the subband have been encoded, and thus, the row determination module 161 ends the entropy encoding processing, the stream returns to step S 113 of FIG. 23, and encoding processing ends.

Кроме того, в случае, когда на этапе S143 на фиг.24 определяется, что не все квантованные коэффициенты строки у равны 0 (существует квантованный коэффициент, который не равен 0), модуль 161 определения строки генерирует информацию, обозначающую, что не все квантованные коэффициенты равны 0 (существует квантованный коэффициент, который не равен 0), передает ее в модуль 161 кодирования КПД и модуль 163 расчета максимального значащего разряда и переводит поток обработки на этап S148.In addition, in the case where it is determined in step S143 in FIG. 24 that not all of the quantized row coefficients y are 0 (there is a quantized coefficient that is not 0), the row determination module 161 generates information indicating that not all quantized coefficients are equal to 0 (there is a quantized coefficient that is not equal to 0), transfers it to the efficiency encoding module 161 and the maximum significant discharge calculation module 163, and transfers the processing flow to step S148.

На этапе S148, на основе информации из модуля 161 определения строки, обозначающей, что не все квантованные коэффициенты равны 0, модуль 162 кодирования КПД выводит (передает) код 1, обозначающий, что не все квантованные коэффициенты строки, предназначенные для кодирования, равны 0, в модуль 169 соединения кода.In step S148, based on the information from the row determination module 161 indicating that not all quantized coefficients are 0, the efficiency encoding module 162 outputs (transmits) code 1 indicating that not all quantized row coefficients intended for encoding are 0, to code connection module 169.

На этапе S149, на основе информации, обозначающей, что все квантованные коэффициенты равны 0, поступающей из модуля 161 определения строки, модуль 163 расчета максимального значащего разряда устанавливает значение переменной х, обозначающее координату х положения на строке у первого квантованного коэффициента, который предназначен для ввода в w квантованных коэффициентов, которые должны быть теперь кодированы, равным х=0, и сохраняет переменную х.In step S149, based on information indicating that all the quantized coefficients are 0 coming from the row determination module 161, the maximum significant digit calculating section 163 sets the value of the x variable indicating the x coordinate of the position on the row of the first quantized coefficient that is intended to be input in w quantized coefficients, which should now be encoded, equal to x = 0, and saves the variable x.

Например, в случае, когда строка у представляет собой строку L1, показанную на фиг.20, значение переменной х, которое сохраняет модуль 163 расчета максимального значащего разряда, обозначает w непрерывных положений (х, 0), (х+1, 0),...,(x+w-1, 0), на кодируемой строке L1, координату х в самом дальнем верхнем левом положении, (х, 0).For example, in the case where the string y is the string L1 shown in FIG. 20, the value of the variable x, which is stored by the maximum significant digit calculating unit 163, denotes w continuous positions (x, 0), (x + 1, 0), ..., (x + w-1, 0), on the encoded line L1, the x coordinate in the farthest upper left position, (x, 0).

Кроме того, на этапе S149, модуль 163 расчета максимального значащего разряда устанавливает значение переменной В, которое обозначает максимальные значащие разряды w квантованных коэффициентов, кодированных в предыдущее время, равным В=Binit, и сохраняет переменную В. То есть модуль 163 расчета максимального значащего разряда обновляет значение переменной В как значение переменной Binit, сохраненной в нем, и сохраняет значение обновленной переменной В.In addition, in step S149, the maximum significant digit calculation unit 163 sets the value of the variable B, which denotes the maximum significant bits w of the quantized coefficients encoded in the previous time, to B = Binit, and stores the variable B. That is, the maximum significant digit calculation module 163 updates the value of variable B as the value of the Binit variable stored in it, and stores the value of the updated variable B.

После обновления значения переменной В, модуль 163 расчета максимального значащего разряда передает информацию, обозначающую обновленную переменную В (максимального значащего разряда) в модуль 164 кодирования КПД и модуль 165 выделения значащего разряда. Кроме того, каждый из модуля 164 кодирования КПД и модуля 165 выделения значащего разряда сохраняет значение переменной В, поданное из модуля 163 расчета максимального значащего разряда.After updating the value of variable B, the maximum significant discharge calculation unit 163 transmits information indicating the updated variable B (maximum significant discharge) to the efficiency encoding module 164 and the significant discharge allocation module 165. In addition, each of the efficiency encoding module 164 and the significant bit allocation module 165 stores a value of the variable B supplied from the maximum significant bit calculation module 163.

На этапе S150 модуль 123 энтропийного кодирования выполняет обработку кодирования набора w. Хотя подробно обработка кодирования набора w будет описана ниже, при обработке кодирования набора w модуль 123 энтропийного кодирования кодирует w непрерывных квантованных коэффициентов на строке у, обозначенной переменной у, сохраненной в модуле 161 определения строки.In step S150, the entropy encoding unit 123 performs encoding processing of the set w. Although the encoding processing of the set w will be described in detail below, in the encoding processing of the set w, the entropy encoding unit 123 encodes w continuous quantized coefficients on the string y, denoted by the variable y, stored in the string definition module 161.

Далее, используя положение на строке у идентифицированной переменной у, сохраненной в модуле 161 определения строки, и переменной х, сохраненной в модуле 163 расчета максимального значащего разряда как (х, у), w последовательных положений на строке у представляет собой последовательные положения (х, у), (х+1, у),...,(x+w-1, у) на строке у. То есть при обработке кодирования набора w, модуль 123 энтропийного кодирования кодирует квантованные коэффициенты в каждом из положенийFurther, using the position on the string y of the identified variable y stored in the string definition module 161 and the variable x stored in the maximum significant digit calculating module 163 as (x, y), w of consecutive positions on the string y is consecutive positions (x, y), (x + 1, y), ..., (x + w-1, y) on the string y. That is, in the encoding processing of the set w, the entropy encoding unit 123 encodes the quantized coefficients in each of the positions

(x, y), (x+1, y),...,(x+w-1, у).(x, y), (x + 1, y), ..., (x + w-1, y).

На этапе S151 модуль 163 расчета максимального значащего разряда определяет, остаются или нет необработанные квантованные коэффициенты на строке у. То есть модуль 163 расчета максимального значащего разряда определяет, были ли кодированы все квантованные коэффициенты в положениях на строке у, обозначенной переменной у, сохраненной в модуле 161 определения строки.In step S151, the maximum significant digit calculating unit 163 determines whether or not the raw quantized coefficients remain on the string y. That is, the module for calculating the maximum significant digit determines whether all the quantized coefficients have been encoded at the positions on the string y, denoted by the variable y, stored in the string definition module 161.

В случае, когда на этапе S151 определяется, что существуют необработанные квантованные коэффициенты на строке у, модуль 163 расчета максимального значащего разряда переводит поток обработки на этап S152 для кодирования следующих w квантованных коэффициентов.In the case where it is determined in step S151 that there are unprocessed quantized coefficients on row y, the maximum significant digit calculating section 163 transfers the processing flow to step S152 to encode the next w quantized coefficients.

На этапе S152 модуль 163 расчета максимального значащего разряда принимает значение х, сохраненное в нем как х=х+w, и возвращает поток обработки на этап S150. В соответствии с этим, квантованные коэффициенты для каждого из положений (х+w, у), (х+w+1, у),...,(х+2w-1, у) на строке у кодируют при обработке на следующем этапе S150.In step S152, the maximum significant digit calculation unit 163 takes the value x stored in it as x = x + w and returns the processing flow to step S150. In accordance with this, the quantized coefficients for each of the positions (x + w, y), (x + w + 1, y), ..., (x + 2w-1, y) on the string y are encoded during processing on the following step S150.

Кроме того, в случае, когда на этапе S151 определяется, что больше нет необработанных квантованных коэффициентов на строке у, квантованные коэффициенты во всех положениях на строке у были кодированы, в результате чего модуль 163 расчета максимального значащего разряда возвращает поток обработки на этап S146, и выполняется последующая обработка.In addition, in the case where it is determined in step S151 that there are no more unprocessed quantized coefficients on the string y, the quantized coefficients at all positions on the string y were encoded, as a result of which the maximum significant digit calculating module 163 returns the processing flow to step S146, and subsequent processing is performed.

Таким образом, модуль 123 энтропийного кодирования кодирует квантованные коэффициенты в каждом из положений подполосы, каждый по заданному номеру, в порядке растрового сканирования.Thus, entropy encoding unit 123 encodes the quantized coefficients at each of the positions of the subband, each at a given number, in raster scan order.

Таким образом, путем кодирования квантованных коэффициентов в каждом положении подполосы по заданному номеру каждый, в порядке растрового сканирования, вводимые квантованные коэффициенты могут быть обработаны в порядке, в котором их вводят, и в результате может быть уменьшена задержка, связанная с кодированием квантованных коэффициентов.Thus, by encoding the quantized coefficients in each position of the subband at a given number each, in raster scan order, the input quantized coefficients can be processed in the order in which they are entered, and as a result, the delay associated with the encoding of the quantized coefficients can be reduced.

Далее будет описана обработка кодирования набора w, соответствующая обработке, выполняемой на этапе S50, показанном на фиг.24.Next, encoding processing of the set w corresponding to the processing performed in step S50 shown in FIG. 24 will be described.

На этапе S181 модуль 163 расчета максимального значащего разряда принимает положение строки у, идентифицированное переменной х, сохраненной в нем как (х, у), и w непрерывных положений (х, у), (х+1, у),...,(x+w-1, у), принимает значащие разряды квантованных коэффициентов, имеющие наибольшее абсолютное значение, как значение переменной Bnew, обозначающей максимальные значащие разряды w квантованных коэффициентов, которые теперь должны быть кодированы, и сохраняют это переменное значение Bnew.In step S181, the maximum significant discharge calculation unit 163 takes the position of the string y identified by the variable x stored in it as (x, y), and w of the continuous positions (x, y), (x + 1, y), ..., (x + w-1, y), takes the significant bits of the quantized coefficients having the largest absolute value, as the value of the variable Bnew, denoting the maximum significant bits w of the quantized coefficients that should now be encoded, and store this variable value of Bnew.

Кроме того, модуль 163 расчета максимального значащего разряда передает полученный максимальный значащий разряд w квантованных коэффициентов, то есть значение переменной Bnew, в модуль 164 кодирования КПД и модуль 165 выделения значащего разряда.In addition, the maximum significant digit calculation module 163 transmits the obtained maximum significant digit w of the quantized coefficients, that is, the value of the Bnew variable, to the efficiency encoding module 164 and the significant digit extraction module 165.

Например, в случае, когда квантованные коэффициенты в w последовательных положениях представляют собой квантованные коэффициенты "-0101", "+0011", "-0110" и "+0010", показанные на фиг.21, из этих квантованных коэффициентов, квантованный коэффициент с наибольшим абсолютным значением представляет собой "-0110", и его значащий разряд равен "3", что представляет собой разряд, в котором расположена 1 наибольшего порядка, для "-0110", в результате чего значение переменной Bnew устанавливают равным 3.For example, in the case where the quantized coefficients in w consecutive positions are the quantized coefficients “-0101”, “+0011”, “-0110” and “+0010” shown in FIG. 21, of these quantized coefficients, the quantized coefficient c the largest absolute value is “-0110”, and its significant digit is “3”, which is the digit in which 1 of the highest order is located for “-0110", as a result of which the value of the variable Bnew is set to 3.

На этапе S182 модуль 164 кодирования КПД определяет, равно или нет В=Bnew. То есть модуль 164 кодирования КПД определяет, является или нет значение переменной В, обозначающей наибольший значащий разряд среди w квантованных коэффициентов, кодированных в предыдущий раз, тем же, что и значение переменной Bnew, обозначающее наибольший значащий разряд w квантованных коэффициентов, которые теперь должны быть кодированы, которые были переданы из модуля 163 расчета максимального значащего разряда.In step S182, the efficiency encoding module 164 determines whether or not B = Bnew is equal. That is, the efficiency encoding module 164 determines whether or not the value of the variable B denoting the largest significant bit among the w quantized coefficients encoded the previous time is the same as the value of the variable Bnew indicating the largest significant bit w of the quantized coefficients that should now be encoded, which were transmitted from the module 163 calculating the maximum significant discharge.

В случае, когда на этапе S182 определяют, что В=Bnew, модуль 164 кодирования КПД переводит поток обработки на этап S183 и выводит в модуль 169 соединения кода код 0, обозначающий максимальный значащий разряд w квантованных коэффициентов, которые должны быть кодированы с этого момента. После вывода кода 0, обозначающего максимальный значащий разряд, модуль 164 кодирования КПД пропускает обработку от этапа S 184 до этапа S188, и переводит поток обработки на этап S189.In the case where it is determined in step S182 that B = Bnew, the efficiency encoding module 164 transfers the processing flow to step S183 and outputs a code 0 to the code connecting module 169, indicating the maximum significant bit w of quantized coefficients that should be encoded from now on. After the code 0 denoting the maximum significant bit is output, the efficiency encoding module 164 skips the processing from step S 184 to step S188, and transfers the processing flow to step S189.

И, наоборот, в случае, когда на этапе S182 определяют, что условие В=Bnew не выполняется, модуль 164 кодирования КПД переводит поток обработки на этап S184 и (поскольку максимальный значащий разряд изменился), выводит код 1 в модуль 169 соединения кода, что обозначает, что максимальный значащий разряд изменился.Conversely, in the case where it is determined in step S182 that condition B = Bnew is not satisfied, the efficiency encoding unit 164 transfers the processing flow to step S184 and (since the maximum significant bit has changed), outputs code 1 to the code connection unit 169, which indicates that the maximum significant digit has changed.

На этапе S185 модуль 164 кодирования КПД получает целые числа n и m, которые удовлетворяют следующему выражению (8).In step S185, the efficiency encoding module 164 obtains integers n and m that satisfy the following expression (8).

Figure 00000009
Figure 00000009

Здесь символ "∧" в выражении (8) представляет экспоненту. В соответствии с этим, (-1)∧m обозначает (-1) в степени m.Here, the symbol "∧" in expression (8) represents the exponent. Accordingly, (-1) ∧m represents (1) a degree m.

Например, в случае, когда Bnew=3 и B=0, n=2 и m=0, получают как значения n и m, которые удовлетворяют выражению (8). При сравнении переменной Bnew с переменной В, чем больше разность между абсолютным значением переменной Bnew и между абсолютным значением переменной В, тем больше значение n в выражении (8). Кроме того, в случае, когда значение переменной Bnew больше, чем значение переменной В, значение m равно 0, и, наоборот, в случае, когда значение переменной Bnew меньше, чем значение переменной В, значение m равно 1. В соответствии с этим, значение m в выражении (8), можно сказать, обозначает, увеличился ли или уменьшился ли максимальный значащий разряд.For example, in the case when Bnew = 3 and B = 0, n = 2 and m = 0, they are obtained as the values of n and m, which satisfy the expression (8). When comparing the variable Bnew with variable B, the greater the difference between the absolute value of the variable Bnew and the absolute value of variable B, the greater the value of n in expression (8). In addition, in the case when the value of the variable Bnew is greater than the value of the variable B, the value of m is 0, and, conversely, in the case where the value of the variable Bnew is less than the value of the variable B, the value of m is 1. Accordingly, the value of m in expression (8) can be said to indicate whether the maximum significant digit has increased or decreased.

На этапе S186 модуль 164 кодирования КПД выводит в модуль 169 соединения кода значение m, которое удовлетворяет выражению (8), в виде кода из 1 бита, как код, обозначающий, увеличился ли или уменьшился ли максимальный значащий разряд. Например, в случае, когда значение m, которое удовлетворяет выражению (8), равно 0, модуль 164 кодирования КПД выводит код 0, обозначающий, что максимальный значащий разряд увеличился.In step S186, the efficiency encoding module 164 outputs to the code connection module 169 a value m that satisfies expression (8) as a 1-bit code as a code indicating whether the maximum significant digit has increased or decreased. For example, in the case where the value of m that satisfies expression (8) is 0, the efficiency encoding module 164 outputs a code 0 indicating that the maximum significant digit has increased.

На этапе S187 модуль 164 кодирования КПД выводит такое количество нулей, в качестве значения n, удовлетворяющего выражению (8), после которого следует 1 единица, как код, обозначающий количество изменений в максимальной значащей цифре, в модуль 169 соединения кода. То есть модуль 164 кодирования КПД выводит n 0 и одну 1, как код, обозначающий количество изменений в максимальной значащей цифре.In step S187, the efficiency encoding module 164 outputs such a number of zeros as an n value satisfying expression (8), followed by 1 unit, as a code indicating the number of changes in the maximum significant digit, to the code connection module 169. That is, the efficiency encoding module 164 outputs n 0 and one 1 as a code indicating the number of changes in the maximum significant digit.

Например, в случае, когда значение n, которое удовлетворяет выражению (8), равно 2, модуль 164 кодирования КПД выводит значение "001", как код, обозначающий величину изменения максимального значащего разряда, в модуль 169 соединения кода.For example, in the case where the value of n that satisfies expression (8) is 2, the efficiency coding unit 164 outputs the value “001” as a code indicating the amount of change in the maximum significant digit to the code connecting unit 169.

Таким образом, модуль 164 кодирования КПД выводит в модуль 169 соединения кода, код, обозначающий, что максимальный значащий разряд изменился, код, обозначающий, увеличился ли или уменьшился максимальный значащий разряд, и код, обозначающий величину изменения максимального значащего разряда, как код, обозначающий максимальный значащий разряд из w квантованных коэффициентов, которые должны быть кодированы, начиная с этого момента.Thus, the efficiency encoding module 164 outputs to the code connection module 169, a code indicating that the maximum significant digit has changed, a code indicating whether the maximum significant digit has increased or decreased, and a code indicating the magnitude of the change in the maximum significant digit, as a code indicating the maximum significant bit of w quantized coefficients that must be encoded, starting from this moment.

На этапе S188 модуль 163 расчета максимального значащего разряда устанавливает значение сохраненной переменной В, равным В=Bnew, и переводит поток обработки на этап S189. То есть модуль 163 расчета максимального значащего разряда обновляет значение сохраненной переменной В так, что оно равняется значению переменной Bnew, сохраненной в нем. Кроме того, модуль 164 кодирования КПД и модуль 165 выделения значащего разряда также устанавливают значение сохраненной переменной В равным В=Bnew.In step S188, the maximum significant discharge calculation unit 163 sets the value of the stored variable B to B = Bnew, and transfers the processing flow to step S189. That is, the module for calculating the maximum significant discharge updates the value of the stored variable B so that it is equal to the value of the variable Bnew stored in it. In addition, the efficiency encoding module 164 and the significant bit allocation module 165 also set the value of the stored variable B to B = Bnew.

После того как переменная В будет установлена как В=Bnew на этапе S188, или код, обозначающий максимальный значащий разряд квантованных коэффициентов, будет выведен на этапе S183, на этапе S189 модуль 163 расчета максимального значащего разряда устанавливает значение сохраненной переменной Binit, равным Binit=В, в случае, когда значение сохраненной переменной х равно 0.After the variable B is set to B = Bnew in step S188, or the code indicating the maximum significant digit of the quantized coefficients is displayed in step S183, in step S189, the maximum significant digit calculation module 163 sets the value of the stored variable Binit to Binit = B , in the case when the value of the stored variable x is 0.

То есть в случае, когда значение сохраненной переменной х равно 0, модуль 163 расчета максимального значащего разряда обновляет переменную Binit путем учета значения переменной Binit, обозначающей максимальный значащий разряд w квантованных коэффициентов, введенных первыми на строку (у-1), сохраненную в ней, значение переменной В, обозначающее максимальный значащий разряд w квантованных коэффициентов, кодированных в предыдущий раз.That is, in the case where the value of the stored variable x is 0, the maximum significant digit calculation unit 163 updates the Binit variable by taking into account the value of the Binit variable indicating the maximum significant digit w of the quantized coefficients introduced first on the row (y-1) stored in it, the value of the variable B, denoting the maximum significant bit w of quantized coefficients encoded the previous time.

Таким образом, в случае когда переменная х=0, значение переменной Binit установлено равным Binit=В, в результате чего кодирование квантованных коэффициентов может быть выполнено для w квантованных коэффициентов, начиная от х=0 в следующей строке (например, строке (у+1)), используя корреляционную взаимосвязь с максимальной значащей цифрой w квантованных коэффициентов, начинающихся от х=0 в предыдущей строке (например, строке у).Thus, in the case when the variable x = 0, the value of the variable Binit is set to Binit = B, as a result of which the encoding of the quantized coefficients can be performed for w quantized coefficients, starting from x = 0 in the next row (for example, the row (у + 1 )), using the correlation relationship with the maximum significant digit w of the quantized coefficients starting from x = 0 in the previous row (for example, row y).

На этапе S190 модуль 165 выделения значащего разряда принимает заданную переменную i и изменяет переменную i от 0 до (w-1) для выделения значащих разрядов квантованных коэффициентов из квантованных коэффициентов в положениях (x-i, у) на строке у. Модуль 165 выделения значащего разряда передает выделенные (данные) значащие разряды квантованных коэффициентов в модуль 166 кодирования КПД и модуль 167 выделения знака. Кроме того, модуль 166 кодирования КПД выводит коды, обозначающие абсолютные значения w квантованных коэффициентов в модуль 169 соединения кода, на основе значащих разрядов, передаваемых из модуля 165 выделения значащих разрядов (кодирование значащих разрядов).In step S190, the significant digit extraction unit 165 receives the predetermined variable i and changes the variable i from 0 to (w-1) to extract significant bits of the quantized coefficients from the quantized coefficients at positions (x-i, y) on the string y. The significant bit allocation unit 165 transmits the extracted (data) significant bits of the quantized coefficients to the efficiency encoding unit 166 and the character extraction unit 167. In addition, the efficiency encoding module 166 outputs codes denoting the absolute values of w quantized coefficients to the code connection module 169 based on the significant bits transmitted from the significant bit allocation module 165 (coding of the significant bits).

Теперь значение х в положениях (x+i, у) представляет собой значение переменной х, сохраненной в модуле 163 расчета максимального значащего разряда. Например, в случае, когда значение переменной х, сохраненной в модуле 163 расчета максимального значащего разряда, равно 0, значение переменной В, сохраненной в модуле 165 выделения значащего разряда, равно 3, и, кроме того, модуль 122 квантования передает в модуль 165 выделения значащего разряда w (четыре) квантованных коэффициента "-0101", "+0011", "-0110", "+0010", показанных на фиг.21, соответствующих квантованным коэффициентам в каждом из положений (X+i, у) (0<i<3), то есть положений (0, у), (1, у), (2, у) и (3, у), модуль 165 выделения значащих разрядов выделяет значащие разряды из этих квантованных коэффициентов.Now, the value of x at the positions (x + i, y) is the value of the variable x stored in the maximum significant discharge calculation unit 163. For example, in the case where the value of the variable x stored in the maximum significant discharge calculation unit 163 is 0, the value of the variable B stored in the significant discharge allocation unit 165 is 3, and in addition, the quantization unit 122 passes to the allocation unit 165 significant digit w (four) of the quantized coefficients "-0101", "+0011", "-0110", "+0010" shown in Fig.21, corresponding to the quantized coefficients in each of the positions (X + i, y) (0 <i <3), i.e., positions (0, y), (1, y), (2, y) and (3, y), the significant digit highlighting unit 165 extracts the significant digit of the quantized coefficients.

В этом случае значение переменной В, сохраненной в модуле 165 выделения значащего разряда, равно 3, и значащие разряды представляют собой 3 разряда, в результате чего модуль 165 выделения значащего разряда выделят из квантованного коэффициента "-0101", который соответствует положению (х, у), значение "101", которое представляет собой три разряда самого низкого порядка.In this case, the value of the variable B stored in the significant digit extraction unit 165 is 3, and the significant digits are 3 digits, as a result of which the significant digit extracting module 165 is extracted from the quantized coefficient “-0101”, which corresponds to the position (x, y ), the value "101", which represents the three digits of the lowest order.

Таким же образом, модуль 165 выделения значащего разряда последовательно выделяет из квантованных коэффициентов "-0011", "-0110" и "0010" в положении (х+1, у), в положении (х-2, у) и в положении (х+3, у), значения "011", "110" и "010", которые представляют собой три числа для его самого низкого порядка. В соответствии с этим, (код) значащие разряды "101", "011", "110" и "010" среди квантованных коэффициентов "-0101", "-0011", "-0110" и "+0010" выводят в модуль 166 кодирования КПД и модуль 167 выделения знака. Модуль 166 кодирования КПД кодирует код "101", "011", "110" и "010", передаваемый из модуля 165 выделения значащего разряда, и выводит код "101011110010", обозначающий абсолютное значение w квантованных коэффициентов в модуль 169 соединения кода.In the same way, the significant digit extraction module 165 sequentially extracts from the quantized coefficients “-0011”, “-0110” and “0010” in position (x + 1, y), in position (x-2, y) and in position ( x + 3, y), the values are "011", "110" and "010", which are three numbers for its lowest order. In accordance with this, (code) significant bits "101", "011", "110" and "010" among the quantized coefficients "-0101", "-0011", "-0110" and "+0010" are output to the module Efficiency coding 166 and character extraction module 167. The efficiency encoding module 166 encodes the code "101", "011", "110" and "010" transmitted from the significant bit allocation module 165 and outputs the code "101011110010" indicating the absolute value w of the quantized coefficients to the code connection module 169.

На этапе S191 модуль 167 выделения знака принимает заданное значение i и значение переменной i от 0 до (w-1), так, что выделяет знаки квантованных коэффициентов, из квантованных коэффициентов в положениях (x+i, у) на строке у, в тех квантованных коэффициентах, абсолютное значение которых не равно 0, переданных из модуля 122 квантования, и передает выделенные (данные) знаки в модуль 168 кодирования КПД. Модуль 168 кодирования КПД кодирует знаки, поступающие из модуля 167 выделения знака, и выводит код, обозначающий знаки квантованных коэффициентов, полученных в результате, в модуль 169 соединения кода.In step S191, the character extraction module 167 receives the predetermined value i and the value of the variable i from 0 to (w-1), so that it extracts the signs of the quantized coefficients from the quantized coefficients at positions (x + i, y) on the string y, in those quantized coefficients, the absolute value of which is not equal to 0, transmitted from the quantization module 122, and transmits the selected (data) characters to the efficiency encoding module 168. The efficiency encoding module 168 encodes the characters coming from the character extraction module 167, and outputs a code indicating the signs of the quantized coefficients resulting in the code connecting module 169.

После ввода кода, обозначающего знаки квантованных коэффициентов, из модуля 168 кодирования КПД, модуль 169 соединения кода соединяет код, обозначающий, все ли квантованные коэффициенты строки равны 0, код, обозначающий максимальные значащие разряды квантованных коэффициентов, код, обозначающий абсолютное значение квантованных коэффициентов, и код, обозначающий знаки квантованных коэффициентов, переданных из модуля 162 кодирования КПД, модуля 164 кодирования КПД, модуля 166 декодирования КПД, и модуля 168 кодирования КПД, соответственно, выводит соединенный код как кодированное изображение, заканчивает обработку кодирования набора w, возвращает поток обработки на этап S150, показанный на фиг.24, и выполняет обработку, начиная с этапа S151, и далее.After entering the code indicating the signs of the quantized coefficients from the efficiency encoding module 168, the code connection module 169 connects a code indicating whether all the quantized row coefficients are 0, a code indicating the maximum significant bits of the quantized coefficients, a code indicating the absolute value of the quantized coefficients, and code denoting the signs of the quantized coefficients transmitted from the efficiency encoding module 162, the efficiency encoding module 164, the efficiency decoding module 166, and the efficiency encoding module 168, respectively, output coupled code as an encoded image, ends the encoding processing set w, the flow returns to step S150, as shown in Figure 24, and performs the processing from step S151, and beyond.

Теперь значение х в положениях (x+i, у) представляет собой значение переменной х, сохраненное в модуле 163 расчета максимального значащего разряда. Например, в случае, когда значение переменной х, сохраненное в модуле 163 расчета максимального значащего разряда равно 0, и модуль 122 квантования передает w (четыре) квантованных коэффициента "-0101", "+0011", "-0110", "+0010", показанные на фиг.21, соответствующие квантованным коэффициентам в каждом из положений (X+i, у) (0<i<3), то есть, в положениях (0, у), (1, у), (2, у) и (3, у) ни один из "-0101", "+0011", "-0110" и "+0010" не равен 0, в результате чего модуль 167 выделения знака выделяет знаки из этих квантованных коэффициентов.Now, the value of x at the positions (x + i, y) is the value of the variable x stored in the maximum significant digit calculation unit 163. For example, in the case where the value of the variable x stored in the maximum significant digit calculation unit 163 is 0, and the quantization unit 122 transmits w (four) quantized coefficients "-0101", "+0011", "-0110", "+0010 "shown in Fig.21, corresponding to the quantized coefficients in each of the positions (X + i, y) (0 <i <3), that is, in the positions (0, y), (1, y), (2, y) and (3, y) none of the “-0101”, “+0011”, “-0110” and “+0010” is 0, as a result of which the character extraction module 167 extracts characters from these quantized coefficients.

В этом случае модуль 167 выделения знака выделяет знак "-" квантованного коэффициента из квантованного коэффициента "-0101", соответствующего положению (х, y).In this case, the character extraction module 167 extracts the “-” sign of the quantized coefficient from the quantized coefficient “-0101” corresponding to the position (x, y).

Таким же образом, модуль 167 выделения знака последовательно выделяет знаки "+", "-", "+" квантованных коэффициентов из квантованных коэффициентов "+0011", "-0110", "+0010", соответствующих положениям (х+1, у), (х+2, у) и (х+3, у). Таким образом, знаки "-", "+", "-", "+" квантованных коэффициентов "-0101", "+0011", "-0110", "+0010" выводят из модуля 167 выделения знака в модуль 168 кодирования КПД. Модуль 168 кодирования КПД кодирует знаки "-", "+", "-" и "+" квантованных коэффициентов, передаваемых из модуля 167 выделения знака.In the same way, the sign extraction module 167 sequentially extracts the signs “+”, “-”, “+” of the quantized coefficients from the quantized coefficients “+0011”, “-0110”, “+0010” corresponding to the positions (x + 1, y ), (x + 2, y) and (x + 3, y). Thus, the signs "-", "+", "-", "+" of the quantized coefficients "-0101", "+0011", "-0110", "+0010" are output from the character extraction module 167 to the encoding module 168 Efficiency. The efficiency encoding module 168 encodes the signs “-”, “+”, “-”, and “+” of the quantized coefficients transmitted from the sign extraction module 167.

Например, после ввода знака "-" модуль 168 кодирования КПД выводит код 1 и после ввода знака "+" выводит код 0, в результате кодирования введенных знаков. В этом случае знаки "-", "+", "-" и "+" квантованных коэффициентов вводят в модуль 168 кодирования КПД, в результате чего модуль 168 кодирования КПД выводит код "1010", состоящий из кода "1", "0", "1", "0", как код, обозначающий знаки квантованных коэффициентов, в модуль 169 соединения кода.For example, after entering the “-” sign, the efficiency encoding module 168 outputs code 1 and after entering the “+” sign displays code 0, as a result of encoding the entered characters. In this case, the signs “-”, “+”, “-” and “+” of the quantized coefficients are input to the efficiency encoding module 168, as a result of which the efficiency encoding module 168 outputs the code “1010” consisting of the code “1”, “0 "," 1 "," 0 ", as a code denoting the signs of the quantized coefficients, to the code connection module 169.

Таким образом, модуль 123 энтропийного кодирования кодирует квантованные коэффициенты подполосы в виде наборов заданных модулей и выводит код, обозначающий максимальные значащие разряды квантованных коэффициентов, код, обозначающий абсолютные значения квантованных коэффициентов, и код, обозначающий знаки квантованных коэффициентов.Thus, entropy encoding module 123 encodes the quantized subband coefficients in the form of sets of predetermined modules and outputs a code indicating the maximum significant bits of the quantized coefficients, a code indicating the absolute values of the quantized coefficients, and a code indicating the signs of the quantized coefficients.

Таким образом, благодаря кодированию квантованных коэффициентов подполосы в виде наборов заданных модулей исключается необходимость выполнения многократной обработки в плоскости бита на основе множества путей кодирования, в отличие от случая кодирования изображения, например, в JPRG 2000, и также выполняется кодирование с переменной длиной кода, в результате чего количество обработки при кодировании может быть заметно уменьшено. В соответствии с этим, кодирование изображения может быть выполнено с более высокой скоростью, и может быть реализовано устройство кодирования, предназначенное для кодирования изображения с высокой разрешающей способностью в режиме реального времени без больших затрат.Thus, by encoding the quantized subband coefficients in the form of sets of predetermined modules, the need for multiple processing in the bit plane based on a plurality of coding paths is eliminated, in contrast to the case of coding an image, for example, in JPRG 2000, and coding with a variable code length is also performed in as a result, the amount of processing during encoding can be significantly reduced. Accordingly, the encoding of the image can be performed at a higher speed, and an encoding device for real-time encoding of the high-resolution image can be implemented without cost.

Кроме того, отсутствует необходимость в явном кодировании длины кода в устройстве 111 кодирования изображения, в случае кодирования изображения, в результате чего количество кода можно уменьшить, и при этом отсутствует необходимость в управлении информацией в отношении длины кода.Furthermore, there is no need to explicitly encode the code length in the image encoding apparatus 111 in the case of image encoding, whereby the amount of code can be reduced, and there is no need to manage information regarding the code length.

Следует отметить, что хотя выше было приведено описание для w квантованных коэффициентов, значащий разряд квантованного коэффициента, имеющего наибольшее абсолютное значение, используется как значение переменной Bnew, обозначающей максимальный значащий разряд, однако, достаточно, чтобы значение переменной Bnew представляло собой значение, равное или большее, чем значащая разряд квантованного коэффициента, имеющего наибольшее абсолютное значение w среди квантованных коэффициентов. Если значение переменной Bnew будет больше, количество кодов увеличивается для кода, обозначающего абсолютное значение квантованных коэффициентов, но величина увеличения кода для кода, обозначающего абсолютное значение квантованных коэффициентов, может быть уменьшена путем установки значения переменной Bnew в значение, равное или больше, чем значащий разряд квантованного коэффициента, имеющего наибольшее абсолютное значение.It should be noted that although the description for w quantized coefficients was described above, the significant digit of the quantized coefficient having the largest absolute value is used as the value of the Bnew variable denoting the maximum significant digit, however, it is sufficient that the value of the Bnew variable is a value equal to or greater than the significant digit of the quantized coefficient having the largest absolute value of w among the quantized coefficients. If the value of the Bnew variable is greater, the number of codes increases for the code indicating the absolute value of the quantized coefficients, but the amount of increase in the code for the code indicating the absolute value of the quantized coefficients can be reduced by setting the value of the Bnew variable to a value equal to or greater than the significant digit quantized coefficient having the largest absolute value.

Далее приведено описание устройства декодирования изображения, для декодирования изображения, кодированного с помощью устройства 111 кодирования изображения.The following is a description of an image decoding apparatus for decoding an image encoded by the image encoding apparatus 111.

На фиг.26 показана блок-схема, иллюстрирующая пример конфигурации устройства декодирования изображения.26 is a block diagram illustrating an example configuration of an image decoding apparatus.

Устройство 211 декодирования изображения выполнено как модуль 221 энтропийного декодирования, модуль 222 инверсного квантования и модуль 223 инверсного вейвлет преобразования, при этом кодированное изображение (данные) вводят в модуль 221 энтропийного декодирования.The image decoding apparatus 211 is configured as an entropy decoding module 221, an inverse quantization module 222, and an inverse wavelet transform module 223, wherein the encoded image (data) is input to the entropy decoding module 221.

Модуль 221 энтропийного декодирования выполняет энтропийное декодирование кода, который представляет собой входное кодированное изображение, и передает полученные квантованные коэффициенты, полученные, таким образом, в модуле 222 инверсного квантования.Entropy decoding unit 221 performs entropy decoding of a code that is an input encoded image and transmits the obtained quantized coefficients, thus obtained in inverse quantization unit 222.

Модуль 222 инверсного квантования выполняет инверсное квантование квантованных коэффициентов, передаваемых из модуля 221 энтропийного декодирования, и передает вейвлет коэффициенты для каждой подполосы, полученные путем инверсного квантования, в модуль 223 вейвлет преобразования.The inverse quantization module 222 inverts the quantized coefficients transmitted from the entropy decoding module 221 and transmits the wavelet coefficients for each subband obtained by inverse quantization to the wavelet transform module 223.

Модуль 223 инверсного вейвлет преобразования подвергает вейвлет коэффициенты для каждой подполосы, передаваемые из модуля 222 инверсного квантования, инверсному вейвлет преобразованию, и выводит изображение, полученное в результате, как декодированное изображение.The inverse wavelet transform module 223 exposes the wavelet coefficients for each subband transmitted from the inverse quantization module 222 to the inverse wavelet transform, and outputs the resulting image as a decoded image.

Кроме того, модуль 221 энтропийного декодирования устройства 211 декодирования изображения, которое выполняет такую обработку, выполнен, как более подробно показано, например, на фиг.27.In addition, the entropy decoding unit 221 of the image decoding apparatus 211 that performs such processing is configured as shown in more detail, for example, in FIG. 27.

Более подробно модуль 221 энтропийного декодирования имеет модуль 251 разделения кода, модуль 252 определения строки, модуль 253 генерирования, модуль 254 декодирования КПД, модуль 255 декодирования КПД, модуль 256 декодирования КПД, модуль 257 синтезирования квантованного коэффициента и модуль 258 переключения.In more detail, the entropy decoding module 221 has a code separation module 251, a string determination module 252, a generation module 253, an efficiency decoding module 254, an efficiency decoding module 255, an efficiency decoding module 256, a quantized coefficient synthesis module 257, and a switching module 258.

Модуль 251 разделения кода разделяет код, который представляет собой кодированное изображение, которое было введено на основе информации, передаваемой из каждого из модуля 252 определения строки, модуля 254 декодирования, КПД, модуля 255 декодирования КПД и модуля 256 декодирования КПД, и передает разделенный код заданной длины в модуль 252 определения строки, модуль 254 декодирования КПД, модуль 255 декодирования КПД или модуль 256 декодирования КПД.The code splitting unit 251 separates a code that is an encoded image that was input based on information transmitted from each of the line determination unit 252, decoding unit 254, efficiency, efficiency decoding unit 255, and efficiency decoding unit 256, and transmits the divided code to a predetermined lengths to a string determination module 252, an efficiency decoding module 254, an efficiency decoding module 255, or an efficiency decoding module 256.

То есть модуль 251 разделения кода разделяет входной код на код, который обозначает, равны ли 0 или нет все квантованные коэффициенты одной кодированной строки, код, обозначающий максимальный значащий разряд w кодированных квантованных коэффициентов, код, обозначающий абсолютные значения w кодированных квантованных коэффициентов, и код, обозначающий знаки кодированных квантованных коэффициентов, и передает их, соответственно, в каждый из модуля 252 определения строки, модуля 254 декодирования, КПД, модуля 255 декодирования КПД и модуля 256 декодирования КПД.That is, code splitting module 251 splits the input code into a code that indicates whether all quantized coefficients of a single encoded string are 0 or not, a code indicating the maximum significant digit w of encoded quantized coefficients, a code indicating absolute values of w encoded quantized coefficients, and a code denoting the signs of the encoded quantized coefficients, and transmits them, respectively, to each of the line determination module 252, decoding module 254, efficiency, efficiency decoding module 255 and decoding module 256 efficiency.

Модуль 252 определения строки определяет, равны ли 0 или нет все квантованные коэффициенты одной строки кодированной подполосы, на основе кода, переданного из модуля 251 разделения кода, и передает информацию, обозначающую результаты своего определения в модуль 251 разделения кода, модуль 253 генерирования и модуль 254 декодирования КПД.Line determination module 252 determines whether or not all quantized coefficients of one row of the encoded subband are equal, based on the code transmitted from code division module 251, and transmits information indicating the results of its determination to code division module 251, generation module 253 and module 254 decoding efficiency.

Модуль 253 генерирования генерирует код, обозначающий одну строку, соответствующую квантованным коэффициентам, которые равны 0, на основе информации, обозначающей результаты определения, из модуля 252 определения строки, и передает его в модуль 258 переключения.The generating unit 253 generates a code indicating one row corresponding to the quantized coefficients that are 0 based on the information indicating the determination results from the row determining unit 252, and transmits it to the switching unit 258.

Модуль 254 декодирования КПД декодирует код, переданный из модуля 251 разделения кода, обозначающий максимальный значащий разряд w кодированных квантованных коэффициентов, получает максимальный значащий разряд w кодированных квантованных коэффициентов и передает информацию, обозначающую полученный максимальный значащий разряд в модуль 251 разделения кода, модуль 255 декодирования КПД и модуль 257 синтеза квантованного коэффициента.The efficiency decoding module 254 decodes the code transmitted from the code separation module 251 denoting the maximum significant bit w of the encoded quantized coefficients, obtains the maximum significant bit w of the encoded quantized coefficients, and transmits information indicating the received maximum significant bit to the code separation module 251, efficiency decoding module 255 and a quantized coefficient synthesis module 257.

Модуль 255 декодирования КПД декодирует код, который обозначает абсолютные значения квантованных коэффициентов, переданных в модуль 251 разделения кода, на основе информации, обозначающей максимальный значащий разряд, из модуля 254 декодирования КПД, и передает (данные) значащие разряды w квантованных коэффициентов, полученных им, в модуль 256 декодирования КПД и в модуль 257 синтеза квантованного коэффициента. Кроме того, модуль 255 декодирования КПД передает информацию, обозначающую результаты декодирования кода, которая обозначает абсолютные значения квантованных коэффициентов, в модуль 251 разделения кода.The efficiency decoding module 255 decodes a code that denotes the absolute values of the quantized coefficients transmitted to the code separation module 251 based on information indicating the maximum significant bit from the efficiency decoding module 254 and transmits (data) significant bits w of the quantized coefficients obtained by it, to the efficiency decoding module 256 and to the quantized coefficient synthesis module 257. In addition, the efficiency decoding module 255 transmits information indicating the results of code decoding, which indicates the absolute values of the quantized coefficients, to the code separation module 251.

На основе значащих разрядов квантованных коэффициентов, переданных из модуля 255 декодирования КПД, модуль 256 декодирования КПД декодирует код, который обозначает знаки квантованных коэффициентов, переданных из модуля 251 разделения кода, и передает (данные) знаков квантованных коэффициентов, полученных, таким образом, в модуле 257 синтеза квантованного коэффициента. Кроме того, модуль 256 декодирования КПД передает информацию, которая обозначает результаты декодирования кода, обозначающую знаки квантованных коэффициентов, в модуль 251 разделения кода.Based on the significant bits of the quantized coefficients transmitted from the efficiency decoding module 255, the efficiency decoding module 256 decodes a code that denotes the signs of the quantized coefficients transmitted from the code division module 251 and transmits (data) the signs of the quantized coefficients thus obtained in the module 257 synthesis quantized coefficient. In addition, the efficiency decoding module 256 transmits information that indicates the code decoding results indicating the signs of the quantized coefficients to the code separation module 251.

Модуль 257 синтеза квантованного коэффициента синтезирует значащие разряды квантованных коэффициентов, переданных из модуля 255 декодирования КПД, и знаки квантованных коэффициентов, переданные из модуля 256 декодирования КПД, на основе информации, обозначающей максимальный значащий разряд, переданной из модуля 254 декодирования КПД, и передает w квантованных коэффициентов, полученных, таким образом, в модуль 258 переключения.The quantized coefficient synthesis module 257 synthesizes the significant bits of the quantized coefficients transmitted from the efficiency decoding module 255 and the signs of the quantized coefficients transmitted from the efficiency decoding module 256 based on information indicating the maximum significant bit transmitted from the efficiency decoding module 254 and transmits w quantized coefficients thus obtained in the switching module 258.

Модуль 258 переключения выводит квантованные коэффициенты из модуля 253 генерирования или из модуля 257 синтеза квантованного коэффициента.The switching unit 258 outputs the quantized coefficients from the generating unit 253 or from the quantized coefficient synthesis unit 257.

На фиг.28 показана блок-схема, иллюстрирующая более подробную конфигурацию модуля 251 разделения кода.On Fig shows a block diagram illustrating a more detailed configuration of the module 251 code separation.

Модуль 251 разделения кода имеет модуль 271 управления и запоминающее устройство 272. После ввода кода, который представляет собой кодированное изображение, модуль 271 управления передает входной код в запоминающее устройство 272 для временного сохранения.The code separation unit 251 has a control unit 271 and a memory 272. After entering a code that is an encoded image, the control unit 271 transmits an input code to the memory 272 for temporary storage.

Модуль 271 управления затем считывает код заданной длины из кода, временно сохраненного в запоминающем устройстве 272, на основе информации, переданной из каждого модуля 252 определения строки, модуля 254 декодирования КПД, модуля 255 декодирования КПД и модуля 256 декодирования КПД, и передает в модуль 252 определения строки, модуль 254 декодирования КПД, модуль 255 декодирования КПД или модуль 256 декодирования КПД.The control unit 271 then reads a code of a predetermined length from a code temporarily stored in the memory 272 based on information transmitted from each line determination unit 252, the efficiency decoding module 254, the efficiency decoding module 255, and the efficiency decoding module 256, and transmits to the module 252 line definitions, efficiency decoding module 254, efficiency decoding module 255 or efficiency decoding module 256.

Кроме того, модуль 251 разделения кода может быть выполнен, как показано на фиг.29, помимо примера конфигурации, показанного на фиг.28.In addition, code separation module 251 may be implemented as shown in FIG. 29, in addition to the configuration example shown in FIG. 28.

Модуль 251 разделения кода, показанный на фиг.29, имеет модуль 291 управления, переключатель 292 и узел 293-1 - узел 293-4.The code separation module 251 shown in FIG. 29 has a control module 291, a switch 292, and a node 293-1, a node 293-4.

После ввода кода, который представляет собой кодированные изображения, модуль 291 управления управляет переключателем 292 на основе информации, передаваемой из каждого из модуля 252 определения строки, модуля 254 декодирования КПД, модуля 255 декодирования КПД и модуля 256 декодирования КПД, и передает в модуль 252 определения строки, модуль 254 декодирования КПД, модуль 255 декодирования КПД или модуль 256 декодирования КПД, код заданной длины.After entering a code that is encoded image, the control unit 291 controls the switch 292 based on information transmitted from each of the line determination unit 252, the efficiency decoding module 254, the efficiency decoding module 255 and the efficiency decoding module 256, and passes to the determination module 252 strings, efficiency decoding module 254, efficiency decoding module 255 or efficiency decoding module 256, code of a given length.

То есть каждый узел 293-1 - узел 293-4 соединен с модулем 252 определения строки, модулем 254 декодирования КПД, модулем 255 декодирования КПД и модулем 256 декодирования КПД, соответственно, и модуль 291 управления выбирает один из узла 293-1 - узла 293-4 как место назначения передачи кода, и управляет соединением между переключателем 292 и выбранным узлом.That is, each node 293-1 - node 293-4 is connected to the line determination module 252, the efficiency decoding module 254, the efficiency decoding module 255 and the efficiency decoding module 256, respectively, and the control module 291 selects one of the node 293-1 - node 293 -4 as the code transfer destination, and controls the connection between switch 292 and the selected node.

Переключатель 292 соединяет узел, выбранный на основе управления модулем 291 управления, с входом, в результате чего код, вводимый в модуль 251 разделения кода, передают в модуль 252 определения строки, модуль 254 декодирования КПД, модуль 255 декодирования КПД или модуль 256 декодирования КПД, как место назначения подачи кода, через переключатель 292 и узел, соединенный с переключателем 292.A switch 292 connects the node selected based on the control of the control unit 291 to an input, as a result of which the code input to the code separation unit 251 is passed to the line determination unit 252, the efficiency decoding module 254, the efficiency decoding module 255 or the efficiency decoding module 256, as the destination of the code, through the switch 292 and the node connected to the switch 292.

Далее обработка, выполняемая устройством 211 декодирования изображения, будет описана со ссылкой на блок-схему последовательности операций, показанную на фиг.30. Такая обработка декодирования начинается после ввода кода, который представляет собой кодированное изображение, в модуль 221 энтропийного декодирования.Next, the processing performed by the image decoding apparatus 211 will be described with reference to the flowchart shown in FIG. 30. Such decoding processing begins after entering a code, which is an encoded image, into entropy decoding unit 221.

На этапе S231, модуль 221 энтропийного декодирования выполняет обработку энтропийного декодирования, выполняет энтропийное декодирование кода, который представляет собой введенное кодированное изображение, и передает квантованные коэффициенты, полученные, таким образом, в модуль 222 инверсного квантования. Хотя подробно обработка энтропийного декодирования будет описана ниже, при такой обработке энтропийного декодирования, модуль 221 энтропийного декодирования декодирует квантованные коэффициенты в последовательных положениях на строке кодированной подполосы w одновременно и передает декодированные квантованные коэффициенты в модуль 222 инверсного квантования.In step S231, the entropy decoding unit 221 performs entropy decoding processing, performs entropy decoding of a code that is an input encoded image, and transmits the quantized coefficients thus obtained to the inverse quantization unit 222. Although the entropy decoding processing will be described in detail below, with such entropy decoding processing, the entropy decoding unit 221 decodes the quantized coefficients in successive positions on the encoded subband line w simultaneously and transmits the decoded quantized coefficients to the inverse quantization module 222.

На этапе S232 модуль 222 инверсного квантования выполняет инверсное квантование квантованных коэффициентов, передаваемых из модуля 221 энтропийного декодирования, и передает вейвлет коэффициенты каждой подполосы, полученные в результате инверсного квантования, в модуль 223 инверсного вейвлет преобразования.In step S232, the inverse quantization unit 222 quantizes inversely the quantized coefficients transmitted from the entropy decoding unit 221 and transmits the wavelet coefficients of each subband obtained by the inverse quantization to the inverse wavelet transform unit 223.

На этапе S233 модуль 223 инверсного вейвлет преобразования подвергает вейвлет коэффициенты каждой подполосы, которые были переданы из модуля 222 инверсного квантования, инверсному вейвлет преобразованию, и выводит полученное изображение, как его результат, на чем обработка декодирования заканчивается.In step S233, the inverse wavelet transform module 223 submits the wavelet coefficients of each subband that were transmitted from the inverse quantization module 222 to the inverse wavelet transform, and outputs the obtained image as its result, to which decoding processing ends.

Таким образом, устройство 211 декодирования изображения декодирует и выводит кодированное изображение.Thus, the image decoding apparatus 211 decodes and outputs the encoded image.

Далее обработка энтропийного декодирования, соответствующая обработке, выполняемой на этапе S231 по фиг.30, будет описана со ссылкой на блок-схему последовательности операций, показанную на фиг.31.Next, entropy decoding processing corresponding to the processing performed in step S231 of FIG. 30 will be described with reference to the flowchart shown in FIG.

На этапе S261 модуль 252 определения строки принимает переменную у, обозначающую строку подполосы, которая будет теперь декодирована как у=0, и сохраняет ее.In step S261, the string determination module 252 receives a variable y denoting a subband string, which will now be decoded as y = 0, and stores it.

На этапе S262 модуль 254 декодирования КПД принимает переменную Binit, обозначающую максимальные значащие разряды w квантованных коэффициентов, введенных первыми на строке (у-1), которая представляет собой одну строку, следующую перед строкой у, обозначенной переменной у, сохраненной в модуле 252 определения строки, как Binit=0, и сохраняет ее.In step S262, the efficiency decoding module 254 receives a variable Binit denoting the maximum significant bits w of the quantized coefficients introduced first on the line (y-1), which is one line next to the line y, designated by the variable y, stored in the line definition unit 252 like Binit = 0, and saves it.

Например, в случае, когда строка (у-1) представляет собой строку L1, показанную на фиг.20, значение переменной Binit, обозначающее максимальный значащий разряд w квантованных коэффициентов, введенных первыми на строке (у-1), представляет собой максимальный значащий разряд w квантованных коэффициентов с левой кромки строки L1 на чертеже. Кроме того, в случае, когда переменная у, сохраненная в модуле 152 определения строки, представляет собой у=0, строка (у-1) не существует, в результате чего значение переменной Binit представляет собой Binit=0.For example, in the case where the row (y − 1) is the row L1 shown in FIG. 20, the value of the variable Binit denoting the maximum significant digit w of the quantized coefficients introduced first on the row (y − 1) is the maximum significant digit w quantized coefficients from the left edge of the row L1 in the drawing. In addition, in the case where the variable y stored in the string definition module 152 is y = 0, the string (y − 1) does not exist, as a result of which the value of the variable Binit is Binit = 0.

Кроме того, на этапе S262 модуль 251 разделения кода передает в модуль 252 определения строки с первым 1-битовым кодом входного кода, в качестве кода, обозначающего, равны ли теперь 0 все квантованные коэффициенты строки, предназначенные для декодирования.In addition, in step S262, the code splitting unit 251 transmits to the string determining unit 252 a first 1-bit input code code as a code indicating whether all quantized row coefficients intended for decoding are now equal to 0.

На этапе S263 модуль 252 определения строки определяет, генерирует ли 0 1-битный код, считанный в (переданный) из модуля 251 разделения кода, информацию, обозначающую результат определения, и передает в модуль 253 генерирования, в модуль 254 декодирования КПД и в модуль 251 разделения кода.In step S263, the string determination module 252 determines whether 0 1-bit code read into (transmitted) from the code separation module 251 generates information indicating the determination result and passes to the generation module 253, the efficiency decoding module 254, and the efficiency module 251 code separation.

В случае, когда на этапе S263 определяется, что код равен 0, это означает, что все квантованные коэффициенты строки у равны 0, поэтому модуль 252 определения строки переводит поток обработки на этап S264. На этапе S264 модуль 253 генерирования принимает все квантованные коэффициенты на строке у, равные 0, на основе информации, обозначающей результат определения из модуля 252 определения строки. Модуль 253 генерирования затем генерирует код, обозначающий квантованные коэффициенты строки у, и передает их в модуль 258 переключения.In the case where it is determined in step S263 that the code is 0, this means that all the quantized row coefficients y are 0, therefore, the row determination unit 252 transfers the processing flow to step S264. In step S264, the generating unit 253 takes all the quantized coefficients on the string y equal to 0 based on information indicating the result of the determination from the string determining unit 252. The generating unit 253 then generates a code indicating the quantized coefficients of the string y and passes them to the switching unit 258.

Например, в случае, когда один квантованный коэффициент представлен четырьмя разрядами, как показано на фиг.21, и существуют пять квантованных коэффициентов на одной строке, модуль 253 генерирования генерирует 20 (=4×5) нулей, как код, обозначающий квантованные коэффициенты строки у, и передает их в модуль 258 переключения. Модуль 258 переключения выводит 20 непрерывно следующих 0, переданных из модуля 253 генерирования, как код, обозначающий квантованные коэффициенты одной строки, в модуль 222 инверсного квантования.For example, in the case where one quantized coefficient is represented by four digits, as shown in Fig. 21, and there are five quantized coefficients on one row, the generating unit 253 generates 20 (= 4 × 5) zeros as a code indicating the quantized row coefficients y , and transfers them to the switching module 258. The switching unit 258 outputs 20 continuously next 0 transmitted from the generating unit 253 as a code indicating the quantized coefficients of one row to the inverse quantization unit 222.

На этапе S265 модуль 254 декодирования КПД устанавливает значение переменной Binit, сохраненное в нем, как Binit=0, на основе информации, обозначающей результаты определения, из модуля 252 определения строки, и обновляет переменную Binit.In step S265, the efficiency decoding module 254 sets the value of the Binit variable stored in it as Binit = 0 based on the information indicating the determination results from the row determination module 252, and updates the Binit variable.

На этапе S266 модуль 252 определения строки определяет, имеются или нет необработанные строки среди строк декодируемой подполосы. То есть модуль 252 определения строки определяет, были ли декодированы квантованные коэффициенты в положениях на всех строках декодируемой подполосы.In step S266, the line determination module 252 determines whether or not raw lines are among the lines of the decoded subband. That is, row determination module 252 determines whether quantized coefficients at positions on all rows of a decoded subband have been decoded.

В случае, когда на этапе S266 определяется, что имеется необработанная строка, модуль 252 определения строки переводит поток обработки на этап S267, для декодирования квантованных коэффициентов в каждом положении на следующей строке (у+1) строки у, обозначенной переменной у, сохраненной в нем самом.In the case where it is determined in step S266 that there is an unprocessed string, the string determining unit 252 transfers the processing flow to step S267 to decode the quantized coefficients at each position on the next line (y + 1) of the string y, denoted by the variable y stored in it most.

На этапе S267 модуль 252 определения строки выполняет приращение переменной у, обозначающей сохраненную строку у=у+1, возвращает поток на этап S263 и выполняет последующую обработку.At step S267, the line determination module 252 increments the variable y denoting the stored line y = y + 1, returns the stream to step S263, and performs subsequent processing.

И наоборот, в случае, когда на этапе S266 определяется, что больше нет необработанных строк, квантованные коэффициенты для всех строк, составляющих подполоса, были декодированы, и, в результате, модуль 252 определения строки заканчивает обработку энтропийного декодирования, поток возвращается на этап S231 по фиг.30, и выполняется обработка, начиная с этапа S232.Conversely, in the case where it is determined in step S266 that there are no more raw lines, the quantized coefficients for all the lines making up the subband have been decoded, and as a result, the line determination unit 252 ends the entropy decoding processing, the stream returns to step S231 by 30, and processing is performed starting from step S232.

Кроме того, в случае, когда на этапе S263 по фиг.31 определяют, что код не равен 0, модуль 252 определения строки переводит поток обработки на этап S268. На этапе S268, на основе информации, обозначающей результаты определения, из модуля 252 определения строки, модуль 254 декодирования КПД устанавливает значение переменной х, обозначающей координату х положения на строке у первого квантованного коэффициента, который должен быть будет введен в w квантованных коэффициентов, которые будут теперь декодированы, равным х=0, и сохраняет эту переменную х.In addition, in the case where it is determined in step S263 of FIG. 31 that the code is not 0, the line determining unit 252 transfers the processing flow to step S268. In step S268, based on the information indicating the determination results from the row determination module 252, the efficiency decoding module 254 sets the value of the variable x denoting the x coordinate of the position on the row of the first quantized coefficient, which will be entered into w quantized coefficients, which will be now decoded equal to x = 0, and saves this variable x.

Кроме того, на этапе S268 модуль 254 декодирования КПД принимает значение переменной В, обозначающее максимальный значащий разряд w квантованных коэффициентов, декодированных в предыдущий раз, как В=Binit, и сохраняет эту переменную В. То есть модуль 254 декодирования КПД обновляет переменную В, используя значение переменной В, как значение сохраненной переменной Binit и сохраняет значение обновленной переменной В.In addition, in step S268, the efficiency decoding module 254 receives the value of the variable B denoting the maximum significant bit w of the quantized coefficients decoded the previous time as B = Binit and stores this variable B. That is, the efficiency decoding module 254 updates the variable B using the value of variable B, as the value of the stored variable Binit and stores the value of the updated variable B.

Кроме того, на этапе S268, модуль 251 разделения кода передает в модуль 254 декодирования КПД следующий 1-битный код входного кода, как код, обозначающий, был ли изменен максимальный значащий разряд w квантованных коэффициентов, которые должны быть кодированы, начиная с данного момента времени, на основе информации, обозначающей результаты определения из модуля 252 определения строки.In addition, in step S268, the code splitting unit 251 transmits the following 1-bit input code code to the efficiency decoding module 254 as a code indicating whether the maximum significant bit w of the quantized coefficients that should be encoded from a given point in time has been changed , based on the information indicating the determination results from the row determination module 252.

На этапе S269 модуль 221 энтропийного декодирования выполняет обработку декодирования набора. Хотя подробно обработка декодирования набора w будет описана ниже, при обработке декодирования набора w модуль 221 энтропийного декодирования декодирует w непрерывных квантованных коэффициентов на строке у, обозначенной переменной у, сохраненной в модуле 252 определения строки.In step S269, the entropy decoding unit 221 performs set decoding processing. Although the decoding processing of the set w will be described in detail below, in the decoding processing of the set w, the entropy decoding unit 221 decodes w continuous quantized coefficients on the string y, denoted by the variable y, stored in the string definition module 252.

На этапе S270 модуль 254 декодирования КПД определяет, имеются ли необработанные квантованные коэффициенты на строке у. То есть модуль 254 декодирования КПД определяет, все ли квантованные коэффициенты в положениях строки у, обозначенные переменной у, сохраненные в модуле 252 определения строки, были декодированы.In step S270, the efficiency decoding module 254 determines whether there are unprocessed quantized coefficients on the string y. That is, the efficiency decoding module 254 determines whether all of the quantized coefficients at the positions of the string y indicated by the variable y stored in the string definition module 252 have been decoded.

В случае, когда на этапе S270 определяется, что существуют необработанные квантованные коэффициенты на строке у, модуль 254 декодирования КПД переводит поток обработки на этап S271 для декодирования следующих w квантованных коэффициентов.In the case where it is determined in step S270 that there are raw quantized coefficients on line y, the efficiency decoding unit 254 transfers the processing flow to step S271 to decode the next w quantized coefficients.

На этапе S271 модуль 254 декодирования КПД принимает значение переменной х, сохраненное в нем, как х=х+w, и возвращает поток обработки на этап S269. В соответствии с этим квантованные коэффициенты в каждом из положений (x+w, у), (x+w+1, у),...,(x+2w-1, у) на строке у декодированы при обработке, выполняемой на следующем этапе S269.In step S271, the efficiency decoding unit 254 receives the value of the variable x stored in it as x = x + w, and returns the processing flow to step S269. In accordance with this, the quantized coefficients in each of the positions (x + w, y), (x + w + 1, y), ..., (x + 2w-1, y) on the string y are decoded during processing performed on the next step is S269.

Кроме того, в случае, когда на этапе S270 определяется, что больше нет необработанных квантованных коэффициентов на строке у, квантованные коэффициенты во всех положениях на строке у были декодированы, в результате чего модуль 254 декодирования КПД возвращает поток обработки на этап S266, и выполняется последующая обработка.In addition, in the case where it is determined in step S270 that there are no more unprocessed quantized coefficients on the string y, the quantized coefficients in all positions on the string y were decoded, as a result of which the efficiency decoding module 254 returns the processing flow to step S266, and the subsequent treatment.

Таким образом, модуль 221 энтропийного декодирования декодирует квантованные коэффициенты в каждом положении подполосы на заданное количество каждый, в порядке растрового сканирования.Thus, entropy decoding unit 221 decodes the quantized coefficients at each position of the subband by a predetermined number each, in raster scan order.

Таким образом, путем декодирования квантованных коэффициентов в каждом из положений подполосы на заданное количество каждый в порядке растрового сканирования, входные квантованные коэффициенты могут быть обработаны в порядке, в котором их вводят, и задержка из-за кодирования квантованного коэффициента может быть уменьшена.Thus, by decoding the quantized coefficients in each of the subband positions by a predetermined number each in raster scan order, the input quantized coefficients can be processed in the order in which they are input, and the delay due to the encoding of the quantized coefficient can be reduced.

Далее будет описана обработка декодирования набора w, соответствующая обработке, выполняемой на этапе S269, представленном на фиг.31, со ссылкой на блок-схему последовательности операций, представленную на фиг.32.Next, decoding processing of the set w corresponding to the processing performed in step S269 of FIG. 31 will be described with reference to the flowchart of FIG. 32.

Как описано выше, на этапе S268 по фиг.31, в модуль 251 разделения кода - модуль 254 декодирования КПД передает 1-битный код, обозначающий, изменился ли максимальный значащий разряд w квантованных коэффициентов, предназначенных для декодирования.As described above, in step S268 of FIG. 31, a 1-bit code is transmitted to the code decoding module 251 — the efficiency decoding module 254 indicating whether the maximum significant bit w of the quantized coefficients for decoding has changed.

На этапе S311 по фиг.32, модуль 254 декодирования КПД определяет, равен ли 0 считанный (переданный) 1-битный код.In step S311 of FIG. 32, the efficiency decoding module 254 determines whether the read (transmitted) 1-bit code is 0.

В случае, когда на этапе S311 определяется, что считанный код равен 0, максимальный значащий разряд не изменился, в результате чего модуль 254 декодирования КПД генерирует информацию, означающую, что максимальный значащий разряд не изменился, и передает ее в модуль 251 разделения кода, модуль 255 декодирования КПД, и модуль 257 синтеза квантованного коэффициента, пропускает обработку на этапе S312-S314, и переводит поток обработки на этап S315.In the case where it is determined in step S311 that the read code is 0, the maximum significant bit has not changed, as a result of which the efficiency decoding module 254 generates information meaning that the maximum significant bit has not changed and transfers it to the code separation module 251, the module The efficiency decoding 255, and the quantized coefficient synthesis module 257, skips the processing in step S312-S314, and transfers the processing flow to step S315.

То есть в случае, когда код, обозначающий, изменился или нет максимальный значащий разряд, равен 0, вводимый символ, следующий после 1-битного кода, равного 0, обозначающего, изменился ли максимальный значащий разряд, не является кодом, обозначающим, что максимальный значащий разряд увеличился или уменьшился, и кодом, обозначающим величину изменения максимального значащего разряда, но скорее представляет собой код, обозначающий абсолютное значение квантованных коэффициентов, в результате чего этапы S312 - этап S314, которые обозначают обработку кода, обозначающего, увеличился ли или уменьшился ли максимальный значащий разряд, и кода, обозначающего величину изменения максимального значащего разряда, пропускают.That is, in the case where the code indicating whether the maximum significant digit has changed or not is 0, the input character following the 1-bit code equal to 0, indicating whether the maximum significant digit has changed, is not a code indicating that the maximum significant digit the bit increased or decreased, and a code indicating the magnitude of the change in the maximum significant discharge, but rather a code indicating the absolute value of the quantized coefficients, resulting in steps S312 - step S314, which indicate the processing code indicating, whether increased or decreased if the maximum significant digit and the code indicating the amount of change of the maximum significant digit is passed.

И наоборот, в случае, когда на этапе S311 определяют, что считанный код не равен 0, максимальный значащий разряд изменился, в результате чего модуль 254 декодирования КПД переводит поток обработки на этап S312, считывает 1-битный код из модуля 251 разделения кода и сохраняет его значение как заданную переменную m.Conversely, in the case where it is determined in step S311 that the read code is not 0, the maximum significant bit has changed, as a result of which the efficiency decoding unit 254 transfers the processing flow to step S312, reads the 1-bit code from the code separation unit 251 and stores its value as a given variable m.

На этапе S313 модуль 254 декодирования КПД считывает код из модуля 521 разделения кода до тех пор, пока код не станет равным 1 (до тех пор, пока не считается код 1), и сохраняет количество кодов, равных 0, считанных до этого момента, как переменную n. Например, в случае, когда третий код, который модуль 254 декодирования КПД считал из модуля 251 разделения кода, равен 1, то есть в случае, когда модуль 254 декодирования КПД считал код "001", количество кодов 0, считанных до момента, когда модуль 254 декодирования КПД считал 1, равно 2, в результате чего модуль 254 декодирования КПД сохраняет 2, что представляет собой количество считанных кодов 0, и значение переменной n.In step S313, the efficiency decoding module 254 reads the code from the code splitting module 521 until the code becomes 1 (until the code 1 is counted), and stores the number of codes equal to 0 read so far as variable n. For example, in the case when the third code that the efficiency decoding module 254 read from the code separation module 251 is 1, that is, in the case where the efficiency decoding module 254 read the code “001”, the number of codes 0 is read until the module The efficiency decoding decoding 254 counted 1, equal to 2, as a result of which the efficiency decoding decoding module 254 stores 2, which is the number of codes read 0, and the value of the variable n.

На этапе S314 модуль 254 декодирования КПД получает значение В, обозначающее максимальные значащие разряды из следующего выражения (9), и сохраняет значение полученной переменной В.In step S314, the efficiency decoding module 254 obtains a value B denoting the maximum significant bits from the following expression (9), and stores the value of the obtained variable B.

Figure 00000010
Figure 00000010

Теперь, левая сторона выражения (9) представляет значение переменной В, которое должно быть вновь получено, при этом в позиции В с правой стороны представлено значение сохраненной переменной В. Кроме того, символ "" в выражении (9) представляет экспоненту. В соответствии с этим, (-1)m обозначает (-1) в m-й степени.Now, the left side of the expression (9) represents the value of the variable B, which must be obtained again, while the position of the right side shows the value of the stored variable B. In addition, the symbol " " in the expression (9) represents the exponent. Accordingly, (-1) m is (-1) in m-th degree.

Модуль 254 декодирования КПД выполняет расчет по выражению (9) и изменяет сохраненную переменную В на основе сохраненной переменной В, переменной m и переменной n. После обновления переменной В, обозначающей максимальный значащий разряд, модуль 254 декодирования КПД генерирует информацию, обозначающую обновленный максимальный значащий разряд, и передает ее в модуль 251 разделения кода, модуль 255 декодирования КПД и модуль 257 синтеза квантованного коэффициента.The efficiency decoding module 254 calculates by expression (9) and changes the stored variable B based on the stored variable B, variable m, and variable n. After updating the variable B indicating the maximum significant bit, the efficiency decoding module 254 generates information indicating the updated maximum significant bit and passes it to the code separation module 251, the efficiency decoding module 255 and the quantized coefficient synthesis module 257.

После получения нового максимального значащего разряда на этапе S314 или определения на этапе S311, что 1-битный код, который был считан, равен 0, модуль 254 декодирования КПД переводит поток обработки на этап S315, и в случае, когда значение сохраненной переменной х равно 0, устанавливает значение сохраненной переменной Binit как Binit=В.After receiving a new maximum significant digit in step S314 or determining in step S311 that the 1-bit code that was read is 0, the efficiency decoding unit 254 transfers the processing flow to step S315, and in the case where the value of the stored variable x is 0 , sets the value of the saved Binit variable to Binit = B.

То есть в случае, когда значение сохраненной переменной х равно 0, модуль 254 декодирования КПД принимает сохраненное значение переменной Binit, обозначающее максимальный значащий разряд w квантованных коэффициентов, введенных первыми на строке (у-1), как значение переменных, обозначающих максимальный значащий разряд w квантованных коэффициентов, которые должны быть декодированы, начиная с этого момента времени, и обновляет переменную Binit.That is, in the case where the value of the stored variable x is equal to 0, the efficiency decoding module 254 takes the stored value of the variable Binit, denoting the maximum significant digit w of the quantized coefficients introduced first on the line (y-1), as the value of the variables denoting the maximum significant bit w quantized coefficients that must be decoded from this point in time, and updates the Binit variable.

Таким образом, в случае, когда переменная х=0, значение переменной Binit установлено как Binit=В, в результате чего кодирование квантованных коэффициентов может быть выполнено для w квантованных коэффициентов, начиная от х=0 в следующей строке (например, строке (у+1)), используя корреляционную взаимосвязь с максимальным значащим разрядом w квантованных коэффициентов, начиная от х=0 в предыдущей строке (например, строке у).Thus, in the case when the variable x = 0, the value of the variable Binit is set to Binit = B, as a result of which the encoding of the quantized coefficients can be performed for w quantized coefficients, starting from x = 0 in the next row (for example, the row (у + 1)), using the correlation relationship with the maximum significant digit w of the quantized coefficients, starting from x = 0 in the previous row (for example, row y).

На этапе S316 модуль 255 декодирования КПД принимает заданную переменную i и изменяет переменную i от 0 до (w-1), в результате чего считывается код из модуля 251 разделения кода, с приращениями В бит, и передает (выводит) B бит считанного кода в модуль 256 декодирования КПД, и модуль 257 синтеза квантованного коэффициента, как код, обозначающий значащие разряды квантованных коэффициентов в положениях (x+i, у) на строке у. Кроме того, модуль 255 декодирования КПД генерирует информацию, обозначающую значащие разряды квантованных коэффициентов, и передает ее в модуль 251 разделения кода.In step S316, the efficiency decoding module 255 receives the given variable i and changes the variable i from 0 to (w-1), as a result of which the code is read from the code splitting module 251, in increments of B bits, and transmits (outputs) B bits of the read code to an efficiency decoding module 256, and a quantized coefficient synthesis module 257, as a code indicating significant bits of the quantized coefficients at positions (x + i, y) on the string y. In addition, the efficiency decoding module 255 generates information indicating significant bits of the quantized coefficients, and transmits it to the code separation module 251.

Теперь значение х в положениях (x+i, у) представляет собой значение переменной х, сохраненной в модуле 254 декодирования КПД. Например, в случае, когда значение переменной х, сохраненной в модуле 254 декодирования КПД, равно 0, и значение переменной В, сохраненной в модуле 255 декодирования КПД, равно 3, модуль 255 декодирования КПД считывает по 3 бита кода из модуля 251 разделения кода, с переменной i=0, и выводит код 3 считанных битов, как значащий разряд квантованного коэффициента в положении (0, у).Now the value of x at positions (x + i, y) is the value of the variable x stored in the efficiency decoding unit 254. For example, in the case where the value of the variable x stored in the efficiency decoding unit 254 is 0 and the value of the variable B stored in the efficiency decoding unit 255 is 3, the efficiency decoding unit 255 reads 3 bits of code from the code splitting unit 251, with the variable i = 0, and outputs a code of 3 read bits, as a significant bit of the quantized coefficient in position (0, y).

Таким же образом, модуль 255 декодирования КПД считывает другие 3 бита кода из модуля 251 разделения кода, с переменной i=1, и выводит код 3 считанных битов, как значащий разряд квантованного коэффициента в положении (1, у), считывает следующие 3 бита кода, выводимые из модуля 251 разделения кода, с переменной i=2 и выводит код этих 3 битов, считанных, как значащий разряд квантованного коэффициента в положении (2, у), и считывает следующие 3 бита кода из модуля 151 разделения кода с переменной i=3, и выводит код 3 считанных битов, как значащий разряд квантованного коэффициента в положении (3, у).In the same way, the efficiency decoding module 255 reads the other 3 bits of code from the code separation module 251, with the variable i = 1, and outputs the code 3 of the read bits as a significant bit of the quantized coefficient in position (1, y), reads the next 3 bits of code output from the code splitting module 251 with the variable i = 2 and outputs the code of these 3 bits read as the significant bit of the quantized coefficient in position (2, y), and reads the next 3 bits of code from the code splitting module 151 with the variable i = 3, and outputs a code of 3 read bits as a significant digit quantized th coefficient in position (3, y).

На этапе S317 модуль 256 декодирования КПД принимает заданную переменную i и изменяет эту переменную i от 0 до (w-1) и в случае, когда значащие разряды (абсолютные значения) квантованных коэффициентов в положениях (x+i, у) на строке у не равны 0, считывает 1 бит кода из модуля 251 разделения кода. Модуль 256 декодирования КПД затем декодирует этот считанный код и передает (выводит) полученный в результате код в модуль 257 синтеза квантованного коэффициента, как знаки квантованных коэффициентов. Кроме того, модуль 256 декодирования КПД генерирует информацию, обозначающую знаки квантованных коэффициентов, и передает ее в модуль 251 разделения кода.In step S317, the efficiency decoding module 256 takes the given variable i and changes this variable i from 0 to (w-1) and in the case when the significant bits (absolute values) of the quantized coefficients in the positions (x + i, y) on the line y are not equal to 0, reads 1 bit of code from module 251 code separation. The efficiency decoding module 256 then decodes this read code and transmits (outputs) the resulting code to the quantized coefficient synthesis module 257 as signs of the quantized coefficients. In addition, the efficiency decoding module 256 generates information indicative of the signs of the quantized coefficients and transmits it to the code separation module 251.

Теперь значение х в положениях (x+i, у) принимает значение переменной х, сохраненной в модуле 254 декодирования КПД. Например, в случае, когда значение переменной х, сохраненной в модуле 254 декодирования КПД, равно 0, и (обозначение кода) значащий разряд, не равный 0, передают из модуля 255 декодирования КПД, модуль 256 декодирования КПД принимает переменную i=0 и считывает 1 бит кода из модуля 215 разделения кода и, в случае, когда код равен 0, передает код, обозначающий знак "-" квантованного коэффициента в положении (0, у), в модуль 257 синтеза квантованного коэффициента, и в случае, когда код равен 1, передает код, обозначающий знак "+" квантованного коэффициента в положении (0, у), в модуль 257 синтеза квантованного коэффициента.Now, the value of x at positions (x + i, y) takes on the value of the variable x stored in the efficiency decoding unit 254. For example, in the case where the value of the variable x stored in the efficiency decoding module 254 is 0, and (code designation) a significant bit other than 0 is transmitted from the efficiency decoding module 255, the efficiency decoding module 256 takes the variable i = 0 and reads 1 bit of code from the code separation module 215 and, in the case where the code is 0, transmits a code denoting the “-” sign of the quantized coefficient at position (0, y) to the quantized coefficient synthesis module 257, and in the case when the code is 1, transmits a code denoting the sign “+” of the quantized coefficient in the position ii (0, y), synthesis module 257 the quantized coefficient.

Кроме того, в случае, когда абсолютное значение (обозначение кода) значащего разряда, переданного из модуля 255 декодирования КПД, равно 0, знак квантованного коэффициента в положении (0, у) отсутствует, в результате чего модуль 256 декодирования КПД не считывает код из модуля 251 разделения кода.In addition, in the case where the absolute value (code designation) of the significant bit transmitted from the efficiency decoding module 255 is 0, the sign of the quantized coefficient is not in position (0, y), as a result of which the efficiency decoding module 256 does not read the code from the module 251 code separation.

Таким же образом, в случае, когда (абсолютное значение) значащий разряд, переданный из модуля 255 декодирования КПД, не равен 0, модуль 256 декодирования КПД принимает переменную i=1 и считывает 1 бит кода из модуля 215 разделения кода, и в случае, когда код равен 0, передает код, обозначающий знак "-" в модуль 257 синтеза квантованного коэффициента, и в случае, когда код равен 1, передает код, обозначающий знак "+".In the same way, in the case when the (absolute value) significant bit transmitted from the efficiency decoding module 255 is not equal to 0, the efficiency decoding module 256 takes the variable i = 1 and reads 1 bit of code from the code separation module 215, and in the case when the code is 0, it transmits the code indicating the “-” sign to the quantized coefficient synthesis module 257, and in the case where the code is 1, it transmits the code indicating the “+” sign.

Кроме того, в случае, когда значащий разряд, переданный следующим из модуля 255 декодирования КПД, не равен 0, модуль 256 декодирования КПД принимает переменную i=2 и считывает 1 бит кода из модуля 215 разделения кода, и в случае, когда код равен 0, передает код, обозначающий знак "-", в модуль 257 синтеза квантованного коэффициента, и в случае, когда код равен 1, передает код, обозначающий знак "+". Кроме того, в случае, когда значащий разряд, переданный следующим из модуля 255 декодирования КПД, не равен 0, модуль 256 декодирования КПД принимает переменную i=3 и считывает 1 бит кода из модуля 215 разделения кода, и в случае, когда этот код равен 0, передает код, обозначающий знак "-", в модуль 257 синтеза квантованного коэффициента, и в случае, когда код равен 1, передает код, обозначающий знак "+".In addition, in the case where the significant bit transmitted by the next one from the efficiency decoding module 255 is not equal to 0, the efficiency decoding module 256 takes the variable i = 2 and reads 1 bit of code from the code separation module 215, and in the case when the code is 0 transmits a code indicating the sign “-” to the module 257 synthesis of the quantized coefficient, and in the case when the code is 1, transmits a code indicating the sign “+”. In addition, in the case where the significant bit transmitted by the next one from the efficiency decoding module 255 is not equal to 0, the efficiency decoding module 256 takes the variable i = 3 and reads 1 bit of code from the code separation module 215, and in the case when this code is 0, transmits a code denoting the “-” sign to the quantized coefficient synthesis module 257, and when the code is 1, transmits a code denoting the “+” sign.

На этапе S318 модуль 257 синтеза квантованного коэффициента синтезирует значащие разряды, передаваемые из модуля 255 декодирования КПД и знаки, передаваемые из модуля 255 декодирования КПД, выводит полученные в результате квантованные коэффициенты в модуль 222 инверсного квантования через модуль 258 переключения, заканчивает обработку декодирования набора w и возвращает поток на этап S269 на фиг.31, и выполняет обработку, начиная с этапа S270.In step S318, the quantized coefficient synthesis module 257 synthesizes the significant bits transmitted from the efficiency decoding module 255 and the characters transmitted from the efficiency decoding module 255, outputs the resulting quantized coefficients to the inverse quantization module 222 through the switching module 258, ends the decoding processing of the set w and returns the flow to step S269 of FIG. 31, and performs processing starting from step S270.

Например, количество разрядов в абсолютных значениях квантованных коэффициентов, предназначенных для вывода, определяется заранее. В случае, когда количество разрядов абсолютного значения квантованных коэффициентов, предназначенных для вывода, которое определено заранее, представляет собой 4 разряда, и максимальный значащий разряд, обозначенный информацией, обозначающей максимальный значащий разряд из модуля 254 декодирования КПД, равен 3, значащий разряд "101" передают из модуля 255 декодирования КПД, и после того, как код, обозначающий знак "-", будет передан из модуля 255 декодирования КПД, модуль 257 синтеза квантованного коэффициента, выводит квантованный коэффициент "-0101".For example, the number of bits in the absolute values of the quantized coefficients intended for output is determined in advance. In the case where the number of bits of the absolute value of the quantized coefficients intended for output, which is predetermined, is 4 bits, and the maximum significant bit indicated by the information indicating the maximum significant bit from the efficiency decoding unit 254 is 3, the significant bit is “101” transmit from the efficiency decoding module 255, and after the code indicating the sign “-” is transmitted from the efficiency decoding module 255, the quantized coefficient synthesis module 257 outputs the quantized coefficient “-010 one".

То есть количество разрядов абсолютного значения квантованных коэффициентов, предназначенных для вывода, представляет 4 разряда, и значащие разряды представляют собой "101" (три разряда), в результате чего модуль 257 синтеза квантованного коэффициента принимает один бит высшего порядка значащих разрядов "101", как 0 для 4-значного абсолютного значения квантованного коэффициента pf "0101". Кроме того, знак "-" квантованного коэффициента и абсолютное значение "0101" квантованного коэффициента синтезируют так, что получается код "-0101", который выводят как квантованный коэффициент.That is, the number of bits of the absolute value of the quantized coefficients to be output is 4 bits, and the significant bits are “101” (three bits), whereby the quantized coefficient synthesis module 257 receives one higher order bit of the significant bits “101”, as 0 for the 4-digit absolute value of the quantized coefficient pf "0101". In addition, the “-” sign of the quantized coefficient and the absolute value “0101” of the quantized coefficient are synthesized so that a code “-0101” is obtained, which is output as a quantized coefficient.

Следует отметить, что в случае, когда значащий разряд, передаваемый из модуля 255 декодирования КПД, равен 0, модуль 257 синтеза квантованного коэффициента выводит квантованный коэффициент без знака. Например, в случае, когда количество цифр абсолютного значения квантованных коэффициентов, предназначенных для вывода, которое определено заранее, равно 4 разрядам, и максимальный значащий разряд по информации, обозначающей максимальный значащий разряд из модуля 254 декодирования КПД, равен 3, и значащий разряд "000" передают из модуля 255 декодирования КПД, модуль 257 синтеза квантованного коэффициента выводит квантованный коэффициент "0000".It should be noted that in the case where the significant bit transmitted from the efficiency decoding unit 255 is 0, the quantized coefficient synthesis unit 257 outputs an unsigned quantized coefficient. For example, in the case where the number of digits of the absolute value of the quantized coefficients intended for output, which is predetermined, is 4 bits, and the maximum significant bit according to information indicating the maximum significant bit from the efficiency decoding module 254 is 3, and the significant bit is "000 "transmit from the efficiency decoding module 255, the quantized coefficient synthesis module 257 outputs the quantized coefficient" 0000 ".

Таким образом, модуль 221 энтропийного декодирования декодирует квантованные коэффициенты подполосы в виде множества заданных модулей.Thus, the entropy decoding unit 221 decodes the quantized subband coefficients as a plurality of predetermined modules.

Таким образом, декодирование кодированных квантованных коэффициентов подполосы в виде множества заданных модулей устраняет необходимость выполнения обработки множество раз в плоскости бита на основе множества путей кодирования, в отличие от случая декодирования изображения при использовании JPEG 2000, в результате чего декодирование изображения может выполняться быстрее. В соответствии с этим, устройство кодирования, предназначенное для декодирования изображения с высокой разрешающей способностью в режиме реального времени, может быть реализовано без лишних затрат.Thus, decoding encoded quantized subband coefficients in the form of a plurality of predetermined modules eliminates the need for processing multiple times in the bit plane based on a plurality of coding paths, unlike the case of decoding an image using JPEG 2000, whereby decoding an image can be faster. Accordingly, an encoding device for decoding a high-resolution image in real time can be implemented without unnecessary costs.

Таким образом на примере устройства 111 кодирования изображения, описанного выше, приведено описание того, что абсолютные значения заданных w квантованных коэффициентов кодируют в порядке кодирования (или декодирования) абсолютных значений квантованных коэффициентов, но кодирование (или декодирование) изображения может выполняться быстрее благодаря одновременному параллельному кодированию (или декодированию) w квантованных коэффициентов, используя команды расчета ОКМД (SIMD, один поток команд и множество потоков данных) совместно с ЦПС (DSP, цифровой процессор сигналов) общего назначения или ЦПУ общего назначения.Thus, the example of the image encoding apparatus 111 described above describes that the absolute values of the given w quantized coefficients are encoded in the order of encoding (or decoding) the absolute values of the quantized coefficients, but the encoding (or decoding) of the image can be faster due to the simultaneous parallel encoding (or decoding) w of quantized coefficients using the OKMD calculation instructions (SIMD, one instruction stream and many data streams) together with the DSP ( DSP, general purpose digital signal processor) or general purpose CPU.

Затем пример инструкций работы ОКМД включает в себя ММР (ММХ, Мультимедийное расширение), SSE (дополнительный набор потоковых команд ОКМД), например SSE2, SSE3, используемые с ЦПУ производства Intel Corporation и т.д.Then, an example of OKMD operation instructions includes MMR (MMX, Multimedia Extension), SSE (additional set of OKMD streaming commands), for example SSE2, SSE3, used with CPUs manufactured by Intel Corporation, etc.

В случае кодирования абсолютных значений квантованных коэффициентов с использованием таких инструкций работы ОКМД, модуль 123 энтропийного кодирования устройства 111 кодирования изображения выполнен так, как, например, показано на фиг.33.In the case of encoding the absolute values of the quantized coefficients using such OKMD operating instructions, the entropy encoding module 123 of the image encoding apparatus 111 is configured as, for example, shown in FIG. 33.

Модуль 123 энтропийного кодирования, показанный на фиг.33, является таким же, что и модуль 123 энтропийного кодирования, показанный на фиг.22 в том, что в нем предусмотрены модуль 161 определения строки, модуль 162 кодирования КПД, модуль 163 расчета максимального значащего разряда, модуль 164 кодирования КПД, модуль 165 выделения значащего разряда, модуль 166 кодирования КПД, модуль 167 выделения знака и модуль 168 кодирования КПД, и отличается тем, что буфер 401 предусмотрен для модуля 169 соединения кода. Следует отметить, что участки, показанные на фиг.33, которые соответствуют представленным на фиг.22, обозначены с теми же номерами ссылочных позиций, и их описание здесь не приведено.The entropy encoding module 123 shown in FIG. 33 is the same as the entropy encoding module 123 shown in FIG. 22 in that it includes a line determination module 161, an efficiency encoding module 162, a maximum significant discharge calculation module 163 , an efficiency encoding module 164, a significant bit allocation module 165, an efficiency encoding module 166, a character extraction module 167 and an efficiency encoding module 168, and characterized in that the buffer 401 is provided for the code connection module 169. It should be noted that the sections shown in FIG. 33, which correspond to those shown in FIG. 22, are denoted with the same reference numerals and are not described here.

В буфере 401 модуля 169 соединения кода временно сохраняют код, обозначающий, равны 0 или нет все квантованные коэффициенты строки, код, обозначающий максимальный значащий разряд, код, обозначающий абсолютное значение квантованных коэффициентов, и код, обозначающий знак квантованных коэффициентов, соответственно, переданный из модуля 162 кодирования КПД, модуля 164 кодирования КПД, модуля 166 кодирования КПД и модуля 168 кодирования КПД.In the buffer 401 of the code connection module 169, a code is temporarily stored indicating whether or not all quantized row coefficients are equal, a code indicating the maximum significant digit, a code indicating the absolute value of the quantized coefficients, and a code indicating the sign of the quantized coefficients, respectively, transmitted from the module 162 coding efficiency, module 164 coding efficiency, module 166 coding efficiency and module 168 coding efficiency.

Областью сохранения буфера 401 управляют с приращениями 32 бита, и код (данные), вводимый в буфер 401, сохраняется, будучи разделенным на код, используемый для обработки скалярных расчетов, и код, используемый для обработки векторных расчетов. То есть в одной области сохранения размером 32 бита сохраняется код, используемый для обработки скалярных расчетов, или код, используемый для обработки векторных расчетов, в качестве кода (данных), которые должны быть временно сохранены.The storage area of the buffer 401 is controlled in increments of 32 bits, and the code (data) entered into the buffer 401 is stored, being divided into a code used for processing scalar calculations, and a code used for processing vector calculations. That is, in one 32-bit storage area, the code used to process scalar calculations, or the code used to process vector calculations, is stored as a code (data) that should be temporarily stored.

С помощью модуля 123 энтропийного кодирования, показанного на фиг.33, абсолютные значения квантованных коэффициентов кодируют параллельно, используя инструкции операции ОКМД, так, что код, обозначающий абсолютные значения квантованных коэффициентов, принимают как код, используемый для обработки векторных расчетов, и другой код выбирают как код, используемый для скалярного расчета обработки.Using the entropy encoding module 123 shown in FIG. 33, the absolute values of the quantized coefficients are encoded in parallel using the instructions of the OKMD operation, so that a code indicating the absolute values of the quantized coefficients is accepted as the code used for processing vector calculations, and another code is selected as a code used for scalar processing calculation.

Следует отметить, что в следующем описании 32-битные области сохранения, предусмотренные для буфера 401, области сохранения, в которых сохраняют код, используемый для обработки скалярного расчета, будут называться скалярными областями, и области сохранения, в которых располагается код, используемый для обработки векторных расчетов, будут называться векторными областями.It should be noted that in the following description, 32-bit storage areas provided for buffer 401, storage areas in which the code used to process the scalar calculation is stored will be called scalar areas, and storage areas in which the code used to process vector calculations will be called vector areas.

Далее энтропийное кодирование, выполненное модулем 123 энтропийного кодирования, показанным на фиг.33, будет описано со ссылкой на фиг.34.Next, the entropy encoding performed by the entropy encoding unit 123 shown in FIG. 33 will be described with reference to FIG. 34.

Например, предположим, что 12 квантованных коэффициентов "-0101", "+0011", "-0110", "+0010", "+0011", "+0110", "0000", "-0011", "+1101", "-0100", "+0111" и "-1010", показанных на фиг.21, вводят в модуль 123 энтропийного кодирования, как показано в верхней левой части на фиг.34.For example, suppose that the 12 quantized coefficients are "-0101", "+0011", "-0110", "+0010", "+0011", "+0110", "0000", "-0011", "+1101 "," -0100 "," +0111 "and" -1010 "shown in Fig. 21 are entered into the entropy encoding module 123, as shown in the upper left part of Fig. 34.

Таким же образом, как описано со ссылкой на фиг.21, в модуль 169 соединения кода в модуль 123 энтропийного кодирования передают код "1", обозначающий, равны ли 0 все квантованные коэффициенты строки, которые предназначены для кодирования, и код "10001", обозначающий максимальные значащие разряды первых четырех вводимых квантованных коэффициентов "-0101", "+0011", "-0110" и "+0010".In the same way, as described with reference to FIG. 21, a code “1” is transmitted to the code connection module 169 to the entropy encoding module 123, indicating whether all quantized row coefficients that are intended to be encoded are equal to 0 and the code “10001”, denoting the maximum significant bits of the first four input quantized coefficients "-0101", "+0011", "-0110" and "+0010".

Затем код "110001", состоящий из кода "1", обозначающий, равны ли 0 или нет все квантованные коэффициенты строки, предназначенные для кодирования, и код "10001", обозначающий максимальные значащие разряды квантованных коэффициентов, сохраняют в 32-битной скалярной области, предусмотренной в буфере 401 модуля 169 соединения кода, как обозначено стрелкой А11.Then, the code "110001", consisting of the code "1", indicating whether all quantized row coefficients intended for encoding are equal to 0 or not, and the code "10001", indicating the maximum significant bits of the quantized coefficients, are stored in the 32-bit scalar region, provided in the buffer 401 of the code connection module 169, as indicated by arrow A11.

В примере, показанном на фиг.34, код, предназначенный для сохранения в скалярной области, сохраняют в направлении слева направо на схеме в порядке от битов высшего порядка. После сохранения кода во всей одной скалярной области, то есть после того, как 32 бита кода будут сохранены в одной скалярной области, одну новую скалярную область предусматривают в буфере 401 и код, используемый при обработке скалярных расчетов, последовательно сохраняют во вновь предусмотренной скалярной области.In the example shown in FIG. 34, the code intended to be stored in the scalar region is stored in the direction from left to right in the diagram in the order of the higher order bits. After the code is saved in all one scalar region, that is, after 32 bits of code are stored in one scalar region, one new scalar region is provided in buffer 401 and the code used in the processing of scalar calculations is sequentially stored in the newly provided scalar region.

После того как код "110001", состоящий из кода "1", обозначающего, равны ли 0 или нет все квантованные коэффициенты строки, предназначенной для кодирования, и код "10001", обозначающий максимальные значащие разряды квантованных коэффициентов, будут сохранены в скалярной области, затем модуль 123 энтропийного кодирования сохраняет в векторной области код, эквивалентный максимальным значащим разрядам, представляющим абсолютные значения каждых из первых введенных w (четырех) квантованных коэффициентов "-0101", "+0011", "-0110" и "+0010" одновременно (выстроенных параллельно).After the code "110001" consisting of the code "1" indicating whether or not all the quantized coefficients of the string to be encoded are equal to, and the code "10001" indicating the maximum significant bits of the quantized coefficients will be stored in the scalar region, then the entropy coding unit 123 stores in the vector domain a code equivalent to the maximum significant bits representing the absolute values of each of the first w (four) quantized coefficients entered, “-0101”, “+0011”, “-0110” and “+0010” simultaneously ( lined up in parallel).

Максимальные значащие разряды квантованных коэффициентов "-0101", "+0011", "-0110" представляют собой, как описано со ссылкой на фиг.21, "3", в результате чего код, представляющий абсолютное значение четырех квантованных коэффициентов, представляет собой "101", "011", "110" и "010", соответственно, и как показано стрелкой А12, коды "101", "011", "110" и "010", представляющие абсолютное значение квантованных коэффициентов, сохранены выстроенными в одной векторной области, предусмотренной в буфере 401.The maximum significant bits of the quantized coefficients “-0101”, “+0011”, “-0110” are, as described with reference to FIG. 21, “3”, with the result that the code representing the absolute value of the four quantized coefficients is “ 101 "," 011 "," 110 "and" 010 ", respectively, and as shown by arrow A12, the codes" 101 "," 011 "," 110 "and" 010 "representing the absolute value of the quantized coefficients are stored arranged in one vector area provided in buffer 401.

Теперь векторную область дополнительно разделяют на четыре 8-битовых области, причем в каждой из четырех областей векторной области сохранен код, представляющий абсолютные значения четырех квантованных коэффициентов одинаковой длины (битовой длины) в направлении слева направо на чертеже, в порядке, начиная от битов более высокого порядка.Now the vector region is further divided into four 8-bit regions, and in each of the four regions of the vector region a code is stored representing the absolute values of the four quantized coefficients of the same length (bit length) from left to right in the drawing, in order, starting from the bits of the higher order.

В векторной области, показанной стрелкой А12 на чертеже, код "101", обозначающий абсолютное значение квантованного коэффициента, сохраняют в направлении слева в 8-битовой области, находящейся с левой стороны, код "011" сохраняют в направлении слева в 8-битовой области, второй с левой стороны, код "110" сохраняют в направлении слева в области второй с правой стороны и код "010" сохраняют в направлении слева в области, находящейся в самой правой позиции.In the vector region shown by arrow A12 in the drawing, the code "101" indicating the absolute value of the quantized coefficient is stored in the left direction in the 8-bit region located on the left side, the code "011" is stored in the left direction in the 8-bit region, second from the left side, the code "110" is stored in the left direction in the area of the second from the right side and the code "010" is stored in the left direction in the area located in the right-most position.

Кроме того, таким же образом, как и в случае скалярной области, в векторной области, после сохранения кода, во всей одной векторной области, то есть после сохранения 32 битов кода в одной векторной области, одну новую векторную область предусматривают в буфере 401, и код, используемый при обработке векторных расчетов, последовательно сохраняют во вновь предоставленной скалярной области.In addition, in the same manner as in the case of the scalar region, in the vector region, after saving the code, in the whole one vector region, that is, after saving 32 bits of code in one vector region, one new vector region is provided in the buffer 401, and the code used in the processing of vector calculations is sequentially stored in the newly provided scalar region.

После того, как код, обозначающий абсолютные значения квантованных коэффициентов "-0101", "+0011", "-0110" и "+0010", будет сохранен в векторной области, модуль 123 энтропийного кодирования сохраняет код, обозначающий знаки этих четырех квантованных коэффициентов в скалярной области, как показано стрелкой А13.After the code indicating the absolute values of the quantized coefficients "-0101", "+0011", "-0110" and "+0010" is stored in the vector domain, the entropy coding unit 123 stores a code indicating the signs of these four quantized coefficients in the scalar region, as shown by arrow A13.

Как показано стрелкой A11, код "110001", состоящий из кода "1", обозначающий, равны ли 0 или нет все квантованные коэффициенты строки, предназначенные для кодирования, и код "10001", обозначающий максимальные значащие разряды квантованных коэффициентов, уже сохранены в скалярной области, таким образом, как показано стрелкой А13, код "1010", обозначающий знаки квантованных коэффициентов "-0101", "+0011", "-0110" и "+0010", сохранен с правой стороны кода "110001", уже сохраненного в скалярной области (последовательно справа от кода "110001").As shown by arrow A11, the code "110001", consisting of the code "1", indicating whether all quantized row coefficients are intended to be equal to 0 or not, and the code "10001", indicating the maximum significant bits of the quantized coefficients, are already stored in the scalar areas, thus, as shown by arrow A13, the code "1010" indicating the signs of the quantized coefficients "-0101", "+0011", "-0110" and "+0010" is stored on the right side of the code "110001" already saved in the scalar area (sequentially to the right of the code "110001").

Затем, после кодирования первых четырех квантованных коэффициентов, модуль 123 энтропийного кодирования кодирует следующие четыре квантованных коэффициента "+0011", "+0110", "0000" и "-0011".Then, after encoding the first four quantized coefficients, entropy encoding unit 123 encodes the following four quantized coefficients "+0011", "+0110", "0000" and "-0011".

Вначале модуль 123 энтропийного кодирования сравнивает максимальные значащие разряды "3" четырех квантованных коэффициентов, кодированных в предыдущий раз, с максимальными значащими разрядами "3" следующих четырех квантованных коэффициентов "+0011", "+0110", "0000" и "-0011", кодированных в этот раз, и поскольку максимальные значащие разряды не изменились, сохраняет код "0", обозначающий, что максимальные значащие разряды не изменились, как код, обозначающий максимальные значащие разряды, как показано стрелкой А14, в скалярной области последовательно справа от уже сохраненного кода "1100011010".First, entropy coding unit 123 compares the maximum significant bits “3” of the four quantized coefficients encoded the previous time with the maximum significant bits “3” of the next four quantized coefficients “+0011”, “+0110”, “0000” and “-0011” encoded this time, and since the maximum significant bits have not changed, saves the code "0", indicating that the maximum significant bits have not changed, as the code indicating the maximum significant bits, as shown by arrow A14, in the scalar region sequentially Ava from the already saved code "1100011010".

Затем модуль 123 энтропийного кодирования сохраняет каждый из кодов "011", "110", "000" и "011", представляющий абсолютное значение каждого из w (четырех) квантованных коэффициентов "+0011", "+0110", "0000" и "-0011", вводимых в этот раз, в векторную область, как показано стрелкой А15, одновременно.Then, entropy coding unit 123 stores each of the codes “011”, “110”, “000” and “011” representing the absolute value of each of the w (four) quantized coefficients “+0011”, “+0110”, “0000” and The “-0011” introduced this time into the vector region, as shown by arrow A15, simultaneously.

Как показано стрелкой А12, в 8-битовой области векторной области с левой стороны на чертеже, в 8-битовой области, второй слева, в 8-битовой области, второй справа и в 8-битовой области в самой правой позиции уже сохранены коды "101", "011", "110" и "010", в результате чего модуль 123 энтропийного кодирования сохраняет каждый из кодов "011", "110", "000" и "011", представляющих абсолютное значение каждого из квантованных коэффициентов, введенных в этот раз, последовательно справа от соответствующих кодов "101", "011", "110" и "010", уже сохраненных в векторной области, как показано стрелкой А15.As shown by arrow A12, in the 8-bit region of the vector region on the left side of the drawing, in the 8-bit region, the second on the left, in the 8-bit region, the second on the right and in the 8-bit region, the codes “101 "," 011 "," 110 "and" 010 ", as a result of which the entropy coding unit 123 stores each of the codes" 011 "," 110 "," 000 "and" 011 "representing the absolute value of each of the quantized coefficients entered this time, sequentially to the right of the corresponding codes "101", "011", "110" and "010" already stored in the vector area, as shown arrow A15.

Затем модуль 123 энтропийного кодирования принимает код "001", обозначающий знаки квантованных коэффициентов, в котором абсолютное значение не равно 0 для четырех квантованных коэффициентов "+0011", "+0110", "0000" и "-0011", введенных в этот раз, и сохраняет его последовательно справа от кода "11000110100", уже сохраненного в скалярной области.Then, entropy coding unit 123 receives a code “001” indicating the signs of the quantized coefficients, in which the absolute value is not 0 for the four quantized coefficients “+0011”, “+0110”, “0000”, and “-0011” entered this time , and saves it sequentially to the right of the code "11000110100", already saved in the scalar region.

После кодирования четырех квантованных коэффициента "+0011", "+0110", "0000" и "-0011", модуль 123 энтропийного кодирования выполняет кодирование следующих четырех квантованных коэффициентов "+1101", "-0100", "+0111" и "-1010".After encoding the four quantized coefficients "+0011", "+0110", "0000" and "-0011", the entropy encoding unit 123 encodes the following four quantized coefficients "+1101", "-0100", "+0111" and " -1010 ".

Вначале модуль 123 энтропийного кодирования сравнивает максимальные значащие разряды "4" четырех квантованных коэффициентов "+1101", "-0100", "+0111" и "-1010", введенных в этот раз, со значением "3" четырех квантованных коэффициентов, кодированных в предыдущий раз, и сохраняет код "101", обозначающий максимальные значащие разряды, состоящий из "1", что обозначает, что максимальные значащие разряды изменились, "0", что обозначает, что максимальные значащие разряды увеличились, и "1", что обозначает величину увеличения максимальных значащих разрядов, как показано стрелкой А17 в скалярной области.First, entropy encoding module 123 compares the maximum significant bits “4” of the four quantized coefficients “+1101”, “-0100”, “+0111” and “-1010” entered this time with the value “3” of the four quantized coefficients encoded the previous time, and saves the code "101", indicating the maximum significant bits, consisting of "1", which means that the maximum significant bits have changed, "0", which means that the maximum significant bits have increased, and "1", which denotes the magnitude of the increase in maximum significant digits, as shown arrow A17 in the scalar field.

В данном случае код "11000110100001", уже сохранен в скалярной области, как показано стрелкой А16, в результате чего модуль 123 энтропийного кодирования сохраняет код "101", обозначающий максимальные значащие разряды справа от кода "11000110100001" на чертеже.In this case, the code "11000110100001" is already stored in the scalar region, as shown by arrow A16, as a result of which the entropy coding module 123 stores the code "101", which indicates the maximum significant digits to the right of the code "11000110100001" in the drawing.

Затем, после сохранения кода, обозначающего максимальные значащие разряды четырех квантованных коэффициентов "+1101", "-0100", "+0111" и "-1010", модуль 123 энтропийного кодирования сохраняет каждый из кодов "1101", "0100", "0111" и "1010", представляющих абсолютное значение каждого из них, в векторной области, как показано стрелкой А18, одновременно.Then, after saving the code denoting the maximum significant bits of the four quantized coefficients "+1101", "-0100", "+0111" and "-1010", entropy encoding module 123 stores each of the codes "1101", "0100", " 0111 "and" 1010 ", representing the absolute value of each of them, in the vector region, as shown by arrow A18, simultaneously.

Как показано стрелкой А15, в 8-битовой области векторной области на чертеже, во второй слева 8-битовой области, во второй справа 8-битовой области и самой правой 8-битовой области, уже сохранены "101011", "011110", "110000" и "010011", соответственно, в результате каждая из 8-битовой области слева, 8-битовой области второй слева, 8-битовой области второй справа и 8-битовой области в самом правом положении, могут сохранять только два бита кода.As shown by arrow A15, "101011", "011110", "110000 are already stored in the 8-bit region of the vector region in the drawing, in the second from the left on the 8-bit region, in the second from the right on the 8-bit region and the rightmost 8-bit region "and" 010011 ", respectively, as a result, each of the 8-bit area on the left, the 8-bit area on the second on the left, the 8-bit area on the second on the right and the 8-bit area on the right-most position can only store two bits of code.

В соответствии с этим, модуль 123 энтропийного кодирования обеспечивает (предоставляет) новую векторную область в буфере 401, как показано стрелкой А18, сохраняет код из двух битов высшего порядка "11", "01", "01" и "10", для кодов "1101", "0100", "0111", "1010", представляющих абсолютное значение квантованных коэффициентов, введенных в этот раз, последовательно с правой стороны от кодов "101011", "011110", "110000" и "010011", уже сохраненных в векторной области, и сохраняет два бита младшего порядка "01", "00", "11" и "10" для кодов "1101", "0100", "0111", "1010", представляющих абсолютное значение квантованных коэффициентов, введенных в этот раз, с левой стороны каждой из 8-битовой области, вновь предусмотренной векторной области (из двух векторных областей, обозначенных стрелкой А18, в векторной области в нижней части на чертеже) на чертеже, 8-битовой области второй слева, 8-битовой области второй справа и 8-битовой области в самом правом положении, соответственно.Accordingly, entropy encoding module 123 provides (provides) a new vector region in buffer 401, as shown by arrow A18, stores a code of two higher order bits "11", "01", "01" and "10", for codes "1101", "0100", "0111", "1010" representing the absolute value of the quantized coefficients entered this time, sequentially on the right side of the codes "101011", "011110", "110000" and "010011", already stored in the vector area, and saves two bits of the lower order "01", "00", "11" and "10" for the codes "1101", "0100", "0111", "1010" representing the absolute value of the quantum of the coefficients entered this time, on the left side of each of the 8-bit areas, the newly provided vector area (of the two vector areas indicated by arrow A18, in the vector area at the bottom of the drawing) in the drawing, the 8-bit area second from the left , The 8-bit region is second to the right and the 8-bit region is in the rightmost position, respectively.

После сохранения кода, обозначающего абсолютное значение четырех квантованных коэффициентов "+1101", "-0100", "+0111" и "-1010", как показано стрелкой А19, модуль 123 энтропийного кодирования сохраняет код "0101", обозначающий знаки четырех квантованных коэффициентов, абсолютное значение которых не равно нулю, последовательно с правой стороны от кода " 11000110100001101", уже сохраненного в скалярной области.After storing a code indicating the absolute value of the four quantized coefficients "+1101", "-0100", "+0111" and "-1010", as shown by arrow A19, entropy encoding module 123 stores the code "0101" indicating the signs of the four quantized coefficients whose absolute value is not equal to zero, sequentially on the right side of the code "11000110100001101", already stored in the scalar region.

Таким образом, после того как входные квантованные коэффициенты будут кодированы, модуль 123 энтропийного кодирования выводит по порядку код, сохраненный в скалярной области, показанной стрелкой А19, код, сохраненный к верхней векторной области на чертеже из двух векторных областей, показанных стрелкой А19, и код, сохраненный в нижней векторной области, в качестве кодированного изображения.Thus, after the input quantized coefficients are encoded, the entropy encoding unit 123 outputs, in order, the code stored in the scalar region shown by arrow A19, the code stored to the upper vector region in the drawing of two vector regions shown by arrow A19, and the code stored in the lower vector region as an encoded image.

В этом случае код не сохранен в 11 битах с правой стороны на чертеже от скалярной области, показанной стрелкой А19. Кроме того, код не сохранен в области из правых шести битов каждой из 8-битовой области с левой стороны, 8-битовой области второй слева, 8-битовой области второй справа и 8-битовой области в самом правом положении, в векторной области в нижней части двух векторных областей, обозначенных стрелкой А19.In this case, the code is not stored in 11 bits on the right side of the drawing from the scalar region shown by arrow A19. In addition, the code is not stored in the area of the right six bits of each of the 8-bit region on the left side, the 8-bit region second on the left, the 8-bit region second on the right and the 8-bit region in the rightmost position, in the vector region in the lower parts of two vector areas indicated by arrow A19.

В случае вывода кода, сохраненного в скалярных областях и векторных областях, таким образом, как кодированное изображение, в случае, когда существуют области, в которых код не сохранен в скалярных областях и векторных областях, в момент времени, когда заканчивают кодирование входных квантованных коэффициентов, сохраняют произвольный код, такой как, например, код "0", после которого код, сохраненный в скалярных областях и векторных областях, кодируют и выводят как изображение.In the case of outputting the code stored in scalar regions and vector regions, such as an encoded image, in the case where there are regions in which the code is not stored in scalar regions and vector regions, at the time when the encoding of the input quantized coefficients is completed, save an arbitrary code, such as, for example, the code "0", after which the code stored in scalar regions and vector regions is encoded and displayed as an image.

В соответствии с этим, в примере, показанном стрелкой А19, например, код "11000110100001101010100000000000", сохраненный в скалярной области, код "10101111011110011100000101001110", сохраненный в верхней векторной области на чертеже, и код "01000000000000001100000010000000", сохраненный в нижней векторной области, выводят по порядку, как кодированное изображение. Теперь произвольный код, сохраненный в скалярных областях и векторных областях, в областях, где код не был сохранен в момент окончания кодирования квантованных коэффициентов, не будет считываться во время декодирования, таким образом, может быть сохранен код любого вида.Accordingly, in the example shown by arrow A19, for example, the code "11000110100001101010100000000000" stored in the scalar region, the code "10101111011110011100000101001110" stored in the upper vector region in the drawing, and the code "01000000000000001100000010000000" stored in the lower vector region in order, like an encoded image. Now, arbitrary code stored in scalar regions and vector regions, in regions where the code was not saved at the moment of encoding of the quantized coefficients, will not be read during decoding, so any kind of code can be saved.

В случаях кодирования абсолютных значений квантованных коэффициентов, с использованием также инструкции операции ОКМД, после ввода изображения устройство 111 кодирования изображения выполняет обработку кодирования, описанную со ссылкой на блок-схему последовательности операций, показанную на фиг.23. Кроме того, при обработке энтропийного кодирования по фиг.24, соответствующей этапу S 113 на фиг.23, устройство 111 кодирования изображения выполняет такую же обработку, как и в случае без использования инструкций операции ОКМД для обработки от этапа S141 до этапа S149 на фиг.24, обработки этапа S151 и обработки этапа S152 (обработка описана со ссылкой на фиг.24), и для обработки кодирования набора w, соответствующей этапу S150, выполняет обработку разности со случаем, в котором не используются инструкции операции ОКМД.In cases of encoding the absolute values of the quantized coefficients, also using the OKMD operation instruction, after image input, the image encoding apparatus 111 performs the encoding processing described with reference to the flowchart shown in FIG. 23. Furthermore, in the entropy encoding processing of FIG. 24 corresponding to step S 113 of FIG. 23, the image encoding apparatus 111 performs the same processing as in the case without using the instructions of the OKMD operation for processing from step S141 to step S149 in FIG. 24, the processing of step S151 and the processing of step S152 (the processing is described with reference to FIG. 24), and to process the encoding of the set w corresponding to step S150, performs difference processing with a case in which the operation instructions of the OCHA are not used.

Ниже приведено описание обработки кодирования набора w в случае устройства 111 кодирования изображения, которое кодирует абсолютные значения квантованных коэффициентов, используя инструкции операции ОКМД, которое приведено со ссылкой на блок-схему последовательности операций, показанную на фиг.35. Следует отметить, что каждая обработка на этапах от S411 до S419 соответствует каждой обработке, выполняемой на этапах от S181 до S189, показанных на фиг.25, и каждый из них выполняется одинаковым образом. В соответствии с этим, их описание было бы избыточным и поэтому не будет приведено.The following is a description of the encoding processing of the set w in the case of the image encoding apparatus 111, which encodes the absolute values of the quantized coefficients using the operation instructions OKMD, which is given with reference to the flowchart shown in Fig. 35. It should be noted that each processing in steps S411 to S419 corresponds to each processing performed in steps S181 to S189 shown in FIG. 25, and each of them is performed in the same way. Accordingly, their description would be redundant and therefore will not be given.

Кроме того, в случае кодирования абсолютных значений квантованных коэффициентов с использованием инструкций операции ОКМД при обработке, описанной со ссылкой на фиг.24 и фиг.35, код, обозначающий, равны ли 0 все абсолютные значения квантованных коэффициентов строки, предназначенной для кодирования, переданных из модуля 162 кодирования КПД в модуль 169 соединения кода, код, обозначающий максимальные значащие разряды квантованных коэффициентов, переданных из модуля 164 кодирования КПД в модуль 169 соединения кода, и код, обозначающий знак квантованных коэффициентов, переданных из модуля 168 кодирования КПД, в модуль 169 соединения кода, каждый, сохраняют в скалярных областях, предусмотренных в буфере 401 модуля 169 соединения кода, как описано со ссылкой на фиг.34.In addition, in the case of encoding the absolute values of the quantized coefficients using the instructions of the OKMD operation in the processing described with reference to FIG. 24 and FIG. 35, a code indicating whether all absolute values of the quantized coefficients of the string intended for encoding are transmitted are equal to 0 an efficiency encoding module 162 to a code connection module 169, a code indicating the maximum significant bits of the quantized coefficients transmitted from the efficiency encoding module 164 to a code connection module 169, and a code indicating the sign of quanta nnyh coefficients supplied from the encoding unit 168 Efficiency, the code in the module 169 compounds are each stored in scalar regions provided in the buffer 401 of code module 169 compound, as described with reference to Figure 34.

На этапе S420 модуль 165 выделения значащего разряда одновременно выделяет значащие разряды квантованных коэффициентов из w последовательных квантованных коэффициентов в положениях (х, у), (х+1, у),...,(x+w-1, у) на строке у, переданных из модуля 122 квантования. Модуль 165 выделения значащего разряда передает выделенные значащие разряды квантованных коэффициентов в модуль 166 кодирования КПД и модуль 167 выделения знака. Кроме того, модуль 166 кодирования КПД одновременно выводит код, обозначающий абсолютные значения w квантованных коэффициентов на основе значащих разрядов, переданных из модуля 165 выделения значащего разряда (кодирование значащих разрядов) в модуль 169 соединения кода.In step S420, the significant digit extraction module 165 simultaneously extracts the significant bits of the quantized coefficients from w successive quantized coefficients at positions (x, y), (x + 1, y), ..., (x + w-1, y) on the line y transmitted from the quantization module 122. The significant bit allocation unit 165 transmits the selected significant bits of the quantized coefficients to the efficiency encoding unit 166 and the character extraction unit 167. In addition, the efficiency encoding module 166 simultaneously outputs a code indicating the absolute values w of the quantized coefficients based on the significant bits transmitted from the significant bit allocation module 165 (coding of the significant bits) to the code connection module 169.

Теперь значение х в положении (х, у) принимают как значение переменной х, сохраненной в модуле 163 расчета максимального значащего разряда, и значение у принимают как значение переменной у, сохраненной в модуле 161 определения строки. Например, когда модуль 165 выделения значащего разряда выделяет значащие разряды "101", "011", "110" и "010", как значащие разряды квантованных коэффициентов, код "101", "011", "110" и "010", обозначающий абсолютные значения четырех квантованных коэффициентов, передают из модуля 166 кодирования КПД в модуль 169 соединения кода, так, что модуль 169 соединения кода кодирует код, обозначающий абсолютные значения квантованных коэффициентов, переданных в него, и, как показано стрелкой А12 на фиг.34, сохраняет в векторной области.Now, the value of x in position (x, y) is taken as the value of the variable x stored in the maximum significant digit calculating unit 163, and the value of y is taken as the value of the variable y stored in the string determining unit 161. For example, when the significant bit extraction module 165 extracts the significant bits "101", "011", "110" and "010" as the significant bits of the quantized coefficients, the code "101", "011", "110" and "010", denoting the absolute values of the four quantized coefficients are transmitted from the efficiency encoding module 166 to the code connection module 169, so that the code connection module 169 encodes a code indicating the absolute values of the quantized coefficients transmitted to it, and, as shown by arrow A12 in Fig. 34, saves in vector area.

На этапе S421 модуль 167 выделения знака принимает заданную переменную i и изменяет переменную i от 0 до (w-1) так, что он выделяет знаки квантованных коэффициентов из квантованных коэффициентов в положениях (x+i, у) на строке у, квантованные коэффициенты которых не равны 0, переданных из модуля 122 квантования, и передает выделенные (данные) знаки в модуль 168 кодирования КПД. Теперь значение х в положении (х, у) принимают как значение переменной х, сохраненной в модуле 163 расчета максимального значащего разряда, и значение у принимают как значение переменной у, сохраненной в модуле 161 определения строки.In step S421, the character extraction module 167 receives the given variable i and changes the variable i from 0 to (w-1) so that it extracts the signs of the quantized coefficients from the quantized coefficients at positions (x + i, y) on the row y whose quantized coefficients are are not equal to 0 transmitted from the quantization module 122, and transmits the selected (data) characters to the efficiency encoding module 168. Now, the value of x in position (x, y) is taken as the value of the variable x stored in the maximum significant digit calculating unit 163, and the value of y is taken as the value of the variable y stored in the string determining unit 161.

Модуль 168 кодирования КПД кодирует знаки из модуля 167 выделения знака и выводит код, обозначающий знаки квантованных коэффициентов, полученных им, в модуль 169 соединения кода. Кроме того, как описано со ссылкой на фиг.34, модуль 169 соединения кода сохраняет код, обозначающий знаки квантованных коэффициентов, переданных из модуля 168 кодирования КПД, в скалярной области буфера 401.The efficiency encoding module 168 encodes the characters from the character extraction module 167 and outputs a code indicating the signs of the quantized coefficients obtained by it to the code connection module 169. In addition, as described with reference to FIG. 34, the code connection unit 169 stores a code indicating the signs of the quantized coefficients transmitted from the efficiency encoding unit 168 in the scalar region of the buffer 401.

После сохранения кода, обозначающего знаки квантованных коэффициентов в скалярной области буфера 401, модуль 169 соединения кода соединяет коды, сохраненные в скалярных областях и векторных областях буфера 401, как описано со ссылкой на фиг.34, выводит соединенный код как кодированное изображение, в результате чего обработка кодирования набора w заканчивается, и обработка возвращается на этап S150 по фиг.24, и выполняется обработка, начиная от этапа S 151.After storing the code denoting the signs of the quantized coefficients in the scalar region of the buffer 401, the code combining unit 169 concatenates the codes stored in the scalar regions and vector regions of the buffer 401, as described with reference to FIG. 34, outputs the connected code as an encoded image, resulting in the encoding processing of the set w ends, and the processing returns to step S150 of FIG. 24, and processing is performed starting from step S 151.

Таким образом, модуль 123 энтропийного кодирования одновременно кодирует абсолютные значения заданного количества квантованных коэффициентов.Thus, entropy encoding unit 123 simultaneously encodes the absolute values of a given number of quantized coefficients.

При использовании способа энтропийного кодирования в соответствии с JPEG 2000 квантованные коэффициенты подвергают арифметическому кодированию с приращениями битовых плоскостей на основе множества путей кодирования, в результате чего выполнение заданной обработки при энтропийном кодировании параллельно и одновременно является трудноосуществимым, но при использовании модуля 123 энтропийного кодирования отсутствует необходимость выполнения сложной обработки с приращением битовых плоскостей, что позволяет одновременно кодировать абсолютные значения множества квантованных коэффициентов.When using the entropy coding method in accordance with JPEG 2000, the quantized coefficients are subjected to arithmetic coding with increments of bit planes based on a plurality of coding paths, as a result of which the specified processing for entropy coding is parallel and simultaneously difficult to implement, but when using the module 123 of entropy coding, there is no need to perform complex processing with increment of bit planes, which allows you to simultaneously encode lute values of the set of quantized coefficients.

Таким образом, одновременное кодирование абсолютных значений заданного количества квантованных коэффициентов позволяет одновременно выполнять множество процессов (параллельно), что позволяет кодировать изображения с более высокой скоростью.Thus, the simultaneous encoding of the absolute values of a given number of quantized coefficients allows you to simultaneously perform many processes (in parallel), which allows you to encode images at a higher speed.

Следует отметить, что в отношении обработки, выполняемой на этапе S421, приведено описание, указывающее, что кодирование знаков w квантованных коэффициентов выполняется по порядку, но кодирование знаков w квантованных коэффициентов может выполняться одновременно при использовании инструкций операций ОКМД, так же, как и в случае кодирования абсолютных значений квантованных коэффициентов. В этом случае каждый из кодов, обозначающих знаки w квантованных коэффициентов, полученных путем кодирования, сохраняют в векторной области буфера 401, которая была разделена на w.It should be noted that with respect to the processing performed in step S421, a description is given indicating that the encoding of the signs w of the quantized coefficients is performed in order, but the encoding of the signs w of the quantized coefficients can be performed simultaneously using the instructions of the OKMD operations, as in the case encoding the absolute values of the quantized coefficients. In this case, each of the codes denoting the signs w of the quantized coefficients obtained by encoding is stored in the vector region of the buffer 401, which was divided by w.

Кроме того, хотя описание было приведено в отношении буфера 401, в котором одна скалярная область или векторная область представляет собой область 32 бита, и так, что 32-битовые области дополнительно разделяют на 8-битовые области для использования, размер и т.п. скалярной области или векторной области может быть произвольным. Например, может быть принята компоновка, в которой скалярная область или векторная область установлена как 128-битовая область, и 128-битовая область разделена на восемь 16-битовых областей для использования.Furthermore, although a description has been made with respect to buffer 401, in which one scalar region or vector region is a 32-bit region, and so that the 32-bit regions are further divided into 8-bit regions for use, size, and the like. scalar region or vector region can be arbitrary. For example, an arrangement may be adopted in which a scalar region or vector region is set as a 128-bit region, and the 128-bit region is divided into eight 16-bit regions for use.

Кроме того, в случае декодирования изображения, кодированного с использованием инструкции операции ОКМД, модуль 251 разделения кода (фиг.27) устройства 211 декодирования изображения, которое декодирует изображение, выполнен, как показано, например, на фиг.28, и код, который представляет собой кодированное изображение, сохраняют по 32 бита одновременно в запоминающем устройстве 272, как описано со ссылкой на фиг.34.In addition, in the case of decoding an image encoded using the operation instruction OKMD, the module 251 code separation (Fig) device 211 decoding the image that decodes the image is made, as shown, for example, in Fig, and a code that represents a coded image, 32 bits are stored simultaneously in the storage device 272, as described with reference to Fig. 34.

В случае считывания кода из запоминающего устройства 272 и его вывода модуль 271 управления вначале принимает область сохранения, в которой первые 32 бита кода сохранены как скалярная область, и считывает и выводит по порядку, начиная с верхней части скалярной области, код, обозначающий, равны ли 0 или нет все абсолютные значения квантованных коэффициентов строки, предназначенной для декодирования, код, обозначающий максимальный значащий разряд квантованных коэффициентов, или код, обозначающий знаки квантованных коэффициентов.In the case of reading the code from the storage device 272 and its output, the control unit 271 first receives a storage area in which the first 32 bits of the code are stored as a scalar area, and reads and outputs in order, starting from the top of the scalar area, a code indicating whether 0 or not, all absolute values of the quantized coefficients of the string intended for decoding, a code indicating the maximum significant digit of the quantized coefficients, or a code indicating the signs of the quantized coefficients.

Кроме того, в случае считывания кода, обозначающего абсолютные значения квантованных коэффициентов из запоминающего устройства 272, модуль 271 управления принимает 32-битовую область сохранения после области сохранения, принятой как скалярная область, в запоминающем устройстве 272 (соответственно, код еще не был считан из этой области), как векторную область, и считывает и выводит код, обозначающий абсолютные значения квантованных коэффициентов, из этой векторной области.In addition, in the case of reading a code indicating the absolute values of the quantized coefficients from the storage device 272, the control unit 271 receives a 32-bit storage area after the storage area adopted as a scalar area in the storage device 272 (accordingly, the code has not yet been read from this region), as a vector region, and reads and outputs a code indicating the absolute values of the quantized coefficients from this vector region.

Следует отметить, что в случае, когда изображение кодировано, это изображение кодировано так, что во время считывания кода, обозначающего абсолютные значения квантованных коэффициентов в первый раз после декодирования, всегда присутствует код, обозначающий абсолютные значения квантованных коэффициентов (код, используемый для расчета векторов), сохраненный в следующей 32-битовой области сохранения, которая следует после области сохранения, используемой как скалярная область.It should be noted that in the case when the image is encoded, this image is encoded so that during the reading of the code indicating the absolute values of the quantized coefficients for the first time after decoding, there is always a code indicating the absolute values of the quantized coefficients (the code used to calculate the vectors) stored in the next 32-bit save region that follows the save region used as the scalar region.

Кроме того, количество битов, из которых состоит каждая область сохранения, по которым разделяют код, который представляет собой кодированное изображение, и сохраняют в запоминающем устройстве 272, изменяется в соответствии с тем, какое количество битов установлено для одной скалярной области и векторной области, в случае кодирования изображения при использовании устройства 111 кодирования изображения. То есть размер каждой из множества областей сохранения в запоминающем устройстве 272, на которые разделен и сохранен код, который представляет собой кодированное изображение, представляет собой размер одной скалярной области и векторной области в случае кодирования изображения.In addition, the number of bits that each storage area consists of, which divide the code, which is an encoded image, and stored in the storage device 272, varies according to how many bits are set for one scalar region and a vector region, in the case of image encoding using the image encoding apparatus 111. That is, the size of each of the plurality of storage areas in the storage device 272 into which the code, which is an encoded image, is divided and stored, is the size of one scalar region and a vector region in the case of image encoding.

В случае декодирования абсолютных значений квантованных коэффициентов, используя инструкции операции ОКМД, также модуль 211 декодирования изображения выполняет обработку декодирования, описанную со ссылкой на блок-схему последовательности операций, показанную на фиг.30, после ввода кодированного изображения. Кроме того, обработка энтропийного декодирования, показанная на фиг.31, соответствует обработке, выполняемой на этапе S231 на фиг.30, в отношении каждой обработки этапов от S261 до S268 на фиг.31, обработки на этапе S270 и обработки на этапе S271, при этом устройство 211 декодирования изображения выполняет обработку так же, как и в случае, когда не используется команда управления ОКМД (обработка, описанная со ссылкой на фиг.31), и в обработка декодирования набора w, соответствующая этапу S269, выполняет обработку, отличающуюся от обработки в случае, когда не используются команды управления ОКМД.In the case of decoding the absolute values of the quantized coefficients using the instructions of the OKMD operation, the image decoding module 211 also performs decoding processing described with reference to the flowchart shown in FIG. 30 after entering the encoded image. In addition, the entropy decoding processing shown in FIG. 31 corresponds to the processing performed in step S231 in FIG. 30 with respect to each processing of steps S261 to S268 in FIG. 31, the processing in step S270 and the processing in step S271, with this, the image decoding apparatus 211 performs the processing in the same way as when the OKMD control command is not used (the processing described with reference to FIG. 31), and in the decoding processing of the set w corresponding to step S269, performs processing different from the processing in the case when not used OKMD management teams use it.

Ниже приведено описание обработки декодирования набора w в случае, когда устройство 221 декодирования изображения декодирует абсолютное значение квантованных коэффициентов, используя инструкции операции ОКМД, со ссылкой на блок-схему последовательности операций, показанную на фиг.36.The following is a description of the decoding processing of the set w in the case where the image decoding apparatus 221 decodes the absolute value of the quantized coefficients using the instructions of the OKMD operation with reference to the flowchart shown in FIG.

Следует отметить, что обработка, выполняемая на этапах от S451 до этапа S455, соответствует обработке, выполняемой на этапах от S311 до этапа S315 на фиг.32, и каждая из них выполняется одинаково. В соответствии с этим избыточное их описание здесь не приведено.It should be noted that the processing performed in steps S451 to step S455 corresponds to the processing performed in steps S311 to step S315 in FIG. 32, and each of them is the same. In accordance with this, their excessive description is not given here.

Кроме того, в случае декодирования абсолютных значений квантованных коэффициентов, используя инструкции операции ОКМД, код, который представляет собой изображение, сохраняют в запоминающем устройстве 272 модуля 251 разделения кода, разделенным на три 32-битовых области, например, как показано стрелкой А19 на фиг.34. Модуль 252 определения строки, модуль 254 декодирования КПД и модуль 256 декодирования КПД, каждый, принимает из этих трех 32-битовых областей верхнюю область на фиг.34 как скалярную область и последовательно считывает и декодирует, начиная сверху из скалярной области (левая сторона на чертеже), код, обозначающий, равны ли 0 или нет все квантованные коэффициенты в строке, код, обозначающий максимальный значащий разряд квантованных коэффициентов, и код, обозначающий знаки квантованных коэффициентов.In addition, in the case of decoding the absolute values of the quantized coefficients using the instructions of the OKMD operation, the code, which is an image, is stored in the memory 272 of the code splitting module 251, divided into three 32-bit regions, for example, as shown by arrow A19 in FIG. 34. The line definition module 252, the efficiency decoding module 254, and the efficiency decoding module 256 each accepts from these three 32-bit regions the upper region in FIG. 34 as a scalar region and sequentially reads and decodes, starting from the top from the scalar region (left side in the drawing ), a code indicating whether or not all quantized coefficients in a row are equal, a code indicating the maximum significant digit of the quantized coefficients, and a code indicating the signs of the quantized coefficients.

На этапе S456 модуль 255 декодирования КПД одновременно считывает w наборов В последовательных битов кода из модуля 255 разделения кода и принимает каждый из w наборов В битов считанного кода, как код, обозначающий значащие разряды квантованных коэффициентов из w последовательных квантованных коэффициентов в положениях (х, у), (х+1, у),...,(x+w-1, у) на строке у, и передает (выводит) их в модуль 256 декодирования КПД и модуль 257 синтеза квантованного коэффициента. Кроме того, модуль 255 декодирования КПД генерирует информацию, обозначающую значащие разряды квантованных коэффициентов, и передает их в модуль 251 разделения кода. Теперь значение х в положении (х, у) принимается как значение переменной х, сохраненной в модуле 254 декодирования КПД, и значение у принимают как значение переменной у, сохраненное в модуле 252 определения строки.In step S456, the efficiency decoding module 255 simultaneously reads w sets of B consecutive code bits from code separation unit 255 and receives each of w sets of B bits of read code as a code denoting significant bits of the quantized coefficients from w consecutive quantized coefficients in positions (x, y ), (x + 1, y), ..., (x + w-1, y) on the line y, and transfers (outputs) them to the efficiency decoding module 256 and the quantized coefficient synthesis module 257. In addition, the efficiency decoding module 255 generates information indicating significant bits of the quantized coefficients and transmits them to the code separation module 251. Now, the value of x in position (x, y) is taken as the value of the variable x stored in the efficiency decoding unit 254, and the value of y is taken as the value of the variable y stored in the line definition unit 252.

Например, если можно сказать, что заданное число w равно 4, значение переменной В равно 3, и код, который представляет собой изображение, сохранен в запоминающем устройстве 272 модуля 251 разделения кода, путем разделения на три области сохранения по 32 бита, как показано стрелкой А19 на фиг.34, область сохранения размером 32 бита на самой верхней стороне фиг.34 уже принята как скалярная область, с помощью кода, обозначающего, равны ли 0 или нет все квантованные коэффициенты в строке, и кода, обозначающего максимальный значащий разряд квантованных коэффициентов, которые были считаны, и код, который еще не был считан из следующей области сохранения размером 32 бита (область сохранения вторая сверху), так, что модуль КПД 155 декодирования модуля принимает вторую сверху область сохранения, как векторную область, и одновременно считывает коды "101", "011", "110" и "010", обозначающие значащие разряды квантованных коэффициентов в положениях (х, Y), (х+1, у), (х+2, у) и (х+3, у), с левой стороны 8-битовой области векторной области на чертеже, 8-битовой области второй слева, 8-битовой области второй справа и 8-битовой области в самом правом положении.For example, if you can say that the given number w is 4, the value of variable B is 3, and the code, which is an image, is stored in the memory 272 of the code splitting module 251, by dividing it into three storage areas of 32 bits each, as shown by the arrow A19 in FIG. 34, the 32-bit storage area on the uppermost side of FIG. 34 has already been adopted as a scalar area, using a code indicating whether all quantized coefficients in a row are 0 or not and a code indicating the maximum significant bit of quantized coefficients the customers that have been read, and a code that has not yet been read from the next 32-bit storage area (the storage area is second from the top), so that the module decoding efficiency module 155 receives the second storage area from the top as a vector area, and at the same time reads the codes "101", "011", "110" and "010", denoting significant bits of the quantized coefficients at the positions (x, Y), (x + 1, y), (x + 2, y) and (x + 3, y), on the left side of the 8-bit region of the vector region in the drawing, the 8-bit region is second on the left, the 8-bit region is second on the right and the 8-bit region tee at the far right.

После передачи кода, обозначающего значащие разряды w квантованных коэффициентов в модуль 256 декодирования КПД и в модуль 257 синтеза квантованного коэффициента после этого, выполняется обработка на этапе S457 и обработка на этапе S458, но эти обработки являются такими же, как и обработка, выполняемая на этапе S317, и обработка, выполняемая на этапе S318 по фиг.32, поэтому их описание здесь не приведено.After transmitting the code indicating significant bits w of the quantized coefficients to the efficiency decoding module 256 and to the quantized coefficient synthesis module 257 thereafter, the processing in step S457 and the processing in step S458 are performed, but these processes are the same as the processing in step S317, and the processing performed in step S318 of FIG. 32, so a description thereof will not be given here.

Таким образом, модуль 221 энтропийного декодирования одновременно декодирует абсолютные значения заданного количества квантованных коэффициентов.Thus, entropy decoding unit 221 simultaneously decodes the absolute values of a given number of quantized coefficients.

Таким образом, одновременное декодирование абсолютных значений заданного количества квантованных коэффициентов позволяет одновременно выполнять множество процессов (параллельно), и изображения могут быть декодированы с более высокой скоростью.Thus, simultaneous decoding of the absolute values of a given number of quantized coefficients allows multiple processes to be performed simultaneously (in parallel), and images can be decoded at a higher speed.

Следует отметить, что хотя описание было приведено в отношении обработки, выполняемой на этапе S457, в которой декодирование каждого из кодов, обозначающих знаки w квантованных коэффициентов, выполняется по порядку, может быть составлена компоновка, в которой декодирование каждого из кодов, обозначающих знаки w квантованных коэффициентов, выполняется одновременно (параллельно), используя инструкции операции ОКМД.It should be noted that although the description has been made with respect to the processing performed in step S457, in which the decoding of each of the codes denoting the signs of w quantized coefficients is performed in order, a layout can be made in which the decoding of each of the codes denoting the signs of w quantized coefficients, is performed simultaneously (in parallel), using the instructions of the operation OKMD.

Как описано выше, нет необходимости выполнять арифметическое кодирование квантованных коэффициентов с приращением плоскостей битов на основе множества путей кодирования, в отличие от случая кодирования (или декодирования) изображения с использованием обычного JPEG 2000, что позволяет быстрее выполнять кодирование (или декодирование) изображения, при более простой обработке.As described above, it is not necessary to carry out arithmetic coding of quantized coefficients in increments of bit planes based on many coding paths, in contrast to the case of encoding (or decoding) an image using conventional JPEG 2000, which allows faster encoding (or decoding) of an image, at more simple handling.

При использовании обычного способа JPEG 2000 обработка выполняется для каждой битовой плоскости на основе множества путей кодирования так, что в случае выполнения такой обработки доступ к квантованным коэффициентам необходимо осуществлять такое количество раз, которое равно числу, полученному путем умножения квантованных коэффициентов на количество плоскостей битов, что означает, что объем обработки был большим.Using the conventional JPEG 2000 method, processing is performed for each bit plane based on a plurality of coding paths, so that if such processing is performed, the quantized coefficients must be accessed so many times that is equal to the number obtained by multiplying the quantized coefficients by the number of bit planes such that means the processing volume was large.

Кроме того, в случае пакетирования кодированного изображения обработка пакетирования не может быть начата до тех пор, пока кодирование одного изображения не будет полностью закончено, поэтому генерируется задержка, эквивалентная интервалу ожидания такой обработки, соответственно. Кроме того, в способе JPEG2000, квантованные (кодированные) коэффициенты, соответствующие положениям в прямоугольной области, состоящей из параллельных сторон в направлении Х и направлении Y в подполосе, показанной на фиг.2, например, сохраняют в одном пакете, поэтому также генерируется задержка, соответствующая длине в направлении Y прямоугольной области. При использовании обычного способа JEPG 2000 такие задержки генерируются из-за кодирования, в результате чего трудно обеспечить обработку в режиме реального времени. При этом, хотя задержка может быть уменьшена, путем сокращения длины в направлении Y прямоугольной области в подполосе, в этом случае ухудшается эффективность кодирования.In addition, in the case of encoding an encoded image, the packetization processing cannot be started until the encoding of one image is completely completed, therefore, a delay is generated equivalent to the waiting interval for such processing, respectively. In addition, in the JPEG2000 method, quantized (encoded) coefficients corresponding to positions in a rectangular region consisting of parallel sides in the X direction and Y direction in the subband shown in FIG. 2, for example, are stored in one packet, so a delay is also generated, corresponding to the length in the Y direction of the rectangular region. Using the conventional JEPG 2000 method, such delays are generated due to encoding, which makes it difficult to provide real-time processing. Moreover, although the delay can be reduced by shortening the length in the Y direction of the rectangular region in the subband, in this case, the coding efficiency is degraded.

И наоборот, при использовании устройства 111 кодирования изображения нет необходимости выполнять арифметическое кодирование квантованных коэффициентов для каждой плоскости битов на основе множества путей кодирования, как описано выше, и доступ к квантованным коэффициентам осуществляется только во время кодирования изображения при выводе кода, обозначающего абсолютные значения квантованных коэффициентов, при выводе кода, обозначающего максимальные значащие разряды, и выводе кода, обозначающего знаки квантованных коэффициентов, что позволяет более просто кодировать изображения.Conversely, when using the image encoding device 111, it is not necessary to arithmetically encode the quantized coefficients for each bit plane based on a plurality of encoding paths, as described above, and the quantized coefficients are accessed only during image encoding when outputting a code indicating the absolute values of the quantized coefficients when outputting a code denoting the maximum significant digits and outputting a code denoting the signs of the quantized coefficients, which This allows you to more easily encode the image.

Кроме того, возникают случаи, в которых код, обозначающий максимальный значащий разряд, и код, обозначающий знаки квантованных коэффициентов, равны 1 биту или 0 битов, так что в случае кодирования такого изображения изображение фактически может быть кодировано путем доступа к квантованным коэффициентам только дважды. Кроме того, в случае декодирования изображения доступ к квантованным коэффициентам требуется выполнять только один раз, что позволяет проще и быстрее декодировать изображения.In addition, there are cases in which a code indicating the maximum significant digit and a code indicating the signs of the quantized coefficients are 1 bit or 0 bits, so that in the case of encoding such an image, an image can actually be encoded by accessing the quantized coefficients only twice. In addition, in the case of image decoding, access to the quantized coefficients is required to be performed only once, which makes it easier and faster to decode the images.

В устройстве 111 кодирования изображения и в устройстве 211 декодирования изображения квантованные коэффициенты подполосы кодируют и декодируют в порядке растрового сканирования, в связи с чем отсутствует необходимость размещения в буфере квантованных коэффициентов, что позволяет уменьшить задержку, возникающую из-за кодирования и декодирования.In the image encoding device 111 and in the image decoding device 211, the quantized subband coefficients are encoded and decoded in raster scan order, and therefore there is no need to place the quantized coefficients in the buffer, thereby reducing the delay caused by encoding and decoding.

Кроме того, фактическое кодирование и декодирование изображения в формате YUV 4:2:2 размером 1920 пикселей по горизонтали х 1080 пикселей по вертикали, при использовании инструкции операции ОКМД (в которой w=4) приводит к получению следующих результатов. Следует отметить, что во время выполнения кодирования изображение подвергается вейвлет преобразованию и разлагается на пять уровней или подполос, и затем кодируют квантованные коэффициенты, полученные по квантованным вейвлет коэффициентам для каждой подполосы. Кроме того, функциональные блоки, необходимые для кодирования и декодирования (например, модуль 123 энтропийного кодирования по фиг.33 и модуль 221 энтропийного декодирования по фиг.27), и функциональные блоки для кодирования и декодирования изображения в JPEG 2000 реализуются путем обеспечения выполнения ЦПУ (с тактовой частотой 3,0 ГГц) типа Pentium (зарегистрированный товарный знак) 4 (товарный знак компании Intel Corporation) заданных программ.In addition, the actual encoding and decoding of the image in YUV 4: 2: 2 format with a size of 1920 pixels horizontally x 1080 pixels vertically when using the operation instruction OKMD (in which w = 4) leads to the following results. It should be noted that during the encoding, the image is subjected to wavelet transform and decomposed into five levels or subbands, and then the quantized coefficients obtained from the quantized wavelet coefficients for each subband are encoded. In addition, the functional blocks necessary for encoding and decoding (for example, the entropy encoding module 123 of Fig. 33 and the entropy decoding module 221 of Fig. 27) and the functional blocks for encoding and decoding an image in JPEG 2000 are implemented by ensuring the execution of the CPU ( with a frequency of 3.0 GHz) type Pentium (registered trademark) 4 (trademark of Intel Corporation) of specified programs.

В случае кодирования одного кадра изображения при использовании обычного способа JPEG 2000 размер кода составил 291571 байт, и время, требуемое для кодирования, составило 0,26157 секунды. Кроме того, время, необходимое для декодирования кодированного изображения, составило 0,24718 секунд.In the case of encoding one image frame using the conventional JPEG 2000 method, the code size was 291571 bytes and the time required for encoding was 0.26157 seconds. In addition, the time required to decode the encoded image was 0.24718 seconds.

И наоборот, в случае кодирования одного кадра изображения с помощью модуля 123 энтропийного кодирования, показанного на фиг.33, размер кода составил 343840 байт, и время, требуемое для кодирования, составило 0,03453 секунды. Кроме того, время, необходимое для декодирования кодированного изображения с помощью модуля 221 энтропийного декодирования, показанного на фиг.27, составило 0,02750 секунд.Conversely, in the case of encoding one image frame using the entropy encoding unit 123 shown in FIG. 33, the code size was 343840 bytes and the time required for encoding was 0.03453 seconds. In addition, the time required to decode the encoded image using the entropy decoding unit 221 shown in FIG. 27 was 0.02750 seconds.

Движущиеся изображения часто отображают с частотой 30 кадров в секунду, что позволяет обрабатывать изображения в режиме реального времени, только если кодирование или декодирование может быть выполнено в течение 0,033 (=1/30) секунд на кадр. При использовании способа JPEG 2000 время, требуемое для кодирования, составляет 0,26157 секунд, и время, необходимое для декодирования, составляет 0,24718 секунд, что затрудняет реализацию обработки в режиме реального времени изображений, но в случае кодирования изображения при использовании модуля 123 энтропийного кодирования, показанного на фиг.33, время, требуемое для кодирования, составляет 0,03453 секунды, так что изображения можно обрабатывать практически приблизительно в режиме реального времени. Кроме того, в случае декодирования изображения с помощью модуля 221 энтропийного декодирования, показанного на фиг.27, время, требуемое для декодирования, составляет 0,02750 секунд, что позволяет эффективно обрабатывать изображения в режиме реального времени.Moving images are often displayed at 30 frames per second, which allows real-time image processing only if encoding or decoding can be performed within 0.033 (= 1/30) seconds per frame. When using the JPEG 2000 method, the time required for encoding is 0.26157 seconds, and the time required for decoding is 0.24718 seconds, which makes it difficult to implement real-time processing of images, but in the case of encoding an image using the entropy module 123 coding shown in Fig.33, the time required for coding is 0.03453 seconds, so that the images can be processed almost approximately in real time. In addition, in the case of decoding an image using the entropy decoding unit 221 shown in FIG. 27, the time required for decoding is 0.02750 seconds, which allows efficient processing of images in real time.

В приведенном выше описании был описан пример кодирования данных изображения или пример декодирования кодированных данных, в котором данные изображения были кодированы, но оно не ограничивается данными изображения, и его можно применять для случаев кодирования данных звука или тому подобного, или декодирования кодированных данных, в которых были закодированы данные звука, например. Например, в случае кодирования данных звука, код, обозначающий максимальные значащие разряды w заданных значений, выраженных кодом, введенным как данные звука, код, обозначающий абсолютные значения числовых значений, и код, обозначающий знаки цифровых значений, выводят как кодированные данные звука.In the above description, an example of encoding image data or an example of decoding encoded data has been described, in which image data has been encoded, but not limited to image data, and can be used for cases of encoding audio data or the like, or decoding encoded data in which audio data was encoded, for example. For example, in the case of encoding audio data, a code indicating the maximum significant bits w of setpoints expressed by a code entered as sound data, a code indicating absolute values of numerical values, and a code indicating signs of numerical values are output as encoded audio data.

Дополнительное свойство настоящего варианта выполнения состоит в том, что со способом кодирования, описанным в настоящем варианте выполнения, можно кодировать квантованные коэффициенты без потерь. Соответственно, квантование с большим размером шага для коэффициентов более верхней полосы, так, чтобы они соответствовали свойствам восприятия человеческого зрения, позволяет существенно улучшить качество изображения на величину генерируемого кода. Кроме того, при уменьшении размеров шага квантования, что используется в определенном диапазоне пространства, обеспечивается возможность улучшить качество изображения в этом диапазоне пространства.An additional property of the present embodiment is that with the encoding method described in the present embodiment, lossless quantized coefficients can be encoded. Accordingly, quantization with a large step size for the coefficients of the upper band, so that they correspond to the perception properties of human vision, can significantly improve image quality by the amount of generated code. In addition, by reducing the size of the quantization step, which is used in a certain range of space, it is possible to improve image quality in this range of space.

Кроме того, с помощью способа кодирования, описанного с настоящим вариантом выполнения, кодируется набор участка значащих разрядов по абсолютным значениям. Если сказать, что участок значащих разрядов абсолютных значений подвергается кодированию КПД и передаче, в случае, когда значащий разряд абсолютных значений равен N, необходима чрезвычайно большая таблица КПД, имеющая 2(N*W) записей (что не только увеличивает нагрузку и время обработки при расчетах, но также и требует увеличивать емкость запоминающего устройства, необходимую для содержания таблицы КПД). И наоборот, при использовании способа кодирования, описанного в настоящем варианте выполнения, нет необходимости использовать такую большую таблицу (что позволяет сократить не только нагрузку и время обработки для расчетов, но также и требуемую емкость запоминающего устройства).In addition, using the encoding method described with the present embodiment, a set of significant bits in absolute values is encoded. If we say that the section of significant bits of absolute values is subjected to efficiency coding and transmission, in the case when the significant bit of absolute values is N, an extremely large efficiency table is necessary, having 2 (N * W) records (which not only increases the load and processing time in the calculations, but also also requires increasing the storage capacity necessary to maintain the efficiency table). Conversely, when using the encoding method described in the present embodiment, there is no need to use such a large table (which reduces not only the load and processing time for calculations, but also the required storage capacity).

Кроме того, при использовании арифметического кодирования с более высокой степенью сжатия, чем предусмотрено КПД, даже использование способа сжатия с арифметическим кодированием, таким как JPEG 2000, например, невозможно существенно улучшить степень сжатия по сравнению со случаем способа кодирования, описанного в данном варианте выполнения. То есть при использовании способа кодирования, описанного в настоящем варианте выполнения, обработка кодирования выполняется просто, при высоком значении степени сжатия.In addition, when using arithmetic coding with a higher compression ratio than the efficiency is provided, even using a compression method with arithmetic coding such as JPEG 2000, for example, it is impossible to significantly improve the compression ratio compared to the case of the coding method described in this embodiment. That is, when using the encoding method described in the present embodiment, encoding processing is performed simply, with a high compression ratio.

При использовании способа кодирования, описанного в настоящем варианте выполнения, кодируют максимальные значащие разряды абсолютных значений w наборов коэффициентов, в результате размер генерируемого кода может быть уменьшен, используя факт, что значащие разряды расположенных рядом коэффициентов являются аналогичными.When using the encoding method described in the present embodiment, the maximum significant bits of the absolute values w of the sets of coefficients are encoded, as a result, the size of the generated code can be reduced using the fact that the significant bits of adjacent coefficients are similar.

Кроме того, при использовании способа кодирования, описанного в настоящем варианте выполнения, выполняется дифференциальное кодирование, при кодировании максимальных значащих разрядов абсолютных значений w наборов коэффициентов, в результате чего размер генерируемого кода можно уменьшить, используя тот факт, что значащие разряды соседних коэффициентов также являются аналогичными в этой точке.In addition, when using the encoding method described in the present embodiment, differential encoding is performed when encoding the maximum significant bits of the absolute values w of the sets of coefficients, as a result of which the size of the generated code can be reduced using the fact that the significant bits of the neighboring coefficients are also similar at this point.

Кроме того, обработку энтропийного кодирования с использованием модуля 123 энтропийного кодирования и обработку энтропийного декодирования, с помощью модуля 221 энтропийного декодирования, в соответствии с описанным выше шестым вариантом выполнения, можно применять для каждого из описанных выше с первого по пятый вариантах выполнения, в результате чего время задержки, потребляемую мощность, размер памяти буфера, необходимой для обработки, и т.д., можно дополнительно уменьшить для всей обработки кодирования изображения и обработки декодирования изображения. Например, модуль 123 энтропийного кодирования можно применять как модуль 15 энтропийного кодирования устройства 1 кодирования изображения, показанного на фиг.1 (то есть модуль 15 энтропийного кодирования может выполнять обработку энтропийного кодирования таким же образом, как и модуль 123 энтропийного кодирования). Кроме того, например, модуль 221 энтропийного декодирования можно применять как модуль 21 энтропийного декодирования в устройстве 20 декодирования изображения по фиг.9 (то есть модуль 21 энтропийного декодирования может выполнять обработку энтропийного декодирования так же, как и модуль 221 энтропийного декодирования).In addition, entropy encoding processing using entropy decoding module 123 and entropy decoding processing using entropy decoding module 221 in accordance with the sixth embodiment described above can be applied to each of the first to fifth embodiments described above, as a result of which the delay time, power consumption, buffer size required for processing, etc., can be further reduced for all image encoding processing and decoding processing Image IAOD. For example, entropy encoding module 123 may be used as entropy encoding module 15 of the image encoding apparatus 1 shown in FIG. 1 (i.e., entropy encoding module 15 may perform entropy encoding processing in the same manner as entropy encoding module 123). In addition, for example, entropy decoding module 221 can be applied as entropy decoding module 21 in the image decoding apparatus 20 of FIG. 9 (i.e., entropy decoding module 21 can perform entropy decoding processing in the same way as entropy decoding module 221).

То есть при применении обработки энтропийного кодирования в соответствии с шестым вариантом выполнения, в каждом из описанных выше с первого варианта выполнения по пятый вариант выполнения, обеспечивается возможность уменьшения размера генерируемого кода, благодаря выгодному использованию свойства порядка вывода коэффициентов из модуля вейвлет преобразования в каждом из вариантов выполнения (то есть, учитывая, что значащие разряды последовательных коэффициентов являются аналогичными). Кроме того, даже в случае реконфигурирования коэффициентов, модуль вейвлет преобразования выполняет вейвлет преобразование в отношении приращений блоков строк, в результате чего то свойство, что значащие разряды последовательных коэффициентов являются аналогичными, не существенно затрагивается, и размер генерируемого кода при обработке энтропийного кодирования изменяется незначительно.That is, when applying the processing of entropy coding in accordance with the sixth embodiment, in each of the above described from the first embodiment to the fifth embodiment, it is possible to reduce the size of the generated code, due to the advantageous use of the property of the order of derivation of coefficients from the wavelet transform module in each of the variants execution (that is, given that the significant bits of successive coefficients are similar). In addition, even in the case of reconfiguration of the coefficients, the wavelet transform module performs the wavelet transform with respect to increments of line blocks, as a result of which the property that significant bits of successive coefficients are similar is not significantly affected, and the size of the generated code during the processing of entropy coding changes slightly.

Как описано выше, обработка энтропийного кодирования, в соответствии с шестым вариантом выполнения, и свойства обработанных данных коэффициента и ожидаемые ее преимущества аналогичны обработке вейвлет преобразования, описанной со ссылкой на описанные выше с первого варианта выполнения по пятый вариант выполнения, и имеют сильное сродство друг с другом. В соответствии с этим, во всей обработке кодирования изображения больше преимуществ можно ожидать при применении обработки энтропийного кодирования в соответствии с настоящим вариантом выполнения, при обработке вейвлет преобразования, описанной со ссылкой на описанный выше с первого варианта выполнения по пятый вариант выполнения, по сравнению с применением других способов кодирования.As described above, the entropy encoding processing in accordance with the sixth embodiment and the properties of the processed coefficient data and its expected benefits are similar to the wavelet transform processing described with reference to the first embodiment to the fifth embodiment described above and have a strong affinity for each other. friend. Accordingly, in the entire image encoding processing, more advantages can be expected when applying the entropy encoding processing in accordance with the present embodiment, when processing the wavelet transform described with reference to the first embodiment to the fifth embodiment described above, as compared to the application other encoding methods.

Далее будет описан седьмой вариант выполнения настоящего изобретения. Этот седьмой вариант выполнения представляет собой пример цифровой триаксиальной системы, в которой применяется устройство кодирования изображения и устройство декодирования изображения в соответствии с описанными выше вариантами выполнения.Next, a seventh embodiment of the present invention will be described. This seventh embodiment is an example of a digital triaxial system in which an image encoding apparatus and an image decoding apparatus in accordance with the above described embodiments are used.

Триаксиальная система представляет собой систему, используемую в телевизионных широковещательных станциях, производственных студиях и т.д. С помощью такой системы в момент записи, передачи из студии или широковещательной передачи в прямом эфире из удаленного места используется одиночный триаксиальный кабель, соединяющий видеокамеру и модуль управления камерой, или коммутатор для передачи мультиплексированных сигналов, таких как сигналы изображения, сигналы звука, обратные сигналы изображения, сигналы синхронизации и т.д., и также для подачи питания.A triax system is a system used in television broadcast stations, production studios, etc. Using such a system, at the time of recording, transmitting from the studio or broadcasting live from a remote place, a single triax cable is used connecting the video camera and the camera control module, or a switch for transmitting multiplexed signals, such as image signals, sound signals, image return signals , timing signals, etc., and also for power supply.

Множество обычных триаксиальных систем были установлены для передачи описанных выше сигналов в форме аналоговых сигналов. С другой стороны, в последние годы, все системы становятся полностью цифровыми, и, соответственно, триаксиальные системы, используемые в телевизионных широковещательных станциях, также становятся цифровыми.Many conventional triax systems have been installed to transmit the above signals in the form of analog signals. On the other hand, in recent years, all systems have become fully digital, and accordingly, the triax systems used in television broadcast stations have also become digital.

В хорошо известных цифровых триаксиальных системах цифровые видеосигналы, передаваемые по триаксиальному кабелю, до настоящего времени представляли собой видеосигналы без сжатия. Причина этого состоит в том, что спецификации, требуемые в отношении времени задержки сигнала, являются чрезвычайно строгими в телевизионных широковещательных станциях, в основном, например, требуется, чтобы время задержки от момента съемки до вывода на экран монитора было в пределах одного поля (16,67 мс). Системы кодирования со сжатием, такие как MPEG2 и MPEG4, в которых реализована высокая степень сжатия и высокое качество изображения, не используются в триаксиальных системах, поскольку время, эквивалентное нескольким кадрам, требуется для сжатия и кодирования видеосигнала, и декодирования сжатых видеосигналов, что означает слишком большую задержку по времени.In well-known digital triax systems, digital video signals transmitted over a triax cable have so far been uncompressed video signals. The reason for this is that the specifications required with respect to signal delay time are extremely strict in television broadcasting stations, for example, for example, it is required that the delay time from the moment of recording to output to the monitor screen be within the same field (16, 67 ms). Compression encoding systems, such as MPEG2 and MPEG4, which implement a high compression ratio and high image quality, are not used in triax systems, since time equivalent to several frames is required for compression and encoding of a video signal, and decoding of compressed video signals, which means too much a large delay in time.

Способы кодирования и декодирования изображения в соответствии с настоящим изобретением, описанные выше, имеют чрезвычайно короткое время задержки ввода данных изображения, для получения выходного изображения, в пределах времени одного поля, то есть, от нескольких строк до нескольких десятков строк, и его, соответственно, можно применять в цифровой триаксиальной системе.The methods for encoding and decoding an image in accordance with the present invention described above have an extremely short delay time for inputting image data to obtain an output image within the time of one field, that is, from several lines to several tens of lines, and accordingly can be used in a digital triaxial system.

На фиг.37 иллюстрируется конфигурация примера цифровой триаксиальной системы, применимой в способе кодирования и декодирования изображения в соответствии с настоящим изобретением. Модуль 500 передачи и модуль 502 управления камерой соединены через триаксиальный кабель (коаксиальный трехпроводный кабель) 501. Цифровые видеосигналы и цифровые сигналы звука (ниже называются "сигналами основной линии") из модуля 500 передачи в модуль 502 управления камерой, которые фактически передают в режиме широковещательной передачи, или используют как содержание, и звуковые сигналы переговорного устройства и обратные цифровые видеосигналы из модуля 502 управления камерой модуля 503 видео камеры передают через триаксиальный кабель 501.On Fig illustrates the configuration of an example of a digital triaxial system applicable in the method of encoding and decoding an image in accordance with the present invention. The transmission module 500 and the camera control module 502 are connected via a triax cable (coaxial three-wire cable) 501. Digital video signals and digital audio signals (hereinafter referred to as “main line signals”) from the transmission module 500 to the camera control module 502, which are actually transmitted in broadcast mode transmissions, or use both the content and the audio signals of the intercom and the inverse digital video signals from the camera control module 502 of the video camera module 503 are transmitted via a triaxial cable 501.

Модуль 500 передачи встроен, например, в непоказанное устройство видеокамеры. Конечно, могут быть выполнены другие компоновки, такие как модуль 500 передачи, соединенный с устройством видеокамеры, в качестве внешнего устройства для устройства видеокамеры. Модуль 502 управления камерой может представлять собой устройство, обычно называемое, например, МУК (CCU, модуль управления камерой).Transmission module 500 is integrated, for example, in a camcorder device not shown. Of course, other arrangements can be made, such as a transfer module 500 connected to the camcorder device as an external device for the camcorder device. The camera control module 502 may be a device commonly referred to as, for example, a CCM (CCU, camera control module).

Цифровые звуковые сигналы составляют малую нагрузку в смысле настоящего изобретения, поэтому их описание не будет здесь приведено для упрощения описания.Digital audio signals constitute a small load in the sense of the present invention, therefore, their description will not be given here to simplify the description.

Модуль 503 видеокамеры выполнен, например, внутри непоказанного на чертеже устройства видеокамеры, и выполняет съемку с использованием непоказанного устройства отслеживания изображения, такого как ПЗС (CCD, прибор с зарядовой связью), света от предмета, который снимают через оптическую систему 550, включающую в себя объектив, механизм фокусирования, механизм оптического увеличения, механизм регулировки диафрагмы и т.д. Устройство съемки изображения преобразует принятый свет в электрические сигналы с использованием фотоэлектрического преобразования, и, кроме того, выполняет заданную обработку сигналов, для вывода цифровых видеосигналов основного диапазона. Эти цифровые видеосигналы отображают, например, в формате ПИД-ВР (HD-SDI, последовательный интерфейс данных с высокой разрешающей способностью) и выводят.The camera module 503 is made, for example, inside a video camera device not shown in the drawing, and shoots using an unshown image tracking device, such as a CCD (CCD, charge-coupled device), light from an object that is captured through an optical system 550 including lens, focusing mechanism, optical zoom mechanism, aperture adjustment mechanism, etc. The image pickup apparatus converts the received light into electrical signals using photoelectric conversion, and furthermore performs predetermined signal processing for outputting digital video signals of the main range. These digital video signals are displayed, for example, in the PID-BP format (HD-SDI, high resolution serial data interface) and output.

Также к модулю 503 видеокамеры подключен модуль 551 дисплея, используемый как монитор, и переговорное устройство 552, используемое для обмена звуком с внешними устройствами.Also, a display module 551, used as a monitor, and an intercom 552, used to exchange sound with external devices, are connected to the camera module 503.

Модуль 500 передачи имеет модуль 510 кодирования видеосигнала, модуль 511 декодирования видеосигнала, модуль 512 цифровой модуляции и модуль 513 цифровой демодуляции, усилители 514 и 515, и модуль 516 разделения/синтеза видеоизображения.The transmission module 500 has a video encoding module 510, a video decoding module 511, a digital modulation module 512 and a digital demodulation module 513, amplifiers 514 and 515, and a video separation / synthesis module 516.

Цифровые видеосигналы основного диапазона, отображенные, например, в формат ПИД-ВР, передают из модуля 503 видеокамеры в модуль 500 передачи. Цифровые видеосигналы сжимают и кодируют в модуле 510 кодирования видеосигнала так, что они становятся потоком кода, который передают в модуль 512 цифровой модуляции. Модуль 512 цифровой модуляции модулирует переданный поток кода в сигналы в формате, пригодном для передачи данных по триаксиальному кабелю 501 и выводят их. Сигналы выводимые из модуля 512 цифровой модуляции, передают в модуль 516 разделения/синтеза видеоизображения через усилитель 514. Модуль 516 разделения/синтеза видеоизображения передает переданные сигналы в триаксиальный кабель 501. Эти сигналы принимают в модуле 502 управления камерой через триаксиальный кабель 501.Digital video signals of the main range, displayed, for example, in the PID-BP format, are transmitted from the camera module 503 to the transmission module 500. Digital video signals are compressed and encoded in the video encoding module 510 so that they become a code stream that is transmitted to the digital modulation module 512. Digital modulation module 512 modulates the transmitted code stream into signals in a format suitable for transmitting data via triax cable 501 and output them. The signals output from the digital modulation module 512 are transmitted to the video separation / synthesis module 516 through an amplifier 514. The video separation / synthesis module 516 transmits the transmitted signals to the triax cable 501. These signals are received in the camera control module 502 via the triax cable 501.

Сигналы, выведенные из модуля 502 управления камерой, принимают в модуле 500 передачи через триаксиальный кабель 501. Принятые сигналы передают в модуль 516 разделения/синтеза, где разделяют часть цифровых видеосигналов и часть других сигналов. Из принятых сигналов часть цифровых видеосигналов передают через усилитель 515 в модуль 513 цифровой демодуляции, и сигналы, модулированные в сигналы в формате, пригодном для передачи по триаксиальному кабелю 501, демодулируют на стороне модуля 502 управления камерой, и восстанавливают поток кода.The signals output from the camera control module 502 are received in the transmission module 500 via a triaxial cable 501. The received signals are transmitted to the separation / synthesis module 516, where a part of the digital video signals and a part of other signals are separated. Of the received signals, part of the digital video signals is transmitted through an amplifier 515 to a digital demodulation module 513, and the signals modulated into signals in a format suitable for transmission via a triax cable 501 are demodulated on the side of the camera control module 502, and the code stream is restored.

Поток кода передают в модуль 511 декодирования видеосигнала, декодируют кодирование сжатия и получают цифровые видеосигналы в основном диапазоне. Декодированные цифровые видеосигналы отображают в формат ПИД-ВР и выводят, и передают в модуль 503 видеокамеры, как возвратные цифровые видеосигналы. Возвратные цифровые видеосигналы передают в модуль 551 отображения, соединенный с модулем 503 видеокамеры, и используют для отслеживания оператором камеры.The code stream is transmitted to the video decoding module 511, compression encoding is decoded, and digital video signals in the main range are obtained. The decoded digital video signals are displayed in PID-BP format and output and transmitted to the camera module 503 as return digital video signals. Return digital video signals are transmitted to a display module 551 connected to a video camera module 503 and used for tracking by a camera operator.

Модуль 502 управления камерой имеет модуль 520 разделения/синтеза видеоизображения, усилители 521 и 522, модуль 523 предварительной обработки, модуль 524 цифровой демодуляции и модуль 525 цифровой модуляции, и модуль 526 декодирования видеосигнала, а также модуль 527 кодирования видеосигнала.The camera control module 502 has a video separation / synthesis module 520, amplifiers 521 and 522, a preprocessing module 523, a digital demodulation module 524 and a digital modulation module 525, and a video signal decoding module 526, as well as a video encoding module 527.

Сигналы, выводимые из модуля 500 передачи, принимают в модуле 502 управления камерой через триаксиальный кабель 501. Принятые сигналы передают в модуль 520 разделения/синтеза видеоизображения. Модуль 520 разделения/синтеза видеоизображения передает переданные в него сигналы в модуль 524 цифровой демодуляции через усилитель 521 и модуль 523 предварительной обработки. Следует отметить, что модуль 523 предварительной обработки имеет модуль управления усилением, предназначенный для регулирования усиления входных сигналов, модуль фильтра, предназначенный для выполнения заданной фильтрования входных сигналов, и т.д.The signals output from the transmission module 500 are received in the camera control module 502 via a triaxial cable 501. The received signals are transmitted to the video separation / synthesis module 520. The video separation / synthesis module 520 transmits the signals transmitted therein to the digital demodulation module 524 through an amplifier 521 and a preprocessing module 523. It should be noted that the pre-processing module 523 has a gain control module for adjusting the gain of the input signals, a filter module for performing a predetermined filtering of the input signals, etc.

Модуль 524 цифровой демодуляции демодулирует сигналы, модулированные в сигналы в формате, пригодном для передачи по триаксиальному кабелю 501 на стороне модуля 500 передачи, и восстанавливает поток кода. Поток кода передают в модуль 526 декодирования видеосигнала, где декодируют кодирование со сжатием для получения цифровых видеосигналов в основном диапазоне. Декодированные цифровые видеосигналы отображают в формат ПИД-ВР и выводят, и передают во внешнее устройство, как основные линейные сигналы.Digital demodulation module 524 demodulates the signals modulated into signals in a format suitable for transmission over the triax cable 501 on the side of the transmission module 500, and restores the code stream. The code stream is transmitted to the video decoding module 526, where compression encoding is decoded to receive digital video signals in the main range. The decoded digital video signals are displayed in PID-BP format and output, and transmitted to an external device, as the main linear signals.

Возвращаемые цифровые видеосигналы и цифровые сигналы звука применяют во внешних устройствах в модуле 502 управления камерой. Цифровые звуковые сигналы, передают по переговорному устройству 552 оператора камеры, например, для использования при передаче внешних звуковых инструкций оператору камеры.The returned digital video signals and digital audio signals are used externally in the camera control unit 502. Digital audio signals are transmitted through an intercom 552 camera operator, for example, for use in transmitting external audio instructions to the camera operator.

Возвращаемые цифровые видеосигналы подвергают кодированию 527 видеосигнала, декодируют со сжатием и передают в модуль 525 цифровой модуляции. Модуль 525 цифровой модуляции модулирует передаваемый поток кода в сигналы в формате, пригодном для передачи по триаксиальному кабелю 501, и выводит их. Сигналы, выводимые из модуля 525 цифровой модуляции, передают в модуль 520 разделения/синтеза видеоизображения через модуль 523 предварительной обработки и усилитель 522. Модуль 520 разделения/синтеза видеоизображения мультиплексирует эти сигналы с другими сигналами и передает их по триаксиальному кабелю 501. Сигналы принимают в модуле 503 видеокамеры через триаксиальный кабель 501.The returned digital video signals are subjected to encoding 527 of the video signal, decoded with compression and transmitted to the digital modulation module 525. Digital modulation module 525 modulates the transmitted code stream into signals in a format suitable for transmission over triax cable 501, and outputs them. The signals output from the digital modulation module 525 are transmitted to the video separation / synthesis module 520 through a preprocessing module 523 and an amplifier 522. The video separation / synthesis module 520 multiplexes these signals with other signals and transmits them via a triax cable 501. The signals are received in the module 503 camcorders via triax 501.

В таком седьмом варианте выполнения настоящего изобретения устройство кодирования изображения и устройство декодирования изображения, описанные в приведенных выше вариантах выполнения, соответственно, применяют в модуле 510 кодирования видеосигнала и в модуле 527 кодирования видеосигнала, и в модуле 511 декодирования видеосигнала, и в модуле 526 декодирования видеосигнала.In such a seventh embodiment of the present invention, the image encoding apparatus and the image decoding apparatus described in the above embodiments are respectively applied to the video encoding module 510 and the video encoding module 527, and the video decoding module 511, and the video decoding module 526 .

В частности, второй вариант выполнения настоящего изобретения скомпонован так, что обработка различных элементов в устройстве кодирования изображения и в устройстве декодирования изображения может выполняться параллельно, что может существенно снизить задержку по времени при выводе изображений, снимаемых модулем 503 видеокамеры из модуля 502 управления камерой, и задержку при возврате цифровых видеосигналов, передаваемых из внешних устройств и передаваемых из модуля 502 управления камерой в модуль 503 видеокамеры и, соответственно, применяемых в седьмом варианте выполнения настоящего изобретения.In particular, the second embodiment of the present invention is arranged such that the processing of various elements in the image encoding device and the image decoding device can be performed in parallel, which can significantly reduce the time delay when outputting images captured by the camera module 503 from the camera control unit 502, and the delay in the return of digital video signals transmitted from external devices and transmitted from the camera control module 502 to the camera module 503 and, accordingly, yaemyh in the seventh embodiment of the present invention.

Кроме того, в случае системы, показанной на фиг.37, возможности обработки сигналов и емкость памяти можно установить соответствующим образом в каждом из модуля 500 передачи и модуля 502 управления камерой, таким образом, что обработка по реконфигурированию данных коэффициента будет выполняться либо на стороне модуля 500 передачи, или на стороне модуля 502 управления камерой, и энтропийное кодирование может выполняться таким же образом, либо перед или после обработки реконфигурирования.In addition, in the case of the system shown in FIG. 37, the signal processing capabilities and the memory capacity can be set appropriately in each of the transmission module 500 and the camera control module 502, so that the coefficient data reconfiguration processing will be performed either on the module side 500 of the transmission, either on the side of the camera control module 502, and entropy encoding can be performed in the same way, either before or after reconfiguration processing.

То есть на стороне модуля 500 передачи модуль 510 кодирования видеосигнала выполняет вейвлет преобразование и энтропийное кодирование в соответствии со способом настоящего изобретения для цифровых видеосигналов, передаваемых в него, и выводит поток кода. Как описано выше, после ввода определенного количества строк, соответствующих количеству отводов фильтра, используемого для вейвлет преобразования, и в соответствии с количеством введенных уровней разделений вейвлет преобразования модуль 510 кодирования видеосигнала начинает вейвлет преобразование. Кроме того, как описано выше со ссылкой на фиг.5, фиг.6, фиг.11 и т.д., после накопления данных коэффициента, необходимых для компонентов, в устройстве кодирования изображения и в устройстве декодирования изображения, обработка последовательно выполняется этими компонентами. После окончания обработки на нижней строке одного кадра или одного поля, начинается обработка следующего одного кадра или одного поля.That is, on the side of the transmission module 500, the video encoding module 510 performs wavelet transform and entropy encoding in accordance with the method of the present invention for digital video signals transmitted thereto, and outputs a code stream. As described above, after entering a certain number of lines corresponding to the number of taps of the filter used for the wavelet transform, and in accordance with the number of input levels of the separation of the wavelet transform, the video encoding module 510 starts the wavelet transform. In addition, as described above with reference to FIG. 5, FIG. 6, FIG. 11, etc., after accumulating coefficient data necessary for the components in the image encoding device and in the image decoding device, the processing is sequentially performed by these components . After processing on the bottom line of one frame or one field, processing of the next one frame or one field begins.

Это также справедливо для возвращаемых при передаче цифровых видеосигналов со стороны модуля 502 управления камерой на сторону 500 модуля передачи. То есть на стороне модуля 502 управления камерой модулем 527 кодирования видеосигнала выполняется вейвлет преобразование и энтропийное кодирование в соответствии с настоящим изобретением по переданным из внешних устройств возвращаемым цифровьм видеосигналам, и выводится поток кода.This is also true for digital video signals returned by transmission from the side of the camera control unit 502 to the side 500 of the transfer unit. That is, on the side of the camera control unit 502, the video signal encoding unit 527 performs wavelet transform and entropy encoding in accordance with the present invention on the returned digital video signals transmitted from external devices, and a code stream is output.

При этом часто возникает случай, когда разрешено, чтобы возвращаемые цифровые видеосигналы имели более низкое качество изображения, чем цифровой видеосигнал для основной линии сигналов. В этом случае частота следования битов во время кодирования в модуле 527 кодирования видеосигнала может быть понижена. Например, модуль 527 кодирования видеосигнала выполняет управление модулем 14 управления частотой следования битов таким образом, чтобы частота следования битов при обработке энтропийного кодирования в модуле 15 энтропийного кодирования была ниже. Кроме того, можно рассмотреть такую компоновку, в которой, например, на стороне модуля 502 управления камерой, обработку преобразования выполняют на более высоком уровне разделения с модулем 10 вейвлет преобразования в модуль 527 кодирования видеосигнала, и на стороне модуля 500 передачи инверсное вейвлет преобразование в модуле 23 инверсного вейвлет преобразования на стороне модуля 511 кодирования видеосигналов устанавливают на более низком уровне разделения. Обработка в модуле 527 кодирования видеосигнала модулем 502 управления камерой не ограничивается этим примером, и можно рассмотреть различные другие типы обработки, такие как поддержка низкого уровня разделения для вейвлет преобразования, с тем, чтобы уменьшить нагрузку при обработке преобразования.This often leads to the case where it is permitted that the returned digital video signals have lower image quality than the digital video signal for the main signal line. In this case, the bit rate during encoding in the video encoding unit 527 may be reduced. For example, the video encoding unit 527 controls the bit rate control unit 14 so that the bit rate of the entropy encoding processing in the entropy encoding unit 15 is lower. In addition, one can consider such an arrangement in which, for example, on the side of the camera control module 502, the conversion processing is performed at a higher level of separation with the wavelet transform module 10 to the video encoding module 527, and on the side of the transmission module 500, the inverse wavelet transform in the module The 23 inverse wavelet transforms on the side of the video encoding module 511 are set to a lower separation level. The processing in the video encoding unit 527 by the camera control unit 502 is not limited to this example, and various other types of processing can be considered, such as supporting a low level of separation for the wavelet transform so as to reduce the load on the conversion processing.

Далее будет описан восьмой вариант выполнения настоящего изобретения. В этом восьмом варианте выполнения настоящего изобретения передача кодированных данных, кодированных в устройстве кодирования изображения в соответствии с настоящим изобретением, на сторону устройства декодирования изображения выполняется с использованием беспроводного канала передачи данных. На фиг.38 представлена конфигурация примера системы беспроводной передачи данных в соответствии с восьмым вариантом выполнения настоящего изобретения. Следует отметить, что в примере, показанном на фиг.38, видеосигналы передают в одном направлении со стороны видеокамеры или модуля 600 передачи (ниже сокращенно называется "модуль 600 передачи") на сторону устройства 601 приема. Двунаправленная передача данных между модулем 600 передачи данных и устройством 601 приема может выполняться для видеосигналов и других сигналов.Next, an eighth embodiment of the present invention will be described. In this eighth embodiment of the present invention, the transmission of encoded data encoded in the image encoding apparatus in accordance with the present invention to the side of the image decoding apparatus is performed using a wireless data transmission channel. On Fig presents a configuration example of a wireless data transmission system in accordance with the eighth embodiment of the present invention. It should be noted that in the example shown in FIG. 38, video signals are transmitted in one direction from the side of the video camera or transmission module 600 (hereinafter abbreviated as “transmission module 600”) to the receiving device 601. Bidirectional data transmission between the data transmission unit 600 and the receiving device 601 may be performed for video signals and other signals.

Модуль 600 передачи встроен в не показанное устройство видеокамеры, имеющее, например, модуль 602 видеокамеры. Конечно, могут быть выполнены другие компоновки, такие как модуль 600 передачи, подключенный к устройству видеокамеры, как внешнее устройство для устройства видеокамеры, имеющего модуль 602 видеокамеры.A transmission module 600 is integrated in a video camera device not shown, having, for example, a video camera module 602. Of course, other arrangements can be made, such as a transmission module 600 connected to the video camera device, as an external device for the video camera device having the video camera module 602.

Модуль 602 видеокамеры имеет определенную оптическую систему, устройство съемки изображения, такое как, например, ПЗС, и модуль обработки сигналов, предназначенный для вывода сигналов, выводимых из устройства съемки изображения, в виде цифровых видеосигналов. Такие цифровые видеосигналы отображают, например, в формат ПИД-ВР и выводят, например, из модуля 602 видеокамеры. Конечно, цифровые видеосигналы, выводимые из модуля 602 видеокамеры, не ограничены этим примером, и могут иметь также другие форматы.The video camera module 602 has a specific optical system, an image pickup device, such as, for example, a CCD, and a signal processing module for outputting signals output from the image pickup device in the form of digital video signals. Such digital video signals are displayed, for example, in the PID-BP format and output, for example, from the camera module 602. Of course, the digital video signals output from the camera module 602 are not limited to this example, and may also have other formats.

Модуль 600 передачи имеет модуль 610 кодирования видеосигнала, модуль 611 цифровой модуляции и блок 612 беспроводного модуля. В модуле 600 передачи цифровые видеосигналы основной полосы отображают, например, в формат ПИД-ВР и выводят из модуля 602 видеокамеры. Цифровые видеосигналы подвергают кодированию сжатия с помощью вейвлет преобразования и энтропийного кодирования, в соответствии со способом кодирования сжатия, в соответствии с настоящим изобретением, в модуле 610 кодирования видеосигнала так, что они становятся потоком кода, который передают в модуль 611 цифровой модуляции. Модуль 611 цифровой модуляции выполняет цифровую модуляцию передаваемого потока кода в сигналы в формате, пригодном для беспроводной передачи данных, и выводит их.The transmission module 600 has a video coding module 610, a digital modulation module 611, and a wireless module block 612. In transmission module 600, digital baseband video signals are mapped, for example, to PID-BP format and output from video camera module 602. Digital video signals are subjected to compression encoding using wavelet transform and entropy encoding, in accordance with the compression encoding method in accordance with the present invention, in video encoding module 610 so that they become a code stream that is transmitted to digital modulation module 611. Digital modulation module 611 digitally modulates the transmitted code stream into signals in a format suitable for wireless data transmission and outputs them.

Кроме того, цифровые сигналы звука и другие сигналы, такие как, например, заданные команды и данные, также передают в модуль 611 цифровой модуляции. Например, модуль 602 видеокамеры имеет микрофон, с помощью которого улавливаемые звуки преобразуют в звуковые сигналы, и, кроме того, звуковые сигналы подвергают А/Ц преобразованию и выводят в виде цифровых сигналов звука. Кроме того, модуль 602 видеокамеры может выводить определенные команды и данные. Команды и данные могут генерироваться в модуле 602 видеокамеры, или модуль операций может быть предусмотрен в модуле 602 видеокамеры так, что команды и данные будут генерироваться в соответствии с операциями пользователя, выполняемыми в модуле операций. Кроме того, может быть выполнена компоновка, в которой устройство ввода, предназначенное для ввода команды и данных, будет подключено к модулю 602 видеокамеры.In addition, digital audio signals and other signals, such as, for example, given commands and data, are also transmitted to digital modulation module 611. For example, the camera module 602 has a microphone, with which the captured sounds are converted into audio signals, and in addition, the audio signals are A / D converted and output as digital audio signals. In addition, the camera module 602 may output certain commands and data. Commands and data may be generated in the camera module 602, or an operation module may be provided in the camera module 602 so that commands and data will be generated in accordance with user operations performed in the operations module. In addition, an arrangement may be made in which an input device for inputting a command and data will be connected to the camera module 602.

Модуль 611 цифровой модуляции выполняет цифровую модуляцию этих цифровых сигналов звука и других сигналов и выводит их. Цифровые модулированные сигналы, выводимые из модуля 611 цифровой модуляции, передают в блок 612 беспроводного модуля и передают по беспроводному каналу через антенну 613 в виде радиоволн.Digital modulation module 611 digitally modulates and outputs these digital audio signals and other signals. The digital modulated signals output from the digital modulation module 611 are transmitted to the wireless module unit 612 and transmitted wirelessly through the antenna 613 in the form of radio waves.

После приема АЗП (ARQ, автоматический запрос на повторение) со стороны устройства 601 приема, блок 612 беспроводного модуля передает уведомление в виде такого АЗП в модуль 611 цифровой модуляции для запроса повторной передачи данных.After receiving the AZP (ARQ, automatic repeat request) from the receiving device 601, the wireless module unit 612 transmits a notification in the form of such an AZP to the digital modulation module 611 to request data retransmission.

Радиоволны, передаваемые через антенну 613, принимаются антенной 620 на стороне устройства 601 приема, и их передают в блок 621 беспроводного модуля. Блок 621 беспроводного модуля передает цифровые модулированные сигналы на основе принятых радиоволн в модуль 622 предварительной обработки. Модуль 622 предварительной обработки выполняет заданную обработку сигналов, такую как, например, управление усилением в отношении передаваемых цифровых модулированных сигналов, и передает их в модуль 623 цифровой демодуляции. Модуль 623 цифровой демодуляции демодулирует переданные цифровые модулированные сигналы и восстанавливает поток кода.The radio waves transmitted through the antenna 613 are received by the antenna 620 on the side of the receiving device 601, and they are transmitted to the wireless module unit 621. The wireless module unit 621 transmits digital modulated signals based on the received radio waves to the preprocessing module 622. The preprocessing unit 622 performs predetermined signal processing, such as, for example, gain control with respect to the transmitted digital modulated signals, and transmits them to the digital demodulation unit 623. Digital demodulation module 623 demodulates the transmitted digital modulated signals and restores the code stream.

Восстановленный в модуле 623 цифровой демодуляции поток кода передают в модуль 624 декодирования видеосигнала, где выполняют декодирование в отношении кодирования со сжатием с использованием способа декодирования в соответствии с настоящим изобретением, и получают цифровые видеосигналы основной полосы. Декодированные цифровые видеосигналы отображают, например, в формат ПИД-ВР и выводят.The code stream restored in digital demodulation module 623 is transmitted to a video decoding module 624, where decoding is performed for compression encoding using the decoding method in accordance with the present invention, and digital baseband video signals are obtained. The decoded digital video signals are displayed, for example, in PID-BP format and output.

В модуль 623 цифровой демодуляции также передают цифровые сигналы звука и другие сигналы, подвергаемые цифровой модуляции на стороне модуля 600 передачи, и передают. Модуль 623 цифровой демодуляции демодулирует сигналы, в которых эти цифровые сигналы звука и другие сигналы подвергались цифровой модуляции, и восстанавливает и выводит цифровые сигналы звука и другие сигналы.Digital audio signals and other digitally modulated signals on the side of transmission module 600 are also transmitted to digital demodulation module 623 and are transmitted. Digital demodulation module 623 demodulates the signals in which these digital audio signals and other signals were digitally modulated, and restores and outputs digital audio signals and other signals.

Кроме того, модуль 622 предварительной обработки выполняет детектирование ошибок в соответствии с заданным способом, в отношении принимаемых сигналов, передаваемых из блока 621 беспроводного модуля, и в случае, когда детектируется ошибка, такая как, например, прием кадра с ошибкой, выводит АЗП. Этот АЗП передают в блок 621 беспроводного модуля и передают через антенну 620.In addition, the preprocessing unit 622 performs error detection in accordance with a predetermined method with respect to the received signals transmitted from the wireless unit 621, and in the case where an error is detected, such as, for example, receiving a frame with an error, outputs the ALR. This AZP is transmitted to a wireless module unit 621 and transmitted through an antenna 620.

При такой конфигурации модуль 600 передачи встроен в устройство видеокамеры с относительно малыми размерами, имеющее, например, модуль 602 видеокамеры, устройство монитора подключено к устройству 601 приема, и цифровые видеосигналы, выводимые из модуля 624 декодирования видеосигнала, передают в устройство монитора. Когда устройство 601 приема находится в пределах расстояния передачи радиоволн, передаваемых из блока 612 беспроводного модуля из устройства видеокамеры, имеющего встроенный модуль 600 передачи, изображения, снимаемые устройством видеокамеры, можно просматривать на устройстве монитора с малой задержкой, например, с задержкой в пределах одного поля или одного кадра.With this configuration, the transmission module 600 is integrated into the relatively small size video camera device, having, for example, the video camera module 602, the monitor device is connected to the reception device 601, and the digital video signals output from the video decoding module 624 are transmitted to the monitor device. When the reception device 601 is within the transmission distance of the radio waves transmitted from the wireless module unit 612 from the video camera device having the built-in transmission module 600, images captured by the video camera device can be viewed on the monitor device with a low delay, for example, with a delay within one field or one frame.

Следует отметить, что в примере, показанном на фиг.38, передача данных между модулем 600 передачи и модулем 601 приема, выполнятся с использованием беспроводной передачи данных, например, в виде передачи видеосигналов по беспроводному каналу передачи данных, но такая компоновка не ограничивается этим примером. Например, модуль 600 передачи и модуль 601 приема могут быть соединены через сеть, такую как Интернет. В этом случае каждый блок 612 беспроводного модуля на стороне модуля 600 передачи и блок 621 беспроводного модуля на стороне модуля 601 приема представляют собой интерфейсы передачи данных, позволяющие осуществлять передачу данных с использованием ПИ (IP, протокола Интернет).It should be noted that in the example shown in Fig. 38, data transmission between the transmission module 600 and the reception module 601 will be performed using wireless data transmission, for example, in the form of video signals transmitted over a wireless data transmission channel, but this arrangement is not limited to this example . For example, the transmission module 600 and the receiving module 601 may be connected through a network such as the Internet. In this case, each block 612 of the wireless module on the side of the transmission module 600 and the block 621 of the wireless module on the side of the reception module 601 are data transmission interfaces that allow data transmission using a PI (IP, Internet protocol).

Различные варианты применения можно рассмотреть для системы в соответствии с этим восьмым вариантом выполнения. Например, систему в соответствии с таким восьмым вариантом выполнения можно применять к системе для видеоконференций. В таком примере компоновки используется простое устройство видеокамеры, которое можно подключать через УПШ (USB, универсальную последовательную шину) к компьютерному устройству, такому как персональный компьютер, причем на стороне компьютерного устройства установлен модуль 610 кодирования видеосигнала, и модуль 624 декодирования видеосигнала. Модуль 610 кодирования видеосигнала и модуль 624 декодирования видеосигнала, установленные в компьютерном устройстве, могут иметь конфигурацию аппаратных средств, или могут быть реализованы в виде программного обеспечения, работающего в компьютерном устройстве.Various applications may be considered for the system in accordance with this eighth embodiment. For example, a system in accordance with such an eighth embodiment may be applied to a video conferencing system. This layout example uses a simple camcorder device that can be connected via USB (USB, universal serial bus) to a computer device, such as a personal computer, with a video encoding module 610 and a video decoding module 624 on the side of the computer device. The video encoding module 610 and the video decoding module 624 installed in the computer device may have a hardware configuration, or may be implemented as software running in a computer device.

Например, каждый из участников видеоконференции может быть снабжен компьютерным устройством и устройством видеокамеры, которое подключается к компьютерному устройству, при этом компьютерное устройство подключено к устройству сервера для предоставления услуги системы видеоконференции по кабельной сети или по беспроводной сети. Видеосигналы, выводимые из устройства видеокамеры, передают в компьютерное устройство по кабелю УПШ, и обработку кодирования, в соответствии с настоящим изобретением, выполняют в модуле 610 кодирования видеосигнала, в компьютерном устройстве. Компьютерное устройство передает поток кода, в котором были кодированы видеосигналы, в устройство сервера или тому подобное, через сеть.For example, each of the participants in a video conference can be equipped with a computer device and a video camera device that connects to a computer device, and the computer device is connected to a server device to provide video conferencing system services over a cable network or wireless network. The video signals output from the camcorder device are transmitted to the computer device via the USB cable, and encoding processing, in accordance with the present invention, is performed in the video signal encoding module 610 in the computer device. A computer device transmits a code stream in which video signals have been encoded to a server device or the like via a network.

Устройство сервера передает принятый поток кода в компьютерное устройство каждого из участников через сеть. Поток кода принимают в компьютерном устройстве каждого из участников и подвергают обработке декодирования, в соответствии с настоящим изобретением, в модуле 624 декодирования видеосигнала, в компьютерном устройстве. Данные изображения, выводимые из модуля 624 декодирования видеосигнала, отображают в модуле дисплея компьютерного устройства в виде изображения.The server device transmits the received code stream to the computer device of each of the participants through the network. The code stream is received at the computer device of each of the participants and is subjected to decoding processing, in accordance with the present invention, in the video signal decoding unit 624, in the computer device. Image data output from the video decoding unit 624 is displayed on the display unit of the computer device as an image.

То есть видеосигналы, снимаемые устройствами видеокамеры других участников, отображаются в модулях дисплея компьютерных устройств каждого из участников. В соответствии с этим, в восьмом варианте выполнения настоящего изобретения, время задержки от момента кодирования видеосигналов, снимаемых устройством видеокамеры до их декодирования в компьютерном устройстве других участников, будет коротким, что позволяет снизить ощущение неестественности изображений других участников, отображаемых в модулях отображения компьютерных устройств отображаемых участников.That is, the video signals captured by the video camera devices of other participants are displayed in the display modules of the computer devices of each of the participants. Accordingly, in the eighth embodiment of the present invention, the delay time from the moment of encoding the video signals captured by the video camera device to their decoding in the computer device of other participants will be short, which reduces the feeling of unnatural images of other participants displayed in the display modules of computer devices displayed participants.

Кроме того, можно предусмотреть компоновку, в которой модуль 610 кодирования видеосигнала установлен на стороне устройства видеокамеры. Например, модуль 600 передачи может быть встроен в устройство видеокамеры. Такая конфигурация устраняет необходимость подключения устройства видеокамеры к другому устройству, такому как компьютерное устройство или тому подобное.In addition, an arrangement may be provided in which the video encoding module 610 is mounted on the side of the camcorder device. For example, a transmission module 600 may be integrated in a camcorder device. This configuration eliminates the need to connect the camcorder device to another device, such as a computer device or the like.

Такая система, состоящая из устройства видеокамеры со встроенным модулем 600 передачи и устройством 601 приема может применяться в различных областях, помимо описанной выше системы видеоконференции. Например, как схематично показано на фиг.39, такую систему можно применять в домашней игровой консоли. На фиг.39 модуль 600 передачи в соответствии с восьмым вариантом выполнения настоящего изобретения встроен в устройство 700 видеокамеры.Such a system, consisting of a video camera device with an integrated transmission module 600 and a receiving device 601, can be applied in various fields, in addition to the video conferencing system described above. For example, as shown schematically in FIG. 39, such a system can be used in a home gaming console. 39, a transmission module 600 in accordance with an eighth embodiment of the present invention is integrated in the camcorder device 700.

В основном модуле 701 домашней игровой консоли, например, с помощью шины, подключены ЦПУ, ОЗУ, ПЗУ, устройство привода диска, совместимое с CD-ROM (постоянное запоминающее устройство на основе компакт-диска) и DVD-ROM (ПЗУ на основе цифрового универсального диска), модуль графического управления, предназначенный для преобразования сигналов управления отображением, генерируемых ЦПУ, в видеосигналы и вывода, и модуль воспроизведения звука, предназначенный для воспроизведения звуковых сигналов, и т.д., то есть имеющий конфигурацию, в общем, аналогичную конфигурации компьютерного устройства. Основной модуль 701 домашней игровой консоли полностью управляется с помощью ЦПУ, в соответствии с программами, заранее сохраненными в ПЗУ, или программами, записанными на CD-ROM или DVD-ROM, установленными в устройство привода диска. ОЗУ используется как рабочая память для ЦПУ. В основной модуль 701 домашней игровой консоли встроено устройство 601 приема. Цифровые видеосигналы, выводимые из устройства 601 приема, и другие сигналы передают в ЦПУ, например, через шину.In the main module 701 of the home game console, for example, via a bus, a CPU, RAM, ROM are connected, a CD-ROM compatible disc drive (CD-ROM) and a DVD-ROM (digital universal ROM) are connected disk), a graphical control module for converting the display control signals generated by the CPU into video signals and output, and a sound reproducing module for reproducing audio signals, etc., that is, having a configuration generally similar to th configuration of the computing device. The main module 701 of the home game console is fully controlled by the CPU, in accordance with programs previously stored in the ROM, or programs recorded on a CD-ROM or DVD-ROM installed in the disk drive device. RAM is used as working memory for the CPU. A reception device 601 is integrated in the main module 701 of the home gaming console. Digital video signals output from the reception device 601 and other signals are transmitted to the CPU, for example, via a bus.

Можно сказать, что в такой системе, например, основного модуля 701 домашней игровой консоли, выполняется работа игрового программного обеспечения, которое может снимать изображения в форме цифровых видеосигналов, передаваемых из внешнего источника, как изображения, используемые в игре. Например, такое игровое программное обеспечение позволяет использовать изображения в форме цифровых видеосигналов, передаваемых из внешнего источника, как изображения, используемые в игре, и также распознает движения людей (игроков) в этом изображении и выполняет операции, соответствующие распознаваемым движениям.We can say that in such a system, for example, the main module 701 of the home game console, the work of the game software is performed, which can take images in the form of digital video signals transmitted from an external source, like the images used in the game. For example, such game software allows the use of images in the form of digital video signals transmitted from an external source, such as images used in the game, and also recognizes the movements of people (players) in this image and performs operations corresponding to the recognized movements.

Устройство 700 видеокамеры кодирует снимаемые цифровые видеосигналы с помощью способа кодирования, в соответствии с настоящим изобретением в модуле 610 кодирования видеосигнала, во встроенном модуле 600 передачи, модулирует поток кода в модуле 611 цифровой модуляции и передает в блок 612 беспроводного модуля для передачи через антенну 613. Передаваемые радиоволны принимают с помощью антенны 620 устройства 601 приема, встроенного в основной модуль 701 домашней игровой консоли, принимаемые сигналы передают в модуль 623 цифровой демодуляции через блок 621 беспроводного модуля и модуль 622 предварительной обработки. Принимаемые сигналы демодулируют в модуле 623 цифровой демодуляции в поток кода и передают в модуль 624 декодирования видеосигнала. Модуль 624 декодирования видеосигнала декодирует передаваемый поток кода с использованием способа декодирования в соответствии с настоящим изобретением и выводит цифровые видеосигналы в основной полосе.The video camera device 700 encodes the captured digital video signals using the encoding method, in accordance with the present invention, in the video encoding module 610, in the built-in transmission module 600, modulates the code stream in the digital modulation module 611 and transmits to the wireless module 612 for transmission through the antenna 613. The transmitted radio waves are received using the antenna 620 of the receiving device 601, which is integrated in the main module 701 of the home game console, the received signals are transmitted to the digital demodulation module 623 through the block 621 wireless modules and pre-processing module 622. The received signals are demodulated in a digital demodulation module 623 into a code stream and transmitted to a video signal decoding module 624. The video decoding unit 624 decodes the transmitted code stream using the decoding method in accordance with the present invention and outputs digital video signals in the base band.

Цифровые видеосигналы в основной полосе, выводимые из модуля 624 декодирования видеосигналов, передают через шину в основном модуле 701 домашней игровой консоли и временно сохраняют, например, в ОЗУ. После считывания цифровых видеосигналов, сохраненных в ОЗУ, в соответствии с заданной программой, ЦПУ может детектировать движение людей в изображении, предоставленном в виде цифровых видеосигналов, и использовать это изображение в игре.Digital video signals in the main band output from the video decoding module 624 are transmitted via a bus in the main module 701 of the home game console and temporarily stored, for example, in RAM. After reading the digital video signals stored in RAM, in accordance with a predetermined program, the CPU can detect the movement of people in the image provided as digital video signals, and use this image in the game.

Благодаря малому времени задержки от момента съемки изображений с помощью устройства 700 видеокамеры до получения цифровых видеосигналов, кодированных в виде потока кода, который декодируют в основном модуле 701 домашней игровой консоли и получения в нем изображений, улучшается отклик игрового программного обеспечения, работающего в основном модуле 701 домашнего пульта деловой игры относительно движения игрока, таким образом реакция домашней игровой консоли на движение игрока улучшается, что, таким образом, улучшает общую функциональность игры.Due to the short delay time from the moment of taking images using the video camera device 700 to receiving digital video signals encoded as a code stream that is decoded in the main module 701 of the home game console and receiving images therein, the response of the gaming software operating in the main module 701 is improved the home console of the business game with respect to player movement, thereby improving the response of the home game console to player movement, thereby improving overall functionality s games.

Следует отметить, что такое устройство 700 видеокамеры, используемое в домашней игровой консоли, часто имеет простую конфигурацию, из-за ограничений по цене, размерам и т.д., и следует сделать предположение, что ЦПУ с большой вычислительной мощностью и запоминающее устройство большой емкости, такие как в компьютерном устройстве, могут не использоваться.It should be noted that such a camcorder device 700 used in a home gaming console often has a simple configuration due to price, size, etc. limitations, and it should be assumed that a CPU with large processing power and a large capacity storage device , such as in a computer device, may not be used.

То есть обычно устройство 700 видеокамеры представляет собой периферийное устройство основного модуля 701 домашней игровой консоли, которое необходимо только для игры в игры с использованием устройства 700 видеокамеры, и не представляет собой устройства, необходимые для игры в игры в основном модуле 701 домашней игровой консоли. В таком случае устройство 700 видеокамеры часто продают отдельно от основного модуля 701 домашней игровой консоли (так называемое дополнительное, продаваемое отдельно устройство). В этом случае установка ЦПУ с высокой производительностью и запоминающего устройства с большой емкостью в устройстве 700 видеокамеры, которое продают по высокой цене, обычно может привести к уменьшению объема продаж товара. Таким образом, это может привести к уменьшению объема продаж игр, в которых используется устройство 700 видеокамеры, что может привести к снижению дохода. Кроме того, в домашних играх, в частности, пропорция собственности часто сильно влияет на количество продаваемого товара, так, что низкая пропорция собственности устройства 700 видеокамеры может привести к дополнительному снижению объема продажи товара.That is, typically, the video camera device 700 is a peripheral device of the home game console main module 701, which is only needed for playing games using the video camera device 700, and is not the device necessary for playing games in the main home game console module 701. In this case, the camcorder device 700 is often sold separately from the main module 701 of the home gaming console (the so-called optional, separately sold device). In this case, the installation of a high-performance CPU and a high-capacity storage device in the camcorder device 700, which are sold at a high price, can usually lead to a decrease in the sales volume of the product. Thus, this can lead to a decrease in sales of games that use the camcorder device 700, which can lead to a decrease in revenue. In addition, in home games, in particular, the proportion of ownership often greatly affects the amount of goods sold, so that a low proportion of ownership of the camcorder device 700 can lead to an additional reduction in the amount of goods sold.

С другой стороны, при продаже большого количества устройств 700 видеокамеры с низкой ценой, для повышения пропорции собственности можно улучшить продажу продаваемых домашних игр, в которых используется устройство 700 видеокамеры, и повысить их популярность, и это, в свою очередь, может стимулировать дополнительную мотивацию к покупке основного модуля 701 домашней игровой консоли. Учитывая также такую перспективу, устройство 700 видеокамеры часто предпочтительно имеет простую конфигурацию.On the other hand, when selling a large number of low-cost video camera devices 700, to increase the ownership ratio, you can improve the sale of home games that use the video camera device 700 and increase their popularity, and this, in turn, can stimulate additional motivation to purchasing the main module 701 home gaming console. Given this perspective, the camcorder device 700 often preferably also has a simple configuration.

В этом случае можно предусмотреть компоновку, в которой вейвлет преобразование выполняется в модуле 610 кодирования видеосигнала, модуля 600 преобразования, встроенного в устройстве 700 видеокамеры, на низком уровне разделения. Это снижает потребность в емкости запоминающего устройства, используемого с модулем буфера реконфигурирования коэффициента.In this case, it is possible to provide an arrangement in which the wavelet transform is performed in the video encoding module 610, the transform module 600, integrated in the camera device 700, at a low separation level. This reduces the capacity requirement of the storage device used with the coefficient reconfiguration buffer module.

Кроме того, можно рассмотреть компоновку, в которой используется конфигурация устройства кодирования изображения, пример которого представлен на фиг.12, которое было описано в третьем варианте выполнения, для модуля 610 кодирования видеосигнала. Кроме того, применение конфигурации устройства кодирования изображения, в качестве примера представлено на фиг.15, которая была описано в четвертом варианте выполнения, в модуле 610 кодирования видеосигнала, устраняет необходимость выполнения обработки реконфигурирования данных коэффициента вейвлет преобразования на стороне модуля 610 кодирования видеосигнала, в результате чего можно дополнительно уменьшить нагрузку на стороне устройства 700 видеокамеры, что является предпочтительным. В этом случае существует потребность использования устройства декодирования изображения, пример которого представлен на фиг.16, которое было описано в четвертом варианте выполнения, в качестве модуля 624 декодирования видеосигнала в устройстве 601 приема, встроенном на стороне основного модуля 701 домашней игровой консоли.In addition, you can consider the layout that uses the configuration of the image encoding device, an example of which is shown in Fig.12, which was described in the third embodiment, for the module 610 encoding a video signal. In addition, the application of the configuration of the image encoding device as shown in FIG. 15, which was described in the fourth embodiment, in the video encoding module 610, eliminates the need to perform reconfiguration processing of the wavelet transform coefficient data on the side of the video encoding module 610, as a result which can further reduce the load on the side of the camcorder device 700, which is preferred. In this case, there is a need to use an image decoding apparatus, an example of which is shown in FIG. 16, which was described in the fourth embodiment, as a video decoding module 624 in a reception device 601, integrated on the side of the main module 701 of a home game console.

Следует отметить, что устройство 700 видеокамеры и основной модуль 701 домашней игровой консоли были описаны выше, как устройства, подключенные с использованием беспроводного канала передачи данных, но эта компоновка не ограничивается таким примером. То есть устройство 700 видеокамеры и основной модуль 701 домашней игровой консоли могут быть подключены с помощью кабеля через такие интерфейсы, как УПШ, IEEE 1394 или тому подобное.It should be noted that the camcorder device 700 and the home game console main module 701 have been described above as devices connected using a wireless data channel, but this arrangement is not limited to such an example. That is, the camcorder device 700 and the home game console main module 701 can be connected via cable through interfaces such as USB, IEEE 1394, or the like.

Как описано выше, другое существенное преимущество настоящего изобретения состоит в том, что его можно применять в различных формах, и его можно легко использовать в самых разнообразных областях использования (то есть оно имеет высокую степень универсальности).As described above, another significant advantage of the present invention is that it can be applied in various forms, and can be easily used in a wide variety of uses (that is, it has a high degree of versatility).

Последовательности описанной выше обработки могут быть реализованы с помощью аппаратных средств или с помощью программных средств. В случае реализации последовательности обработки в виде программных средств программы, составляющие программное средство, установлены в компьютере, который имеет встроенные специализированные аппаратные средства, или они могут быть установлены в компьютере общего пользования, или в устройстве обработки информации системы обработки информации, составленной из множества устройств, которые позволяют выполнять различные функции с использованием программ разного типа, установленных на них, с носителя записи программы.The sequences of the processing described above can be implemented using hardware or using software. In the case of the implementation of the processing sequence in the form of software, the programs comprising the software are installed in a computer that has built-in specialized hardware, or they can be installed in a public computer, or in an information processing device of an information processing system composed of many devices, which allow you to perform various functions using different types of programs installed on them from the recording medium of the program.

На фиг.40 показана блок-схема, иллюстрирующая пример конфигурации устройства обработки информации, предназначенного для выполнения описанных выше последовательностей обработки с использованием программы.40 is a block diagram illustrating an example configuration of an information processing apparatus for executing the above-described processing sequences using a program.

Как показано на фиг.40, система 800 обработки информации представляет собой систему, выполненную как устройство 801 обработки информации, устройство 803 сохранения, подключенное к устройству 801 обработки информации с помощью шины 802 PCI, УЗЛ (VTR, устройство записи изображений на ленту) 804-1 - УЗЛ 804-S, которые представляют собой множество видеомагнитофонов (УЗЛ) и мышь 805, клавиатуру 806, и контроллер 807 операций, предназначенный для выполнения операций, вводимых пользователем этих устройств, и представляет собой систему, которая выполняет обработку кодирования изображения и обработку декодирования изображения, и т.п., как описано выше, с использованием установленной программы.As shown in FIG. 40, the information processing system 800 is a system configured as an information processing device 801, a storage device 803 connected to the information processing device 801 using a PCI bus 802, NPS (VTR, tape recorder) 804- 1 - UZL 804-S, which are a lot of video recorders (UZL) and a mouse 805, a keyboard 806, and an operation controller 807, designed to perform operations entered by the user of these devices, and is a system that performs code processing tion image and image decoding processing, and the like, as described above, using an installed program.

Устройство 801 обработки информации системы 800 обработки информации, например, может кодировать содержание движущегося изображения, сохраненное в устройстве 803 сохранения большой емкости, которое выполнено как массив МНДИ (RAID, массив независимых дисковых накопителей с избыточностью) и сохраняет полученные кодированные данные в устройстве 803 сохранения, декодируя кодированные данные, сохраненные в устройстве 803 сохранения, и сохраняя полученные декодированные данные изображения (содержание движущегося изображения) в устройстве 803 сохранения, записывает кодированные данные или декодированные данные изображения на видеоленте с использованием УЗЛ 804-1 - УЗЛ 804-S и т.д. Кроме того, устройство 801 обработки информации выполнено так, что оно захватывает содержание движущегося изображения, записанного на видеолентах, установленных в УЗЛ 804-1 - УЗЛ 804-S в устройстве 803 сохранения. При этом может быть предусмотрена компоновка, в которой устройство 801 обработки информации кодирует содержание движущегося изображения.The information processing device 801 of the information processing system 800, for example, can encode the contents of the moving image stored in the large capacity storage device 803, which is configured as an MNDI (RAID, redundant array of independent disk drives) and stores the obtained encoded data in the storage device 803, decoding the encoded data stored in the storage device 803 and storing the obtained decoded image data (moving image content) in the storage device 803 It records encoded data or decoded image data on a video tape using UZL 804-1 - UZL 804-S, etc. In addition, the information processing device 801 is configured to capture the contents of a moving image recorded on video tapes installed in the UZL 804-1 - UZL 804-S in the storage device 803. In this case, an arrangement may be provided in which the information processing device 801 encodes the contents of a moving image.

Модуль 801 обработки информации имеет микропроцессор 901, МГО (GPU, модуль графической обработки) 902, ОЗУ-ЧВС (XDR-RAM, ОЗУ с чрезвычайно высокой скоростью передачи данных) 903, южный мост 904, НЖМД 905, интерфейс (ИФ, I/F) 906 УПШ, и кодек 907 ввода/вывода звука.The information processing module 801 has a microprocessor 901, MGO (GPU, graphic processing module) 902, RAM-FWM (XDR-RAM, RAM with an extremely high data transfer rate) 903, south bridge 904, HDD 905, interface (IF, I / F ) 906 USB, and the codec 907 sound input / output.

МГО 902 соединен с микропроцессором 901 через специализированную шину 911, ОЗУ-ЧВС 903 соединено с микропроцессором 901 через специализированную шину 912. Южный мост 904 соединен с контроллером 944 ввода/вывода микропроцессора 901 через специализированную шину. Также к южному мосту 904 подключен НЖМД 905, интерфейс 906 УПШ и кодек 907 ввода/вывода звука. Громкоговоритель 921 соединен с кодеком 907 ввода/вывода звука. Кроме того, дисплей 922 соединен с МГО 902.MGO 902 is connected to microprocessor 901 through a specialized bus 911, RAM-PMC 903 is connected to microprocessor 901 through a specialized bus 912. The south bridge 904 is connected to the input / output controller 944 of microprocessor 901 through a specialized bus. Also, the HDD 905, the USB interface 906 and the sound input / output codec 907 are connected to the south bridge 904. Loudspeaker 921 is connected to sound input / output codec 907. In addition, the display 922 is connected to the IGO 902.

Также к южному мосту 904 подключены мышь 805, клавиатура 806, УЗЛ 804-1-804-S, устройство 803 сохранения и контроллер 807 операций, через шину 802 PCI.Also connected to the south bridge 904 are a mouse 805, a keyboard 806, an UZL 804-1-804-S, a storage device 803, and an operation controller 807, via a PCI 802 bus.

Мышь 805 и клавиатура 806 принимает операции, вводимые пользователем, и передает в микропроцессор 901 сигналы, обозначающие содержание операций, вводимых пользователем, через шину 802 PCI и южной мост 904. Устройство 803 сохранения и УЗЛ 804-1 - УЗЛ 804-S могут записывать и воспроизводить заданные данные.A mouse 805 and a keyboard 806 accepts user input and transmits signals to the microprocessor 901 indicating the content of user input via PCI bus 802 and south bridge 904. Storage device 803-1 and UZL 804-1 - UZL 804-S can record play set data.

Привод 808 дополнительно может быть соединен с шиной 802 PCI, в котором установлен съемный носитель 811, такой как магнитный диск, оптический диск, магнитооптический диск, или полупроводниковое запоминающее устройство и т.д., соответственно, и компьютерная программа, считываемая с него, устанавливается в соответствии с необходимостью в НЖМД 905.The drive 808 can optionally be connected to a PCI bus 802, in which removable media 811 is mounted, such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory device, etc., respectively, and a computer program read from it is installed in accordance with the need for HDD 905.

Микропроцессор 901 имеет многоядерную конфигурацию, в которой ядро 941 основного ЦПУ общего назначения, предназначенное для выполнения основных программ, таких как ОС (OS, операционная система) или тому подобное, ядро 942-1 вспомогательного ЦПУ - ядро 942-8 вспомогательного ЦПУ, которые представляют собой множество (восемь в данном случае) процессоров обработки сигналов типа КОНИ (RISC, компьютер с ограниченным набором инструкций), соединенных с ядром 941 основного ЦПУ через внутреннюю шину 945, контроллер 943 запоминающего устройства, предназначенный для выполнения управления запоминающим устройством ОЗУ-ЧВС 903, имеющим емкость, например, 256 [Мбайт], и контроллер 944 В/В (I/O, ввода/вывода), предназначенный для управления вводом и выводом данных совместно с южным мостом 904, интегрированы на одной микросхеме, с реализацией рабочей частоты, например, 4 [ГГц].The microprocessor 901 has a multi-core configuration in which the core 941 of the main general-purpose CPU, designed to run basic programs such as OS (OS, operating system) or the like, the core 942-1 of the secondary CPU is the core 942-8 of the secondary CPU, which represent there are many (eight in this case) KOHI-type signal processors (RISC, a computer with a limited set of instructions) connected to the core 941 of the main CPU via an internal bus 945, a memory controller 943 designed for To control the memory device, RAM-903, having a capacity of, for example, 256 [MB], and a controller 944 I / O (I / O, input / output), designed to control the input and output of data together with the south bridge 904, integrated on a single chip, with the implementation of the operating frequency, for example, 4 [GHz].

Во время запуска микропроцессор 901 считывает необходимые прикладные программы, сохраненные в НЖМД 905 на основе программы управления, сохраненной в НЖМД 905, и передает их в ОЗУ-ЧВС 903, и после чего выполняет необходимую обработку управления, на основе прикладных программ и операций, выполняемых оператором.During startup, the microprocessor 901 reads the necessary application programs stored in the HDD 905 based on the control program stored in the HDD 905, and transfers them to the RAM-PMC 903, and then performs the necessary control processing based on the application programs and operations performed by the operator .

Кроме того, при выполнении программного средства, микропроцессор 901 может реализовать обработку кодирования изображения и обработку декодирования изображения, в соответствии с описанными выше вариантами выполнения, передавая потоки кода, получаемые как результат кодирования, в НЖМД 905, для их сохранения, через южный мост 904, может выполнять передачу данных, представляющих собой, например, изображения для воспроизведения, содержание движущегося изображения, полученного в результате декодирования в МГО 902, для отображения на дисплее 922 и т.д.In addition, when executing the software, the microprocessor 901 can implement image encoding processing and image decoding processing, in accordance with the above-described embodiments, by transmitting the code streams obtained as a result of encoding to the HDD 905, for their storage, through the south bridge 904, can perform the transfer of data, which are, for example, images for playback, the contents of a moving image obtained by decoding in the IHO 902, for display on the display 922, etc. d.

Хотя подходы к использованию ядер ЦПУ микропроцессора 901 являются необязательными, может быть предусмотрена компоновка, в которой, например, ядро 941 основного ЦПУ выполняет обработку, связанную с управлением обработкой кодирования изображения и обработкой декодирования изображения, и восемь ядер 942-1-942-8 вспомогательных ЦПУ выполняют обработку различных типов, такую как вейвлет преобразование, реконфигурирование коэффициента, энтропийное кодирование, энтропийное декодирование, инверсное вейвлет преобразования, квантование, инверсное квантование и т.д., одновременно и параллельно, как описано, например, со ссылкой на фиг.11. При этом может быть получена компоновка, в которой ядро 941 основного ЦПУ назначает обработку каждому из восьми ядер 942-1-942-8 вспомогательных ЦПУ с приращением в виде блоков строк, выполняя, таким образом, обработку кодирования изображения и обработку декодирования изображения, одновременно и параллельно, с приращением по блокам строк, так же, как и в случае, описанном со ссылкой на Фиг.11. То есть эффективность обработки кодирования изображения и обработки декодирования изображения может быть улучшена, время задержки всей обработки может быть уменьшено, и, кроме того, нагрузка, время обработки и емкость памяти, необходимой для обработки, могут быть уменьшены. Конечно, каждая обработка может быть выполнена также с использованием других способов.Although approaches to using the CPU cores of microprocessor 901 are optional, an arrangement may be provided in which, for example, the core CPU core 941 performs processing related to the control of image encoding processing and image decoding processing, and eight auxiliary cores 942-1-942-8 CPUs perform various types of processing, such as wavelet transform, coefficient reconfiguration, entropy coding, entropy decoding, inverse wavelet transform, quantization, inverse quantization, etc., simultaneously and in parallel, as described, for example, with reference to FIG. 11. In this case, an arrangement can be obtained in which the core 941 of the main CPU assigns processing to each of the eight cores 942-1-942-8 of the auxiliary CPUs in increments in the form of string blocks, thereby performing image encoding processing and image decoding processing, simultaneously in parallel, incrementally in blocks of rows, in the same way as in the case described with reference to FIG. That is, the efficiency of image encoding processing and image decoding processing can be improved, the delay time of all processing can be reduced, and in addition, the load, processing time and memory capacity necessary for processing can be reduced. Of course, each processing can also be performed using other methods.

Например, может быть предусмотрена компоновка, в которой часть из восьми ядер 942-1 - ядер 942-8 вспомогательных микропроцессора 901 выполняют обработку кодирования, и остальные одновременно и параллельно выполняют обработку декодирования.For example, an arrangement may be provided in which a part of eight cores 942-1 - cores 942-8 of the auxiliary microprocessor 901 perform encoding processing, and the others simultaneously and simultaneously execute decoding processing.

Кроме того, например, в случае, когда независимый кодер или декодер, или устройство обработки кодека, подключено к шине 802 PCI, восемь ядер 942-1-942-8 вспомогательного ЦПУ микропроцессора 901 могут управлять обработкой, выполняемой этими устройствами, через южный мост 904 и шину 802 PCI. Кроме того, в случае, когда подключено множество таких устройств, или в случае, когда эти устройства включают в себя множество декодеров или кодеров, восемь ядер 942-1-942-8 вспомогательного ЦПУ микропроцессора 901 могут осуществлять управление таким образом, что множество декодеров или кодеров совместно разделят между собой обработку.In addition, for example, in the case where an independent encoder or decoder or codec processing device is connected to the PCI PCI bus, eight cores 942-1-942-8 of the auxiliary CPU of microprocessor 901 can control the processing performed by these devices through the south bridge 904 and an 802 PCI bus. In addition, in the case where a plurality of such devices are connected, or in the case when these devices include a plurality of decoders or encoders, eight cores 942-1-942-8 of an auxiliary CPU of the microprocessor 901 can control such that a plurality of decoders or coders will jointly share processing.

При этом основное ядро 941 ЦПУ управляет работой восьми ядер 942-1-942-8 вспомогательного ЦПУ, назначая обработку каждому ядру ЦПУ, получая результаты обработки и т.д. Кроме того, основное ядро 941 ЦПУ также выполняет другую обработку, кроме той, которую выполняют эти ядра вспомогательного ЦПУ. Например, основное ядро 941 ЦПУ принимает команды, передаваемые через мышь 805, клавиатуру 806 или контроллер 807 операций, через южный мост 904, и выполняет различные типы обработки, соответствующие этим командам.In this case, the main core 941 of the CPU controls the operation of eight cores 942-1-942-8 of the auxiliary CPU, assigning processing to each core of the CPU, receiving processing results, etc. In addition, the main CPU core 941 also performs other processing than that which these auxiliary CPU cores perform. For example, the main CPU core 941 receives commands transmitted through a mouse 805, a keyboard 806, or an operation controller 807 via a south bridge 904 and performs various types of processing corresponding to these commands.

МГО 902 выполняет обработку окончательного получения данных в отношении наложения текстур и так далее, для воспроизведения содержания игрового изображения или содержания движущегося изображения, которое должно отображаться на дисплее 922, а также управляет функциями, предназначенными для расчета преобразования координат при отображении множества игровых изображений для содержания движущегося изображения и изображения неподвижного изображения на дисплее 922, сразу же, обрабатывая увеличение/уменьшение игровых изображений, используемых в качестве содержания движущегося изображения, и неподвижных изображений для содержания неподвижного изображения, и т.д., в результате чего можно снизить нагрузку микропроцессора 901.The IGO 902 performs the final data processing for texture mapping, and so on, to reproduce the contents of the game image or the content of the moving image to be displayed on the display 922, and also controls the functions for calculating the coordinate transformation when displaying multiple game images for the content of the moving images and still image images on the display 922, immediately, processing the increase / decrease of game images used as the moving image contents and still images of still image contents, etc., whereby it is possible to reduce the burden of the microprocessor 901.

МГО 902, под управлением микропроцессора 901, выполняет заданную обработку сигнала в отношении подаваемых в него данных изображения, представляющих собой содержание движущегося изображения, и данных изображения, представляющих собой содержание неподвижного изображения, передает данные изображения и данные отображения, получаемые как результат этой обработки, на дисплей 922, и отображает сигналы изображения на дисплее 922.MGO 902, under the control of microprocessor 901, performs specified signal processing in relation to the image data supplied to it, which is the content of the moving image, and image data, which is the content of the still image, transmits image data and display data obtained as a result of this processing to a display 922, and displays image signals on a display 922.

Теперь игровые изображения, представляющие собой множество содержаний движущегося изображения, декодированных одновременно и параллельно с помощью восьми ядер 942-1-942-8 вспомогательного ЦПУ микропроцессора 901, подвергают передаче данных в МГО 902 по шине 911, при этом скорость передачи составляет, например, вплоть до 30 [Гбайт/сек], так что даже сложные изображения со специальными эффектами можно непрерывно отображать с высокой скоростью.Now, game images, which are a lot of contents of a moving image, decoded simultaneously and in parallel using eight cores 942-1-942-8 of the auxiliary CPU of microprocessor 901, are subjected to data transmission to MGO 902 via bus 911, while the transmission speed is, for example, up to up to 30 [GB / s], so even complex images with special effects can be continuously displayed at high speed.

Кроме того, микропроцессор 901 выполняет обработку смещения звука для данных звука, соответствующих данным изображения, и данных звука, соответствующих содержанию движущегося изображения, и передает отредактированные данные звука, полученные в результате этой обработки, в громкоговоритель 921 через южный мост 904, и код 907 ввода/вывода звука, для вывода звука на основе звуковых сигналов через громкоговоритель 921.In addition, the microprocessor 901 performs sound bias processing for the sound data corresponding to the image data and the sound data corresponding to the contents of the moving image, and transmits the edited sound data obtained as a result of this processing to the loudspeaker 921 through the south bridge 904, and the input code 907 audio output, for outputting sound based on audio signals through a speaker 921.

В случае реализации описанных выше последовательностей обработки с помощью программных средств программу, составляющую программное средство, устанавливают через сеть или носитель записи.In the case of implementing the above-described processing sequences using software, the program constituting the software is installed via a network or a recording medium.

Такой носитель записи включает в себя не только съемный носитель 811, показанный на фиг.40, такой как магнитные диски (включая гибкие диски), оптические диски (включая CD-ROM и DVD), магнитооптические диски (включая MD), полупроводниковое запоминающее устройство и т.д., устанавливаемые отдельно от основного модуля устройства для распространения программ пользователям, но также и НЖМД 905, устройство 803 сохранения, в которых записаны программы и т.д., поставляемые пользователю в сборе с основным модулем устройства. Конечно, носитель записи также может представлять собой полупроводниковое запоминающее устройство, такое как ПЗУ или запоминающее устройство типа флэш или тому подобное.Such a recording medium includes not only removable media 811 shown in FIG. 40, such as magnetic disks (including floppy disks), optical disks (including CD-ROMs and DVDs), magneto-optical disks (including MD), a semiconductor memory device, and etc., installed separately from the main device module for distributing programs to users, but also HDD 905, a storage device 803, in which programs, etc., delivered to the user assembled with the main module of the device, are recorded. Of course, the recording medium may also be a semiconductor memory device, such as a ROM or a flash memory device or the like.

В приведенном выше описании указано, что микропроцессор 901 выполнен из восьми ядер вспомогательного ЦПУ, но изобретение не ограничивается этим, и количество ядер вспомогательного ЦПУ является произвольным. Кроме того, что касается микропроцессора 901, может использоваться компоновка, в которой используется ЦПУ, выполненное как одноядерное (одно ядро) ЦПУ вместо основного ядра ЦПУ и ядер вспомогательных ЦПУ. Кроме того, множество ЦПУ можно использовать вместо микропроцессора 901, можно использовать множество устройств обработки информации (то есть программа, предназначенная для выполнения обработки в соответствии с настоящим изобретением, выполняется в множестве устройств, работающих совместно).In the above description, it is indicated that the microprocessor 901 is made up of eight auxiliary CPU cores, but the invention is not limited thereto, and the number of auxiliary CPU cores is arbitrary. In addition, with regard to microprocessor 901, an arrangement may be used that uses a CPU configured as a single-core (single core) CPU instead of the main CPU core and auxiliary CPU cores. In addition, a plurality of CPUs can be used in place of the microprocessor 901, a plurality of information processing devices can be used (that is, a program for executing processing in accordance with the present invention is executed on a plurality of devices working together).

Хотя этапы, описывающие программу, записанную на носителе записи программы в настоящем описании, могут, конечно, выполняться в описанной временной последовательности, они не ограничиваются этой временной последовательностью и могут выполняться параллельно, или по отдельности.Although the steps describing the program recorded on the program recording medium in the present description can, of course, be performed in the described time sequence, they are not limited to this time sequence and can be performed in parallel, or separately.

Кроме того, система, используемая в настоящем описании, относится ко всему оборудованию, которое выполнено из множества устройств (устройства).In addition, the system used in the present description relates to all equipment, which is made of many devices (devices).

Следует отметить, что в приведенном выше описании конфигурации, представленные как отдельное устройство, могут быть разделены так, что они будут состоять из множества устройств. И, наоборот, в приведенном выше описании конфигурации, описанные как выполненные из множества устройств, могут быть объединены и могут быть выполнены как одно устройство. Кроме того, в конфигурации этих устройств могут быть добавлены другие конфигурации, помимо описанных выше. Кроме того, часть конфигурации одного устройства может быть включена в конфигурацию другого устройства, если только конфигурация и работа всей системы, по существу, остается прежней.It should be noted that in the above description, the configurations presented as a separate device can be divided so that they will consist of many devices. Conversely, in the above description, configurations described as being made of a plurality of devices can be combined and can be made as a single device. In addition, other configurations may be added to the configuration of these devices beyond those described above. In addition, part of the configuration of one device may be included in the configuration of another device, provided that the configuration and operation of the entire system essentially remains the same.

Промышленная применимостьIndustrial applicability

Настоящее изобретение, описанное выше, предпочтительно, можно применять в различных устройствах или системах, если только они предназначены для кодирования со сжатием и передачи изображений, и код со сжатием декодируется и выводится в месте назначения передачи. Настоящее изобретение, в частности, преимущественно используется с устройствами или системами, в которых требуется обеспечить малую задержку от момента кодирования со сжатием до момента декодирования и вывода изображений.The present invention described above can preferably be applied to various devices or systems as long as they are intended for encoding with compression and transmission of images, and the compression code is decoded and output at the destination of transmission. The present invention, in particular, is mainly used with devices or systems in which a small delay is required from the moment of encoding with compression to the moment of decoding and outputting images.

Например, настоящее изобретение, предпочтительно, можно применять при дистанционной медицинской диагностике и при лечении с использованием манипуляторов, при просмотре изображений, снимаемых, например, видеокамерой. Кроме того, настоящее изобретение, предпочтительно, можно применять для кодирования со сжатием и передачи цифровых видеосигналов, и декодирования цифровых видеосигналов, подвергаемых кодированию со сжатием, в таких системах, как используются в станциях широковещательной передачи и т.п.For example, the present invention, preferably, can be used in remote medical diagnostics and in the treatment using manipulators, when viewing images taken, for example, with a video camera. In addition, the present invention can preferably be used for compression coding and transmission of digital video signals, and decoding of digital video signals subjected to compression coding in systems such as those used in broadcast stations and the like.

Кроме того, настоящее изобретение можно применять в системах, предназначенных для распределения видеоизображения, передаваемого в режиме прямой трансляции, в образовательных системах, в которых студенты и учителя могут интерактивно общаться друг с другом и т.д.In addition, the present invention can be applied in systems designed for the distribution of live video, in educational systems in which students and teachers can interact interactively with each other, etc.

Кроме того, настоящее изобретение можно применять для передачи данных изображения, снимаемых мобильными терминалами, обладающими функциями съемки изображения, такими как сотовые телефоны с функциями камеры, в системах видеоконференций, в системах наблюдения, для записи изображений, снимаемых камерами слежения, с использованием устройства записи и т.д.In addition, the present invention can be applied to transmit image data captured by mobile terminals having image pickup functions, such as cell phones with camera functions, in video conferencing systems, in surveillance systems, for recording images captured by security cameras using a recording device and etc.

Claims (22)

1. Устройство кодирования, предназначенное для кодирования данных изображения, содержащее средство фильтра, предназначенное для обработки фильтрования указанных данных изображения для каждого блока строк, включающего в себя данные изображения множества строк, необходимых для генерирования данных коэффициента, соответствующих одной строке подполосы, по меньшей мере, компонента самой нижней полосы, и генерирования множества подполос, состоящих из данных коэффициента, распределенных по диапазону частот; средство сохранения, предназначенное для сохранения данных коэффициента, генерируемых указанным средством фильтра для каждого блока строк; и средство реконфигурирования коэффициента, предназначенное для реконфигурирования указанных данных коэффициента, сохраненных в указанном средстве сохранения, для каждого блока строк, в порядке, в котором должна выполняться обработка синтезирования для генерирования данных изображения путем синтезирования данных коэффициента множества подполос, которые были разделены на диапазоны частот, при этом указанное средство реконфигурирования коэффициента реконфигурирует указанные данных коэффициента в порядке от компонентов нижней полосы до компонентов верхней полосы, для каждого блока строк; средство кодирования, предназначенное для кодирования данных коэффициента, реконфигурированных указанным средством реконфигурирования коэффициента; и1. An encoding device for encoding image data, comprising filter means for processing filtering said image data for each block of rows, including image data of a plurality of rows necessary to generate coefficient data corresponding to one row of a subband of at least a component of the lowest band, and generating a plurality of subbands consisting of coefficient data distributed over a frequency range; storage means for storing coefficient data generated by said filter means for each row block; and coefficient reconfiguration means for reconfiguring the specified coefficient data stored in the indicated storage means for each row block in the order in which the synthesis processing should be performed to generate image data by synthesizing coefficient data of a plurality of subbands that have been divided into frequency ranges, wherein said coefficient reconfiguration means reconfigures said coefficient data in order from the components of the lower floor sy to highband components for each line block; encoding means for encoding coefficient data reconfigured by said coefficient reconfiguration means; and средство управления, предназначенное для управления указанным средством фильтра, указанным средством сохранения, указанным средством реконфигурирования коэффициента и указанным средством кодирования, для параллельной работы для каждого блока строк.control means for controlling said filter means, said storage means, said coefficient reconfiguration means and said coding means for parallel operation for each block of rows. 2. Устройство кодирования по п.1, в котором указанное средство фильтра, указанное средство сохранения и указанное средство реконфигурирования коэффициента выполняют каждый процесс параллельно.2. The encoding device according to claim 1, wherein said filter means, said save means and said coefficient reconfiguration means perform each process in parallel. 3. Устройство кодирования по п.1, в котором указанное средство фильтра выполняет указанную обработку фильтрования в вертикальном направлении и в горизонтальном направлении на экране, соответствующем указанным данным изображения.3. The encoding device according to claim 1, wherein said filter means performs said filtering processing in a vertical direction and in a horizontal direction on a screen corresponding to said image data. 4. Устройство кодирования по п.1, в котором, по меньшей мере, один из множества выводов и количества уровней разрешения указанной обработки фильтрования, выполняемой указанным средством фильтра, определены в соответствии с целевым временем задержки.4. The encoding device according to claim 1, in which at least one of the many conclusions and the number of resolution levels of the specified filtering processing performed by the specified filter means are determined in accordance with the target delay time. 5. Устройство кодирования по п.1, в котором указанное средство фильтра выполняет обработку вейвлет фильтрования, при которой данные коэффициента подполосы компонента нижней полосы, полученные в результате указанной обработки фильтрования, дополнительно подвергают указанной обработке фильтрования.5. The encoding device according to claim 1, wherein said filter means performs wavelet filtering processing, wherein the subband coefficient data of the lower band component obtained by said filtering processing is further subjected to said filtering processing. 6. Устройство кодирования по п.5, в котором указанное средство фильтра выполняет указанную обработку вейвлет фильтрования, используя методику подъема.6. The encoding device according to claim 5, wherein said filter means performs said wavelet filtering processing using a lifting technique. 7. Устройство кодирования по п.5, в котором во время выполнения указанным средством фильтра указанной обработки фильтрования на уровне = Х+1 разрешения, используя указанную методику подъема, ее выполняют для данных коэффициента, рассчитанных как подполоса компонента нижней полосы с обработкой фильтрования на уровне = Х разрешения.7. The encoding device according to claim 5, in which, when the specified filter means performs the specified filtering processing at the level = X + 1 of the resolution using the specified lifting technique, it is performed for coefficient data calculated as a subband of the lower band component with filtering processing at the level = X resolution. 8. Устройство кодирования по п.5, причем указанное средство сохранения дополнительно содержит средство первого буфера, предназначенное для содержания данных коэффициента подполосы компонента нижней полосы, генерируемых в процессе указанной обработки вейвлет фильтрования, выполняемой указанным средством фильтра; и средство второго буфера, предназначенное для содержания данных коэффициента подполосы компонента верхней полосы, генерируемых в процессе указанной обработки вейвлет фильтрования, выполняемой указанным средством фильтра.8. The encoding device according to claim 5, wherein said storage means further comprises first buffer means for containing subband coefficient data of a lower band component generated during said wavelet filtering processing performed by said filter means; and second buffer means for containing subband coefficient data of the upper band component generated during said wavelet filtering processing performed by said filter means. 9. Устройство кодирования по п.8, в котором указанное средство второго буфера содержит данные коэффициента подполос компонентов другой полосы, кроме указанной самой нижней полосы, пока данные коэффициента для самой нижней подполосы компонента полосы генерируются указанным средством фильтра.9. The coding apparatus of claim 8, wherein said means of the second buffer comprises sub-band coefficient data of components of another band other than said lowest band, while coefficient data for the lowest band of the band component is generated by said filter means. 10. Устройство кодирования по п.1, в котором, как только указанные данные коэффициента будут реконфигурированы указанным средством реконфигурирования коэффициента, указанное средство кодирования последовательно выполняет энтропийное кодирование реконфигурированных данных коэффициента в порядке реконфигурирования.10. The encoding device according to claim 1, wherein as soon as said coefficient data is reconfigured by said coefficient reconfiguration means, said encoding means sequentially performs entropy encoding of the reconfigured coefficient data in reconfiguration order. 11. Устройство кодирования по п.1, в котором указанное средство кодирования выполняет кодирование пакета на множестве строк данных коэффициента в пределах одной подполосы.11. The encoding device according to claim 1, wherein said encoding means performs encoding of the packet on a plurality of rows of coefficient data within one subband. 12. Устройство кодирования по п.1, в котором указанное средство кодирования выполняет кодирование на строках всех подполос, составляющих блок строки, относительно данных потока коэффициента, выстроенного в одномерном направлении, в порядке от нижней полосы до верхней полосы.12. The encoding device according to claim 1, wherein said encoding means performs encoding on the rows of all subbands constituting the row block with respect to the data of the coefficient stream aligned in the one-dimensional direction in the order from the lower band to the upper band. 13. Устройство кодирования по п.1, дополнительно содержащее средство пакетирования, предназначенное для добавления заданного заголовка к кодированным данным, генерируемым указанным средством кодирования, и пакетирования заголовка и тела данных; средство передачи, предназначенное для передачи указанного пакета, генерируемого указанным средством пакетирования; и средство управления, предназначенное для управления, указанным средством фильтра, указанным средством сохранения, указанным средством реконфигурирования коэффициента, указанным средством кодирования, указанным средством пакетирования, и указанным средством передачи для параллельной работы для каждой строки блока.13. The encoding device according to claim 1, further comprising a packetizing means for adding a predetermined header to the encoded data generated by said encoding means and packetizing the header and data body; transmission means for transmitting said packet generated by said packetizing means; and control means for controlling said filter means, said saving means, said coefficient reconfiguration means, said encoding means, said packetizing means, and said transmission means for parallel operation for each row of the block. 14. Устройство кодирования по п.1, дополнительно содержащее средство пакетирования, предназначенное для добавления заданного заголовка к кодированным данным, генерируемым указанным средством кодирования, и пакетирования заголовка и тела данных; и средство передачи, предназначенное для передачи указанного пакета, генерируемого указанным средством пакетирования; в котором указанное средство фильтра, указанное средство сохранения, указанное средство реконфигурирования коэффициента, указанное средство кодирования, указанное средство пакетирования и указанное средство передачи работают параллельно для каждого блока строк.14. The encoding device according to claim 1, further comprising a packetizing means for adding a predetermined header to the encoded data generated by said encoding means and packetizing the header and data body; and transmission means for transmitting said packet generated by said packetizing means; wherein said filtering means, said saving means, said coefficient reconfiguration means, said encoding means, said packing means and said transmission means work in parallel for each row block. 15. Устройство кодирования по п.14, в котором указанный заголовок включает в себя информацию идентификации, предназначенную для идентификации указанного блока строки на экране, длины данных тела данных и информации кодирования.15. The encoding device of claim 14, wherein said header includes identification information for identifying said block of a line on a screen, data length of a data body and encoding information. 16. Устройство кодирования по п.15, причем указанное средство кодирования содержит средство квантования, предназначенное для квантования указанных данных коэффициента, генерируемых указанным средством фильтра; средство кодирования источника, предназначенное для кодирования источника по коэффициентам результата квантования, полученным по указанным данным коэффициента, квантованным указанным средством квантования; в котором указанная информация кодирования включает в себя информацию о размере шага квантования, выполняемого указанным средством квантования.16. The encoding device according to clause 15, wherein said encoding means comprises a quantization means for quantizing said coefficient data generated by said filter means; source encoding means for encoding a source based on quantization result coefficients obtained from said coefficient data quantized by said quantization means; in which the specified encoding information includes information about the size of the quantization step performed by the specified quantization means. 17. Способ кодирования, предназначенный для кодирования данных изображения, содержащий этап фильтрования, предназначенный для выполнения обработки фильтрования указанных данных изображения, для каждого блока строк, включающего в себя данные изображения множества строк, необходимых для генерирования данных коэффициента, соответствующих одной строке подполосы, по меньшей мере, компонента самой нижней полосы, и генерирования множества подполос, состоящих из данных коэффициента, распределенных по полосе частот; этап сохранения, предназначенный для сохранения данных коэффициента, генерируемых на указанном этапе фильтрования, для каждого блока строк; этап реконфигурирования коэффициента, предназначенный для реконфигурирования указанных данных коэффициента, сохраненных на указанном этапе сохранения, для каждого блока строк, в порядке, в котором должна выполняться обработка синтезирования, для генерирования данных изображения, путем синтезирования данных коэффициента множества подполос, которые были разделены на полосы частот, при этом реконфигурирование указанных данных коэффициента осуществляют в порядке от компонентов нижней полосы до компонентов верхней полосы, для каждого блока строк; этап кодирования, предназначенный для кодирования данных коэффициента, реконфигурированных на указанном этапе реконфигурирования; при этом все вышеуказанные этапы осуществляют параллельно для каждого блока строк.17. An encoding method for encoding image data, comprising a filtering step for performing filtering processing of said image data for each block of rows including image data of a plurality of rows necessary to generate coefficient data corresponding to one row of a subband of at least at least a component of the lowest band, and generating a plurality of subbands consisting of coefficient data distributed over a frequency band; a storage step for storing coefficient data generated at a specified filtering step for each block of rows; a coefficient reconfiguration step for reconfiguring the specified coefficient data stored in the indicated storage step for each row block in the order in which the synthesis processing is to be performed to generate image data by synthesizing coefficient data of a plurality of subbands that have been divided into frequency bands wherein the reconfiguration of said coefficient data is carried out in order from the components of the lower band to the components of the upper band, for each Lok rows; a coding step for coding coefficient data reconfigured at said reconfiguration step; however, all the above steps are carried out in parallel for each block of rows. 18. Устройство декодирования, предназначенное для декодирования кодированных данных, в котором были кодированы данные изображения, содержащее средство декодирования, предназначенное для декодирования указанных кодированных данных, и генерирования данных коэффициента, включенных в множество подполос; средство сохранения, предназначенное для сохранения данных коэффициента, генерируемых указанным средством декодирования, для каждого блока строк, включающего данные изображения множества строк, необходимых для генерирования данных коэффициента, соответствующих одной строке подполосы, по меньшей мере, компонента самой нижней полосы; средство реконфигурирования коэффициента, предназначенное для реконфигурирования указанных данных коэффициента, сохраненных в указанном средстве сохранения, для каждого блока строк, в порядке синтезирования данных коэффициента множества подполос, которые были разделены на полосы частот, при этом реконфигурирование указанных данных коэффициента осуществляют в порядке от компонентов нижней полосы до компонентов верхней полосы, для каждого блока строк; средство фильтра, предназначенное для обработки фильтрации для указанных данных коэффициента, реконфигурированных указанным средством реконфигурирования коэффициента, и синтезирования данных коэффициента множества подполос, распределенных по полосе частот, для генерирования указанных данных изображения; и средство управления, предназначенное для управления указанным средством декодирования, указанным средством сохранения, указанным средством реконфигурирования коэффициента и указанным средством фильтра, для параллельной работы в каждом блоке строк.18. A decoding device for decoding encoded data in which image data has been encoded, comprising decoding means for decoding said encoded data and generating coefficient data included in a plurality of subbands; storage means for storing coefficient data generated by said decoding means for each block of lines including image data of a plurality of lines necessary to generate coefficient data corresponding to one line of a subband of at least a component of the lowest band; coefficient reconfiguration means for reconfiguring the specified coefficient data stored in the specified storage means for each row block in the order of synthesizing the coefficient data of a plurality of subbands that have been divided into frequency bands, wherein the reconfiguration of the coefficient data is carried out in order from the lower band components to the components of the upper strip, for each block of rows; filter means for filtering processing for said coefficient data reconfigured by said coefficient reconfiguration means and synthesizing coefficient data of a plurality of subbands distributed over a frequency band to generate said image data; and control means for controlling said decoding means, said saving means, said coefficient reconfiguration means and said filter means for parallel operation in each block of rows. 19. Устройство декодирования по п.18, в котором указанное средство декодирования, указанное средство сохранения, указанное средство реконфигурирования коэффициента и указанное средство фильтра, каждое выполняет обработку параллельно.19. The decoding apparatus of claim 18, wherein said decoding means, said saving means, said coefficient reconfiguration means, and said filter means each performs processing in parallel. 20. Устройство декодирования по п.18, в котором указанное средство фильтра выполняет указанную обработку фильтрования, используя методику подъема.20. The decoding device according to claim 18, wherein said filter means performs said filtering processing using a lifting technique. 21. Устройство декодирования по п.18, в котором указанное средство декодирования декодирует кодированные данные, в которых строки всех подполос составляют указанный блок строк, который был кодирован и выстроен в одномерном направлении.21. The decoding apparatus according to claim 18, wherein said decoding means decodes encoded data in which lines of all subbands comprise said block of lines that has been encoded and aligned in a one-dimensional direction. 22. Способ декодирования, предназначенный для декодирования кодированных данных, в которых были кодированы данные изображения, содержащий этап декодирования, предназначенный для декодирования указанных кодированных данных и генерирования данных коэффициента, включенных в множество подполос; этап сохранения, предназначенный для сохранения данных коэффициента, генерируемых указанным средством декодирования, для каждого блока строк, включающего в себя данные изображения множества строк, необходимых для генерирования данных коэффициента, соответствующих одной строке подполосы, по меньшей мере, компонента самой нижней полосы; этап реконфигурирования коэффициента, предназначенный для реконфигурирования указанных данных коэффициента, сохраненных на указанном этапе сохранения, для каждого блока строк в порядке синтезирования данных коэффициента множества подполос, которые были разделены на полосы частот, при этом реконфигурирование указанных данных коэффициента осуществляют в порядке от компонентов нижней полосы до компонентов верхней полосы, для каждого блока строк; этап фильтрации, предназначенный для обработки фильтрования указанных данных коэффициента, реконфигурированных на указанном этапе реконфигурирования коэффициента, и синтезирования данных коэффициента множества подполос, распределенных по полосе частот, для генерирования указанных данных изображения, при этом все вышеуказанные этапы осуществляют параллельно для каждого блока строк.22. A decoding method for decoding encoded data in which image data has been encoded, comprising a decoding step for decoding said encoded data and generating coefficient data included in a plurality of subbands; a storage step for storing coefficient data generated by said decoding means for each block of strings including image data of a plurality of rows necessary to generate coefficient data corresponding to one row of a subband of at least a component of the lowest band; a coefficient reconfiguration step for reconfiguring the specified coefficient data stored at the indicated storage step for each row block in the order of synthesizing the coefficient data of a plurality of subbands that have been divided into frequency bands, wherein the reconfiguration of the coefficient data is carried out in an order from the lower band components to top bar components for each row block; a filtering step for processing filtering said coefficient data reconfigured at said coefficient reconfiguration step and synthesizing coefficient data of a plurality of subbands distributed over a frequency band to generate said image data, all of the above steps being carried out in parallel for each block of rows.
RU2007127508/09A 2005-11-18 2006-11-17 Coding device and method, decoding device and method and transmission system RU2340114C1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005-334243 2005-11-18
JP2005334243 2005-11-18

Publications (1)

Publication Number Publication Date
RU2340114C1 true RU2340114C1 (en) 2008-11-27

Family

ID=39055700

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2007127508/09A RU2340114C1 (en) 2005-11-18 2006-11-17 Coding device and method, decoding device and method and transmission system

Country Status (2)

Country Link
CN (2) CN101120584B (en)
RU (1) RU2340114C1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2514777C1 (en) * 2009-08-13 2014-05-10 Самсунг Электроникс Ко., Лтд. Method and device for image encoding and decoding using large transformation unit
RU2586011C2 (en) * 2011-08-24 2016-06-10 Сони Корпорейшн Apparatus and method for encoding and decoding method device and program
RU2595625C2 (en) * 2010-09-30 2016-08-27 Сан Пэтент Траст Image decoding method, image encoding method, image decoding device, image encoding device, programme and integrated circuit
USRE47510E1 (en) 2010-09-29 2019-07-09 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus and integrated circuit for generating a code stream with a hierarchical code structure

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI678916B (en) 2010-04-13 2019-12-01 美商Ge影像壓縮有限公司 Sample region merging
ES2904650T3 (en) 2010-04-13 2022-04-05 Ge Video Compression Llc Video encoding using multitree image subdivisions
CN106067984B (en) 2010-04-13 2020-03-03 Ge视频压缩有限责任公司 Cross-plane prediction
CN106454371B (en) 2010-04-13 2020-03-20 Ge视频压缩有限责任公司 Decoder, array reconstruction method, encoder, encoding method, and storage medium
JP5966346B2 (en) * 2011-12-21 2016-08-10 ソニー株式会社 Image processing apparatus and method
JP5966345B2 (en) * 2011-12-21 2016-08-10 ソニー株式会社 Image processing apparatus and method
KR101673021B1 (en) * 2012-01-30 2016-11-04 삼성전자 주식회사 Method and apparatus for video encoding in spatial subdivisions, method and apparatus for video decoding in spatial subdivisions
CN111726117A (en) * 2019-03-20 2020-09-29 中国石油化工股份有限公司 Digital core data parallel compression encoding method and parallel decompression decoding method
CN114143557B (en) * 2021-12-24 2023-07-07 成都索贝数码科技股份有限公司 Low-complexity coding method for wavelet transformation high-frequency coefficient of video image

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1183685C (en) * 1998-05-27 2005-01-05 微软公司 System and method for entropy ercoding quantized transform coefficients of a sigral
JP2003204439A (en) * 2002-01-08 2003-07-18 Canon Inc Image coding apparatus and method therefor
JP3700670B2 (en) * 2002-03-28 2005-09-28 ソニー株式会社 Bit plane encoding device
JP2005109776A (en) * 2003-09-30 2005-04-21 Sony Corp Encoding device and decoding device
JP4097586B2 (en) * 2003-10-03 2008-06-11 三洋電機株式会社 Data processing device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JIEBO LUO et al, A Scene Adaptive and Signal Adaptive Quantization for Subband Image and Video Compression Using Wavelets, IEEE Transactions on Circuits and Systems for Video Technology, vol.7, №2, April 1997, c.c.343-356. УЭЛСТИД С. Фракталы и вейвлеты для сжатия изображений в действии. - М.: Триумф, 2003, с.162-166, 183-185, 252-259. *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8792737B2 (en) 2009-08-13 2014-07-29 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image by using large transformation unit
US8792741B2 (en) 2009-08-13 2014-07-29 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image by using large transformation unit
US8842921B2 (en) 2009-08-13 2014-09-23 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image by using large transformation unit
US8971650B2 (en) 2009-08-13 2015-03-03 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image by using large transformation unit
US8971649B2 (en) 2009-08-13 2015-03-03 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image by using large transformation unit
US9386325B2 (en) 2009-08-13 2016-07-05 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image by using large transformation unit
RU2514777C1 (en) * 2009-08-13 2014-05-10 Самсунг Электроникс Ко., Лтд. Method and device for image encoding and decoding using large transformation unit
USRE47510E1 (en) 2010-09-29 2019-07-09 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus and integrated circuit for generating a code stream with a hierarchical code structure
USRE49991E1 (en) 2010-09-29 2024-05-28 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus and integrated circuit for generating a code stream with a hierarchical code structure
USRE48726E1 (en) 2010-09-29 2021-09-07 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus and integrated circuit for generating a code stream with a hierarchical code structure
US9749630B2 (en) 2010-09-30 2017-08-29 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus, program, and integrated circuit
RU2595625C2 (en) * 2010-09-30 2016-08-27 Сан Пэтент Траст Image decoding method, image encoding method, image decoding device, image encoding device, programme and integrated circuit
US11310500B2 (en) 2010-09-30 2022-04-19 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus, program, and integrated circuit
US11729389B2 (en) 2010-09-30 2023-08-15 Sun Patent Trust Image decoding method, image coding method, image decoding apparatus, image coding apparatus, program, and integrated circuit
RU2586011C2 (en) * 2011-08-24 2016-06-10 Сони Корпорейшн Apparatus and method for encoding and decoding method device and program

Also Published As

Publication number Publication date
CN101129063B (en) 2010-05-19
CN101120584A (en) 2008-02-06
CN101120584B (en) 2011-04-20
CN101129063A (en) 2008-02-20

Similar Documents

Publication Publication Date Title
RU2340114C1 (en) Coding device and method, decoding device and method and transmission system
RU2339997C1 (en) Coding device and method, decoding method and data transmission system
US8254707B2 (en) Encoding device, encoding method, encoding program, decoding device, decoding method, and decoding program in interlace scanning
US8665943B2 (en) Encoding device, encoding method, encoding program, decoding device, decoding method, and decoding program
US8000548B2 (en) Wavelet transformation device and method, wavelet inverse transformation device and method, program, and recording medium for performing wavelet transformation at a plurality of division levels
US8031960B2 (en) Wavelet transformation device and method, wavelet inverse transformation device and method, program, and recording medium
CN101237577B (en) Information processing apparatus and method
RU2454021C2 (en) Information processing device and method
CN102104731A (en) Camera system and image processing method
CN109076226A (en) Image processing apparatus and method
US8098947B2 (en) Method and apparatus for processing image data by rearranging wavelet transform data
CN102104783B (en) Image processing device, image processing method, and image pickup device
CN104952470A (en) Video format for digital video recorder
JP2000341689A (en) Wavelet inverse converting device and its method and wavelet decoding device and its method
US6628718B1 (en) Color solid-state image-pickup camera system