Национальный стандарт РФ ГОСТ Р ИСО/МЭК 19794-5-2013
"Информационные технологии. Биометрия. Форматы обмена биометрическими данными. Часть 5. Данные изображения лица"
(утв. приказом Федерального агентства по техническому регулированию и метрологии от 6 сентября 2013 г. N 987-ст)
Information technologies. Biometrics. Biometric data interchange formats. Part 5. Face image data
Дата введения - 1 января 2015 г.
Взамен ГОСТ Р ИСО/МЭК 19794-5-2006
Предисловие
1 Подготовлен Научно-исследовательским и испытательным центром биометрической техники Московского государственного технического университета имени Н.Э. Баумана (НИИЦ БТ МГТУ им. Н.Э. Баумана) на основе собственного аутентичного перевода на русский язык стандарта, указанного в пункте 4, при консультативной поддержке Ассоциации автоматической идентификации "ЮНИСКАН/ГС1 РУС"
2 Внесен Техническим комитетом по стандартизации ТК 355 "Технологии автоматической идентификации и сбора данных и биометрия"
3 Утвержден и введен в действие приказом Федерального агентства по техническому регулированию и метрологии от 6 сентября 2013 г. N 987-ст
4 Настоящий стандарт идентичен международному стандарту ИСО/МЭК 19794-5:2011 "Информационные технологии. Форматы обмена биометрическими данными. Часть 5. Данные изображения лица" (ISO/IEC 19794-5:2011 "Information technology - Biometric data interchange formats - Part 5: Face image data").
Наименование настоящего стандарта изменено относительно наименования указанного международного стандарта для приведения в соответствие с ГОСТ Р 1.5-2012 (пункт 3.5).
При применении настоящего стандарта рекомендуется использовать вместо ссылочных международных стандартов соответствующие им национальные стандарты, сведения о которых приведены в дополнительном приложении ДА
5 Взамен ГОСТ Р ИСО/МЭК 19794-5-2006
Введение
Изображения лица (фотографии) использовались в течение многих десятилетий для проверки личности людей. В последние годы цифровые изображения лица применяются во многих областях, в том числе при визуальной экспертизе и компьютерном автоматическом распознавании лица. Форматы фотографий были стандартизированы, например, для паспортов и водительских прав. Но существует необходимость определения стандартного формата данных цифровых изображений лица для обеспечения совместимости приложений разных изготовителей.
Настоящий стандарт определяет формат записи изображения лица в приложениях распознавания лица, требующих обмена данными. Типичными приложениями являются:
1) визуальная экспертиза изображения лица с разрешением, достаточным для определения оператором таких особенностей, которыми можно пользоваться для проверки личности (родинки, шрамы);
2) визуальная верификация личности человека путем сравнения с изображениями лица;
3) автоматическая биометрическая идентификация лица (поиск "один ко многим");
4) автоматическая биометрическая верификация лица (поиск "один к одному").
Для обеспечения работы приложений на различных устройствах, в том числе с ограниченными ресурсами для хранения данных, а также для повышения точности распознавания лица в настоящем стандарте кроме формата данных установлены требования к условиям получения изображения (освещение, положение головы, выражение лица и т.д.), фотографированию (расположение камеры, фокусировка и т.д.) и параметрам цифрового изображения (разрешение изображения, размер изображения и т.д.).
Для обозначения категорий, отвечающих требованиям разных приложений, определены следующие типы изображения лица:
Основной: фундаментальный тип изображения лица, который определяет формат записи, включающей заголовок и данные изображения лица. Все остальные типы изображения лица наследуют свойства данного типа. Для данного типа не установлены требования к условиям получения изображения, фотографированию и параметрам цифрового изображения.
Фронтальный: основной тип изображения лица, соответствующий дополнительным требованиям, обеспечивающим возможность распознавания и (или) проведения визуальной экспертизы по изображению лица во фронтальном положении. В настоящем стандарте установлены два фронтальных типа изображения лица: полный фронтальный и условный фронтальный.
Полный фронтальный: фронтальный тип изображения лица, характеризующийся достаточным разрешением для проведения визуальной экспертизы и автоматического распознавания лица. Данный тип изображения лица включает: целиком голову (как правило, с волосами), шею и плечи. Данный тип изображения лица предназначен для долговременного хранения информации об изображении лица; его используют в качестве фотографии для паспорта, водительского удостоверения и т.д.
Условный фронтальный: фронтальный тип изображения лица, характеризующийся определенными геометрическими размерами изображения и местоположением глаз, определяемым горизонтальным и вертикальным размерами изображения. Данный тип изображения лица позволяет минимизировать требования к хранению информации для задач автоматического распознавания лица, например верификации, обеспечивая независимость биометрической системы от изготовителя оборудования и возможность визуальной верификации (в отличие от визуальной экспертизы, которая требует более детализированного изображения).
Обработанный фронтальный: применение цифровой постобработки может сделать цифровое изображение более подходящим для автоматического распознавания лица. Обработанный фронтальный тип изображения лица представляет собой формат обмена для этих видов изображения лица.
Основной трехмерный: основной трехмерный тип изображения лица - это базовый класс всех трехмерных типов изображения лица. Все трехмерные типы изображения лица должны удовлетворять нормативным требованиям к этому типу изображения.
Полный фронтальный трехмерный: полный фронтальный трехмерный тип изображения объединяет полное фронтальное двухмерное изображение с дополнительной трехмерной информацией.
Условный фронтальный трехмерный: условный фронтальный трехмерный тип изображения объединяет условное фронтальное двухмерное изображение с дополнительной трехмерной информацией.
Взаимосвязь типов изображения лица с использованием понятия "наследование" приведена в таблице 1. Например, фронтальный тип изображения лица наследует все требования, предъявляемые к основному типу изображения лица, т.е. фронтальный тип изображения лица подчиняется всем нормативным требованиям, предъявляемым к основному типу изображения лица.
Требования к условиям получения изображения, фотографированию, параметрам цифровых изображений и форматам для указанных в настоящем стандарте типов изображения лица представлены на рисунке 1.
Таблица 1 - Взаимосвязь типов изображения лица
Тип изображения лица |
Наследован от типа |
Номер раздела настоящего стандарта |
|
нормативный |
справочный |
||
Основной |
- |
||
Фронтальный |
Основного |
||
Полный фронтальный |
Фронтального |
||
Условный фронтальный |
Фронтального |
||
Обработанный фронтальный |
Фронтального |
- |
Рисунок 1 - Требования к изображению лица
Примечание - Для основного типа изображения лица не установлены требования к условиям получения изображения, фотографированию и параметрам цифрового изображения.
Представлен пересмотр ИСО/МЭК 19794-5:2005. Структура формата данных несовместима с предыдущей версией.
Примечание - Настоящий стандарт взаимосвязан с международными стандартами ИСО.
1 Область применения
Настоящий стандарт устанавливает требования к:
- формату записи данных для хранения, регистрации и передачи информации об одном или более изображениях лица или к видеопотоку изображений лица;
- условиям получения изображений лица;
- фотографированию для получения изображений лица;
- характеристикам цифровых изображений лица;
- обеспечению лучшего метода организации фотографирования лица.
2 Соответствие
Соответствие требованиям настоящего стандарта обеспечивается выполнением всех обязательных требований, относящихся к:
a) структуре данных, значениям данных и отношениям между элементами данных, определенных в разделах 5 - 8 настоящего стандарта для полного фронтального типа изображения лица, в разделах 5 - 7, 9 настоящего стандарта для условного фронтального типа, в разделах 5 - 7, 10 настоящего стандарта для обработанного фронтального типа;
b) соотношению между значениями данных и входными биометрическими данными, из которых была произведена запись биометрических данных, определенных в разделах 5 - 8 настоящего стандарта для полного фронтального типа изображения лица, в разделах 5 - 7, 9 настоящего стандарта для условного фронтального типа, в разделах 5 - 7, 10 настоящего стандарта для обработанного фронтального типа.
Система, создающая записи биометрических данных, соответствует настоящему стандарту, если все производимые записи биометрических данных соответствуют настоящему стандарту согласно Заявлению о соответствии реализации данной системы. В системе должны производиться записи биометрических данных, которые удовлетворяют не обязательно всем аспектам настоящего стандарта, а только тем, которые определены в Заявлении о соответствии реализации.
Система, использующая записи биометрических данных, соответствует настоящему стандарту, если в ней могут быть считаны и использованы по назначению записи биометрических данных, соответствующие настоящему стандарту согласно Заявлению о соответствии реализации данной системы. В системе должны использоваться записи биометрических данных, которые удовлетворяют не обязательно всем аспектам настоящего стандарта, а только тем, которые определены в Заявлении о соответствии реализации.
3 Нормативные ссылки
В настоящем стандарте использованы нормативные ссылки на следующие стандарты и другие нормативные документы, которые необходимо учитывать при использовании настоящего стандарта. В случае ссылок на документы, в которых указана дата утверждения, необходимо пользоваться только указанной редакцией. В случае, когда дата утверждения не приведена, следует пользоваться последней редакцией ссылочных документов, включая любые поправки и изменения к ним:
ИСО/МЭК 10918-1 Информационные технологии. Цифровое сжатие и кодирование полутоновых изображений. Требования и рекомендации (ISO/IEC 10918-1, Information technology - Digital compression and coding of continuous-tone still images: Requirements and guidelines)
ИСО/МЭК 14496-2:2004 Информационные технологии. Кодирование аудиовизуальных объектов. Часть 2. Визуальные объекты (ISO/IEC 14496-2:2004, Information technology - Coding of audio-visual objects - Part 2: Visual)
ИСО/МЭК 15444-1 Информационные технологии. Система кодирования изображения JPEG2000. Внутренняя система кодирования (ISO/IEC 15444-1, Information technology - JPEG 2000 image coding system: Core coding system)
ИСО/МЭК 15948 Информационные технологии. Компьютерная графика и обработка изображений. Переносимая сетевая графика (Portable Network Graphics, PNG): Функциональная спецификация (ISO/IEC 15948, Information technology - Computer graphics and image processing - Portable Network Graphics (PNG): Functional specification)
ИСО/МЭК 19794-1:2011 Информационные технологии. Форматы обмена биометрическими данными. Часть 1. Структура (ISO/IEC 19794-1:2011, Information technology - Biometric data interchange formats - Part 1: Framework)
ИСО/МЭК 29794-1 Информационные технологии. Качество биометрического образца. Часть 1. Структура (ISO/IEC 29794-1, Information technology - Biometric sample quality - Part 1: Framework)
4 Термины и определения
В настоящем стандарте используются термины, определения и аббревиатуры, установленные в ИСО/МЭК 19794-1, а также следующие:
4.1 двухмерное изображение; 2D изображение (2D image): Двухмерное представление яркости и/или текстуры объекта съемки в определенных условиях освещения.
4.2 трехмерное изображение; 3D изображение (3D image): Представление поверхности в трехмерном пространстве.
4.3 трехмерная карта точек; 3D карта точек (3D point map): Множество трехмерных точек, представляющее объект съемки, в котором каждая точка записывается с помощью значений координат X, Y и Z в трехмерном пространстве.
4.4 трехмерное представление вершин; 3D представление вершин (3D vertex representation): Представление, использующее трехмерные координаты вершин и треугольники между ними для кодирования трехмерной поверхности.
4.5 антропометрическая точка (anthropometric landmark): Контрольная точка на лице, используемая для распознавания и классификации людей.
4.6 код антропометрической точки (anthropometric landmark code): Код, состоящий из двух частей, который уникальным образом идентифицирует антропометрическую точку.
4.7 прямоугольная система координат (Cartesian coordinate system): Трехмерная прямоугольная система координат.
4.8 подбородок (chin): Центральная выступающая часть нижней челюсти.
4.9 цветное изображение (color image): Полутоновое изображение, имеющее более чем один канал, каждый из которых кодируется одним или несколькими битами.
4.10 цветовое пространство (color space): Способы представления цветов пикселей в изображении. В настоящем стандарте используются способы представления RGB, YUV и градации серого.
4.11 макушка (crown): Верхняя точка головы, если она видна и не закрыта волосами или головным убором, или предполагаемая верхняя точка головы (черепа) в случае, если человек не лысый или находится в головном уборе.
4.12 цилиндрическая система координат (cylindrical coordinate system): Трехмерная система полярных координат, описывающая положение точки в пространстве с помощью трех координат: радиуса, азимута и высоты.
4.13 точки на дюйм; dpi (dots per inch; dpi): Единица измерения пространственного разрешения сканера или принтера.
4.14 изображение лица (facial image): Электронное представление изображения лица человека.
4.15 тип изображения лица (face image type): Категория изображений лица, которые удовлетворяют определенным требованиям.
4.16 контрольная точка (feature point): Опорная точка на изображении лица, используемая алгоритмами распознавания лица.
Пример - Контрольные точки центров глаз.
4.17 бочкообразная дисторсия (fish eye): Аберрация оптических систем, при которой степень увеличения центральной части изображения больше, чем периферийной.
4.18 изображение в градациях серого (grayscale image): Полутоновое изображение, которое имеет один канал яркости. Если канал кодируется восемью битами, такое изображение также называется монохромным или черно-белым.
4.19 визуальная экспертиза (human examination): Процесс тщательного визуального сравнения изображения лица с лицом человека или с другим изображением лица с целью установления личности человека по особенностям лица.
4.20 визуальная верификация (human verification): Проверка подлинности изображения лица путем сравнения с лицом человека или с другим изображением лица; сопоставление 1:1 ("один к одному").
4.21 формат JPEG (JPEG): Стандарт сжатия цифрового изображения, определенный в ИСО/МЭК 10918-1.
Примечание - Базовыми стандартами, устанавливающими требования к формату JPEG, являются ИСО/МЭК 10918-1 и документ МСЭ-Т*(1) Рекомендации Т.81 (ITU-T Rec. Т.81).
4.22 формат JPEG2000 (JPEG2000): Стандарт сжатия цифрового изображения, определенный в ИСО/МЭК 15444-1.
Примечание - Базовыми стандартами, устанавливающими требования к JPEG2000, являются ИСО/МЭК 15444-1 и документ МСЭ-Т Рекомендации Т.800.
4.23 формат PNG (PNG format): Стандарт сжатия изображения без потерь, спецификация которого установлена в ИСО/МЭК 15948.
4.24 портрет (portrait): Фотография человека, которая включает целиком голову (как правило, с волосами), шею и верхнюю часть плеч.
4.25 карта глубины (range image): Числовая матрица, кодирующая точки поверхности в трехмерном пространстве, в которой координаты ячейки кодируют положение точки (первые две координаты), а значение в этой ячейке кодирует третью координату.
4.26 эффект красных глаз (red-eye): Красное свечение в глазу человека, вызванное светом от вспышки, отраженным от кровеносных сосудов сетчатки.
4.27 текстура (texture): Двухмерное представление яркости и/или цвета объекта съемки в определенных условиях освещения.
4.28 матрица текстурной проекции (texture projection matrix): Матрица размером 3x4 для преобразования координат трехмерной поверхности из прямоугольной системы координат в координаты двухмерного текстурного изображения. Преобразование позволяет использовать координаты точки в трехмерном пространстве так же, как координаты точки в двухмерном пространстве.
Примечание - Более подробная информация приведена в [2].
5 Формат записи изображения лица
5.1 Общие положения
Формат записи изображения лица, определенный в настоящем стандарте, предназначен для хранения представлений лица в записи биометрических данных. Каждая запись должна относиться к одному и тому же субъекту, содержать не менее одного изображения лица и может дополнительно включать геометрические представления лица (карты глубины, трехмерные карты точек, данные вершин). В зависимости от типа изображения дополнительно к двухмерному представлению лица может быть включено трехмерное представление. Структура записи представлена на рисунках 2 и 3.
Использование данного формата требует соответствия перечисленным выше стандартам. В частности, данные двухмерного изображения лица должны быть закодированы в форматах JPEG, JPEG2000 или PNG.
При описании элементов формата записи термин "поле" обозначает единичный элемент, например "Тип изображения лица" или "Тип данных изображения", термин "блок" - группу полей, например блок "Информация о лице" или блок "Информация об изображении", и термин "запись" - данные, состоящие из общего заголовка и не менее одного представления.
Рисунок 2 - Формат записи изображения лица
Под каждым полем указано значение размера поля в байтах. Белые прямоугольники обозначают обязательные поля или блоки, светло-серые прямоугольники - обязательные поля с допускаемыми неопределенными значениями, темно-серые прямоугольники - необязательные поля или блоки
Рисунок 3 - Блок "Информация о трехмерном изображении" и три возможных блока "Данные трехмерного изображения", определенных в настоящем стандарте
Под каждым полем указано значение размера поля в байтах. Белые прямоугольники обозначают обязательные поля или блоки, светло-серые прямоугольники - обязательные поля с допускаемыми неопределенными значениями, темно-серые прямоугольники - необязательные поля или блоки
Все хранимые данные должны быть представлены в двоичном формате, за исключением полей "Идентификатор формата" и "Номер" версии стандарта", являющихся нуль-терминированными строками с символами ASCII.
В формате не используются разделительные записи или отметки полей. Разграничение полей осуществляется только путем подсчета байтов.
Структура записи изображения лица организована следующим образом:
- блок "Общий заголовок" фиксированной длины (17 байтов), содержащий информацию о записи, включая число представлений изображений лица и длину всей записи в байтах;
- блок "Представление" для каждого представления лица, состоящий из блоков "Заголовок представления" и "Данные представления";
- блок "Заголовок представления" состоит из:
- общих элементов фиксированной длины (19 байтов), определенных в ИСО/МЭК 19794-1:2011;
- нескольких (или ни одного) блоков "Качество" фиксированной длины (5 байтов), содержащих информацию о качестве представления;
- блока "Информация о лице" фиксированной длины (17 байтов), содержащего информацию о характеристиках субъекта, например о его поле;
- нескольких (или ни одного) блоков "Контрольная точка" фиксированной длины (8 байтов), содержащих информацию о контрольных точках на изображении лица;
- блока "Информации об изображении" фиксированной длины (11 байтов), содержащего информацию о параметрах цифрового изображения, например о типе изображения лица, горизонтальном и вертикальном размерах изображения.
- блок "Данные представления" состоят из:
- блока "Данные изображения", включающего данные, которые закодированы в формате JPEG, JPEG2000 или PNG;
- блока "Информация о трехмерном изображении" (95 байтов) для типов изображения лица, содержащих информацию о трехмерном изображении лица (с описанием свойств этих данных);
- блока "Данные трехмерного изображения" для типов изображения лица, содержащих информацию о трехмерном изображении лица (с описанием трехмерной геометрии лица).
Одна запись может содержать несколько двухмерных/трехмерных представлений одного и того же биометрического объекта. Это обеспечивается включением нескольких блоков "Представление" после общего заголовка. Блоки "Представление", содержащие данные двухмерного изображения, могут храниться совместно с блоками "Представление", содержащими данные трехмерного изображения. Структура такой записи представлена на рисунке 4.
Рисунок 4 - Запись с несколькими двухмерными/трехмерными представлениями
5.2 Представление данных
5.2.1 Последовательность байтов
Все многобайтовые значения должны быть представлены в формате обратного порядка следования байтов (Big-Endian): старшие байты любого многобайтового значения записывают в память раньше младших байтов.
Пример - Число 1025 (два в 10-й степени плюс один) будет храниться как первый байт 00000100 и второй байт 00000001.
5.2.2 Численные значения
Все численные значения должны быть целочисленными и беззнаковыми величинами фиксированной длины, если не оговорено иное требование.
5.2.3 Преобразование к целочисленному типу
Преобразование численного значения в целочисленный тип должно производиться округлением до меньшего значения, если дробная часть меньше 0,5, и округлением до большего значения, если дробная часть равна или больше 0,5.
5.2.4 Неуказанное значение поля
Следующие обязательные поля, представленные на рисунках 2 и 3, могут содержать неопределенные значения: "Идентификатор технологии биометрического 2D сканера лица", "Идентификатор изготовителя биометрического 2D сканера лица", "Идентификатор типа биометрического 2D сканера лица", "Пол", "Цвет глаз", "Цвет волос", "Рост человека", "Маска свойств", "Выражение лица", "Угловые координаты", "Погрешность угловых координат", "Цветовое пространство изображения", "Идентификатор технологии биометрического 3D сканера лица", "Идентификатор изготовителя биометрического 3D сканера лица", "Идентификатор типа биометрического 3D сканера лица", "Синхронность получения двухмерного и трехмерного изображений", "Синхронность получения текстурной карты и трехмерного изображения", "Продолжительность получения трехмерного изображения", "Продолжительность получения текстурной карты", "Тип текстурной карты", "Спектр текстурной карты".
5.2.5 Неизвестное значение поля
Для обозначения того, что информация, кодируемая в данном поле, не может быть определена по результатам исследования изображения лица, полю должно быть присвоено значение "неизвестный".
5.3 Блок "Общий заголовок"
5.3.1 Структура
Блок "Общий заголовок" состоит из шести*(2) полей: "Идентификатор формата", "Номер версии стандарта", "Длина записи", "Число представлений", "Сертификационный флаг"*(3) и "Временная семантика", согласно таблице 2.
Таблица 2 - Блок "Общий заголовок"
Поле |
Длина, байт |
Возможные значения |
Примечания |
Идентификатор формата |
4 |
0x46414300 ('F' 'А' 'С' 0x0) |
Задает данные представления |
Номер версии стандарта |
4 |
0x30333000 ('0' '3' '0' 0x0) |
"030" в формате ASCII |
Длина записи |
4 |
68 < Длина записи |
Включает заголовок записи и данные записи. Минимальное значение 68 байт включает небольшое изображение в формате JPEG |
Число представлений |
2 |
1 |
См. п. 5.3.5 |
Сертификационный флаг |
1 |
0x00 0x01 |
См. п. 5.3.6 |
Временная семантика |
2 |
1 |
5.3.2 Поле "Идентификатор формата"
Поле "Идентификатор формата" (4 байта) является нуль-терминированной строкой с тремя символами ASCII "FAC".
5.3.3 Поле "Номер версии стандарта"
Поле "Номер версии стандарта" (4 байта) является нуль-терминированной строкой с тремя символами ASCII.
Первый и второй символы обозначают номер версии стандарта, третий символ - номер поправки или изменения данной редакции.
Номер версии стандарта ИСО/МЭК 19794-5:2011*(4) должен быть 0x30333000; "030" - номер версии - 3, номер поправки/изменения - 0".
Примечание - Записи обмена данными, соответствующие Дополнению N 2 ИСО/МЭК 19794-5:2005, в поле "Номер версии стандарта" должны содержать значение "020".
5.3.4 Поле "Длина записи"
Поле "Длина записи" (4 байта) должно содержать значение полной длины записи в байтах. Полную длину записи определяют как сумму длин записи общего заголовка и одной и/или нескольких записей представлений.
5.3.5 Поле "Число представлений"
В поле "Число представлений" (2 байта) должно быть указано число представлений лица, включенных в запись. Требованием является наличие минимум одного представления.
5.3.6 Поле "Сертификационный флаг"
Значение должно быть 0x00.
Примечание - Для настоящего стандарта схемы сертификации не представлены.
5.3.7 Поле "Временная семантика"
Данное поле (2 байта) должно быть заполнено в соответствии с таблицей 3. Это позволяет хранить несколько представлений, полученных: во время одной сессии (например, при фотографировании); во время нескольких сессий (например, при транзакциях банкомата); и во время временной последовательности (например, видеопоследовательность представлений с равным временным интервалом между ними).
Таблица 3 - Коды поля "Временная семантика"
Описание |
Значение |
Одно представление |
0x0000 |
Два или более представлений. Временная взаимосвязь между ними не определена |
0x0001 |
Два или более представлений. Представления получены со случайным временным интервалом между ними во время одной сессии (например, изображения, полученные фотографом при фотографировании) |
0x0002 |
Два или более представлений. Представления получены со случайным временным интервалом между ними во время нескольких сессий (например, паспортные фотографии в течение жизни человека). Последнее представление должно сохраняться первым, если не известно качество представлений или не доступен другой подходящий механизм упорядочивания представлений |
0x0003 |
Число миллисекунд между последовательными представлениями (например, кадрами видеопоследовательности) |
0x0004 |
Представления относятся к временной последовательности, но получены с равным временным интервалом между ними, превышающим 0xFFFE мс |
0xFFFF |
Примечание 1 - Минимальный интервал - 4 х 0,001 с = 0,004 с.
Примечание 2 - Максимальный интервал - 65 534 х 0,001 с = 65,534 с.
Примечание 3 - При использовании видеокодеков с более компактным кодированием видеопоследовательности, например ITU-T H264, добавляются дополнительные служебные данные, которые не поддерживаются настоящим стандартом.
5.4 Блок "Заголовок представления"
5.4.1 Структура
Блок "Заголовок представления" предназначен для описания отдельных свойств индивида, различаемых на изображении. Заголовок указывается для каждого представления, включенного в запись. Структура данного блока представлена на рисунке 2.
Блок "Заголовок представления" состоит из следующих полей: "Длина представления", "Дата и время регистрации", "Идентификатор технологии биометрического 2D сканера лица", "Идентификатор изготовителя биометрического 2D сканера лица", "Идентификатор типа биометрического 2D сканера лица"*(5). Далее следуют поля: "Число блоков "Качество" и соответствующие блоки "Качество". Блок "Заголовок представления" завершается блоком "Информация о лице", необязательным блоком "Контрольные точки" и блоком "Информация об изображении".
5.4.2 Поле "Длина представления"
Поле "Длина представления" (4 байта) должно содержать значение длины представления в байтах, включая поле "Заголовок представления".
Минимальное значение поля "Длина представления" - 51 байт, что включает: 1) минимальные 47 байтов поля "Заголовок представления"; 2) размер поля "Данные представления" - минимальные 4 байта поля "Размер данных изображения" при 0 байтов изображения.
5.4.3 Поле "Дата и время регистрации"
Поле "Дата и время регистрации" должно содержать дату и время регистрации данного представления по Гринвичу (универсальное глобальное время). Поле "Дата и время регистрации" (9 байт) содержит значения, которые должны быть закодированы в соответствии с формой, представленной в ИСО/МЭК 19794-1.
5.4.4 Поле "Идентификатор технологии биометрического 2D сканера лица"
Поле "Идентификатор технологии биометрического 2D сканера лица" (1 байт) должно содержать класс технологии устройства, используемого при регистрации биометрического образца. Если технология неизвестна или не определена, то должно быть установлено значение 0x00. Возможные значения представлены в таблице 4. Большая часть различных типов биометрических сканеров работает в видимом или ближнем инфракрасном диапазоне спектра. Для обозначения, что биометрический 2D сканер лица работает в ближнем инфракрасном диапазоне спектра, старший бит в поле "Идентификатор технологии биометрического 2D сканера лица" должен быть установлен в 1. Таким образом, если представление зарегистрировано с помощью цифровой видеокамеры, работающей в видимом диапазоне спектра, то значение поля должно быть 0x06, а для работающей в ближнем инфракрасном диапазоне спектра значение поля должно быть 0x86.
Таблица 4 - Коды поля "Идентификатор технологии биометрического 2D сканера лица"
Описание |
Значение |
Неизвестно или не определено |
0x00 |
Фотографии, полученные с использованием неизвестного источника |
0x01 |
Фотографии, полученные с использованием цифрового фотоаппарата |
0x02 |
Фотографии, полученные с использованием сканера |
0x03 |
Видеокадр(ы), полученный(е) с использованием неизвестного источника |
0x04 |
Видеокадр(ы), полученный(е) с использованием аналоговой видеокамеры |
0x05 |
Видеокадр(ы), полученный(е) с использованием цифровой видеокамеры |
0x06 |
Зарезервировано ПК37 для будущего использования |
0x07 - 0x7F |
Определяется изготовителем |
0x80 - 0xFF |
5.4.5 Поле "Идентификатор изготовителя биометрического 2D сканера лица"
Поле "Идентификатор изготовителя биометрического 2D сканера лица" (2 байта) должно содержать информацию о биометрической организации, являющейся владельцем продукта. Идентификатор изготовителя алгоритма биометрического 2D сканера лица кодируется в 2 байтах идентификатора биометрической организации ЕСФОБД (зарегистрированной МАБП*(6) или другим разрешенным регистрационным органом). Если данное поле содержит нули, то изготовитель биометрического 2D сканера лица неизвестен.
5.4.6 Поле "Идентификатор типа биометрического 2D сканера лица"
Поле "Идентификатор типа биометрического 2D сканера лица" (2 байта) должно содержать информацию о типе продукта, производящего запись биометрических данных. Тип продукта определяется владельцем зарегистрированного продукта или другим разрешенным регистрационным органом. Если данное поле содержит нули, то тип биометрического 2D сканера лица неизвестен. Если идентификатор изготовителя биометрического 2D сканера лица равен 0x0000, то идентификатор типа биометрического 2D сканера лица также должен быть равен 0x0000.
5.4.7 Поле "Число блоков "Качество"
Поле "Число блоков "Качество" содержит информацию о числе 5-байтовых блоков "Качество". Если оценка качества не проводилась, то значение в данном поле будет 0; соответственно блоки "Качество" представлены не будут.
Примечание - В соответствии с ИСО/МЭК 19794-1:2011 (12.3.1) несколько блоков "Качество" является записью качества.
5.4.8 Поле "Показатель качества"
Поле "Показатель качества" (1 байт) в соответствии с ИСО/МЭК 29794-1 определяет количественное выражение расчетных эксплуатационных характеристик биометрического образца. Допустимыми значениями для показателя качества являются целые числа в диапазоне от 0 (минимальное значение показателя качества) до 100 (максимальное значение показателя качества). Если при определении значения показателя качества произошла ошибка, то должно быть установлено значение 255. Значение показателя качества гармонизировано с ИСО/МЭК 19784-1, где значению 255 соответствует значение минус 1.
Примечание - В стандартах БиоАПИ в отличие от комплекса стандартов ИСО/МЭК 19794 используются целые числа со знаком.
5.4.9 Поле "Идентификатор разработчика алгоритма оценки качества"
Чтобы отличать показатели качества, рассчитанные с помощью разных алгоритмов, в данном поле (2 байта) должен быть указан идентификатор разработчика алгоритма оценки качества. Данный идентификатор регистрируется МАБП или другим разрешенным регистрационным органом.
5.4.10 Поле "Идентификатор алгоритма оценки качества"
Поле "Идентификатор алгоритма оценки качества" (2 байта) определяет целочисленный код продукта, определенный разработчиком алгоритма оценки качества. Данное поле отображает, какой из алгоритмов (включая номер версии алгоритма) используется при расчете показателя качества. Значения в данном поле должны быть в диапазоне от 1 до 65 535.
Примечание - В одном представлении не должно указываться несколько показателей качества, рассчитанных с использованием одного алгоритма (при одинаковых идентификаторах разработчика и алгоритма).
В таблице 5 представлены блоки "Качество" в целом. Все значения являются целыми числами без знака фиксированной длины, представленными в формате обратного порядка следования байтов.
Таблица 5 - Структура блоков "Качество"
Поле |
Длина, байт |
Допустимые значения |
Примечания |
|
Число блоков "Качество" |
1 |
[0,255] |
В данное поле записывается число 5-байтовых блоков "Качество". Если оценка качества не проводилась, то значение в данном поле будет 0; соответственно блоки "Качество" представлены не будут |
|
Качество |
Показатель качества |
1 |
[0,100] 255 |
0: самое низкое 100: наивысшее 255: неудачная попытка расчета показателя качества |
Идентификатор разработчика алгоритма оценки качества |
2 |
[1,65535] |
Идентификатор разработчика алгоритма оценки качества должен быть зарегистрирован МАБП или другим разрешенным регистрационным органом, например биометрической организацией ЕСФОБД. Процедуры регистрации идентификатора разработчика ЕСФОБД представлены в ИСО/МЭК 19785-2 |
|
Идентификатор алгоритма оценки качества |
2 |
[1,65535] |
Идентификатор алгоритма качества может быть зарегистрирован МАБП или другим разрешенным регистрационным органом как код продукта ЕСФОБД. Процедуры регистрации этого продукта представлены в ИСО/МЭК 19785-2 |
5.5 Блок "Информация о лице"
5.5.1 Структура
Блок "Информация о лице" состоит из следующих полей: "Число контрольных точек", "Пол", "Цвет глаз", "Цвет волос", "Рост человека", "Маска свойств", "Выражение лица", "Угловые координаты", "Погрешность угловых координат".
5.5.2 Поле "Число контрольных точек"
Поле "Число контрольных точек" (2 байта) должно содержать информацию о числе блоков "Контрольная точка", которые следуют за блоком "Информация о лице". Требования к блоку "Контрольная точка" приведены в 5.6.
5.5.3 Поле "Пол"
Поле "Пол" (1 байт) должно содержать информацию о половой принадлежности человека в соответствии с таблицей 6.
Таблица 6 - Коды поля "Пол"
Описание |
Значение |
Неуказанный |
0x00 |
Мужской |
0x01 |
Женский |
0x02 |
Неизвестный |
0xFF |
5.5.4 Поле "Цвет глаз"
Поле "Цвет глаз" (1 байт) должно содержать информацию о цвете радужных оболочек глаз в соответствии с таблицей 7. Если глаза человека имеют разный цвет, то должен кодироваться цвет правого глаза.
Таблица 7 - Коды поля "Цвет глаз"
Описание |
Значение |
Неуказанный |
0x00 |
Черный |
0x01 |
Голубой |
0x02 |
Карий |
0x03 |
Серый |
0x04 |
Зеленый |
0x05 |
Гетерохромный |
0x06 |
Розовый*(7) |
0x07 |
Зарезервировано ПК37 для будущего использования |
0x08-0xFE |
Другой или неизвестный (например, не может быть определен при черно-белом изображении) |
0xFF |
5.5.5 Поле "Цвет волос"
Поле "Цвет волос" (1 байт) должно содержать информацию о цвете волос в соответствии с таблицей 8.
Таблица 8 - Коды поля "Цвет волос"
Описание |
Значение |
Неуказанный |
0x00 |
Волосы отсутствуют |
0x01 |
Черный |
0x02 |
Светлый |
0x03 |
Коричневый |
0x04 |
Серый |
0x05 |
Белый |
0x06 |
Рыжий |
0x07 |
Зарезервировано ПК37 для будущего использования |
0x08-0xFE |
Другой или неизвестный |
0xFF |
5.5.6 Поле "Рост человека"
Поле "Рост человека" (1 байт) должно содержать информацию о росте человека в соответствии с таблицей 9.
Таблица 9 - Коды поля "Рост человека"
Описание |
Значение |
Неуказанный |
0x00 |
Рост человека в см |
0x01-0xFF |
5.5.7 Поле "Маска свойств"
Поле "Маска свойств" (3 байта) - трехбайтовое битовое поле, в котором каждый бит, расположенный в соответствии с таблицей 10, должен иметь значение, равное 1, если соответствующее свойство присутствует, и 0, если свойство отсутствует. Нумерация битов поля начинается с нуля, соответствующего младшему биту. Значение младшего бита, равное нулю, означает, что свойства не определены. Значение младшего бита, равное единице, означает, что все перечисленные свойства были проверены. Нулевое значение любого бита свойств указывает на отсутствие соответствующего свойства.
Все зарезервированные биты должны иметь значение, равное нулю.
Таблица 10 - Структура поля "Маска свойств"
Описание |
Порядковый номер бита |
Свойства определены |
0 |
Очки |
1 |
Усы |
2 |
Борода |
3 |
Видны зубы |
4 |
Зрачок или радужка не видна (один или оба глаза закрыты) |
5 |
Рот открыт |
6 |
Повязка на левом глазу |
7 |
Повязка на правом глазу |
8 |
Темные очки (медицинские) |
9 |
Присутствует головной убор |
10 |
Медицинские условия, искажающие признаки (что может влиять на обнаружение особой точки) |
11 |
Зарезервировано ПК37 для будущего использования |
12 - 23 |
Свойство "зрачок или радужка не видна" при значении, равном 1, указывает на несоответствие фронтальному, полному фронтальному и условному фронтальному типам изображения лица.
5.5.8 Поле "Выражение лица"
Поле "Выражение лица" (2 байта) - двухбайтовое битовое поле, в котором каждый бит, расположенный в соответствии с таблицей 11, должен иметь значение, равное единице, если соответствующее выражение лица присутствует, и нулю, если выражение лица отсутствует. Нумерация битов поля начинается с нуля, соответствующего младшему биту. Значение младшего бита, равное нулю, означает, что свойства не определены (и все остальные биты должны быть иметь значение нуль). Значение младшего бита, равное единице, означает, что все перечисленные свойства были проверены. Нулевое значение любого бита свойств указывает на отсутствие соответствующего выражения лица.
Все зарезервированные биты должны иметь значение, равное нулю.
Таблица 11 - Структура поля "Выражение лица"
Описание |
Порядковый номер бита |
Выражения лица определены |
0 |
Нейтральное (без улыбки), оба глаза открыты, рот закрыт |
1 |
Улыбка |
2 |
Поднятые брови |
3 |
Глаза смотрят не в направлении камеры |
4 |
Косоглазие |
5 |
Хмурое |
6 |
Зарезервировано ПК37 для будущего использования |
7 - 11 |
Зарезервировано для изготовителя |
12 - 15 |
5.5.9 Поле "Угловые координаты"
Поле "Угловые координаты" (3 байта) должно содержать информацию об оценке или результате измерения положения головы на изображении. Каждый байт поля соответствует угловой координате поворота , наклона
и отклонения
в указанном порядке. Угловые координаты определяются углами Тайт-Брайна*(8):
- угол поворота вращение вокруг вертикальной оси у;
- угол наклона - вращение вокруг горизонтальной оси х, направленной слева направо;
- угол отклонения - вращение вокруг горизонтальной оси z, направленной вперед.
Углы определены относительно фронтального положения головы, для которого указанные угловые координаты равны (0,0, 0) в соответствии с рисунком 5. Фронтальное положение определяется следующим образом: Франкфуртская горизонталь (см. приложение Е) в качестве плоскости xz; вертикально симметричная плоскость как плоскость yz; ось z направлена в сторону взгляда лица. Пример приведен на рисунке 6.
Рисунок 5 - Определение угловых координат относительно фронтального положения головы
Конечное положение головы зависит от последовательности вращений вокруг координатных осей, поэтому кодировка углового положения должна проводиться в определенном порядке относительно фронтального положения. Порядок вращений должен быть следующим: сначала отклонение (вокруг горизонтальной оси z), после этого наклон (вокруг горизонтальной оси х), затем поворот (вокруг вертикальной оси у). Таким образом, преобразование отклонения всегда будет проводиться в плоскости ху.
При проведении преобразования от наблюдаемого положения к фронтальному порядок должен быть следующим: поворот, наклон и затем отклонение. Кодируемые угловые координаты соответствуют выполнению преобразования от фронтального положения к наблюдаемому.
Рисунок 6 - Примеры угловых положений головы и их кодирование.
Угловые положения головы Y, Р, R и их обозначения от а до g следующие: (0°; 0°; 0°), (+45°; 0°; 0°), (-45°; 0°; 0°), (0°; -45°; 0°), (0°; +45°; 0°), (0°; 0°; -45°) и (0°; 0°; +45°) соответственно. Закодированные значения угловых координат ,
,
в соответствии с 5.5.9.1 - 5.5.9.3 следующие: (1; 1; 1), (23; 1; 1), (158; 1; 1), (1; 158; 1), (1;23; 1), (1; 1; 158) и (1; 1; 23) соответственно.
5.5.9.1 Угловая координата - поворот
Угол поворота Y должен быть выражен в градусах и соответствовать вращению вокруг оси у (вертикальная ось), как показано на рисунке 5. Фронтальное положение головы должно соответствовать углу поворота 0°. Угол поворота должен иметь положительное значение, если лицо повернуто влево (вращение вокруг оси у против часовой стрелки).
Закодированное значение угла поворота Y записывают в одном байте и определяют значение угла в градусах, кратное двум, в диапазоне от минус 180° до плюс 180°:
- если 180° Y
0°, то
= Y/2 + 1; остаток от деления отбрасывают;
- если -180°Y < 0°, то
= 181 + Y/2; остаток от деления отбрасывают.
Максимальное значение должно быть равно 180°. Если угол поворота не определен, то значение
должно быть равно нулю.
5.5.9.2 Угловая координата - наклон
Угол наклона Р должен быть выражен в градусах и соответствовать вращению вокруг оси х (горизонтальная ось), как показано на рисунке 5. Фронтальное положение головы должно соответствовать углу наклона 0°. Угол наклона должен иметь положительное значение, если лицо наклонено вперед (вращение вокруг оси х против часовой стрелки).
Закодированное значение угла наклона Р записывают в одном байте и определяют значение угла в градусах, кратное двум, в диапазоне от минус 180° до плюс 180°:
- если 180°Р
0°,то
= Р/2 + 1; остаток от деления отбрасывают;
- если -180°Р<0°,то
= 181 + Р/2; остаток от деления отбрасывают.
Максимальное значение должно быть равно 180°. Если угол наклона не определен, то значение
должно быть равно нулю.
Необходимо учесть, что нулевое значение наклона не является точно определяемым значением.
5.5.9.3 Угловая координата - отклонение
Угол отклонения R должен быть выражен в градусах и соответствовать вращению вокруг оси z (горизонтальная ось, направленная вперед), как показано на рисунке 5. Фронтальное положение головы должно соответствовать углу отклонения 0°. Угол отклонения должен иметь положительное значение, если лицо наклонено к правому плечу (вращение вокруг оси z против часовой стрелки).
Закодированное значение угла отклонения R записывают в одном байте и определяют значение угла в градусах, кратное двум, в диапазоне от минус 180° до плюс 180°:
- если 180° R
0°, то
= R/2 + 1; остаток от деления отбрасывают;
- если -180° R < 0°, то
= 181 + R/2; остаток от деления отбрасывают.
Максимальное значение должно быть равно 180°. Если угол отклонения не определен, то значение
должно быть равно нулю.
5.5.10 Поле "Погрешность угловых координат"
Поле "Погрешность угловых координат" (3 байта) должно содержать информацию об ожидаемом значении погрешности угловых координат поворота , наклона
и отклонения
. Каждый байт поля содержит данные о погрешности координат поворота, наклона и отклонения в указанном порядке. Допускается указывать значение экспериментальной погрешности, установленное изготовителем.
Для кодирования погрешности угловых координат выделяют три байта ,
,
. Каждый байт
(k = Y, P, R) поля характеризует погрешность по одной из координат с шагом в 1°. Он вычисляется как
= (погрешность +1) и может иметь значения в диапазоне от 1° до 181° включительно. Чем больше погрешность, тем выше должно быть значение погрешности
. Если погрешность не установлена, то значения
,
и
должны быть равны нулю.
5.6 Блок "Контрольная точка"
5.6.1 Структура
Необязательный для заполнения блок "Контрольная точка" (8 байтов) определяет тип, код и положение контрольной точки на изображении лица. Число блоков "Контрольная точка" определяется в поле "Число контрольных точек" блока "Информация о лице". Структура данного блока представлена в таблице 12.
Контрольные точки могут указываться как контрольные точки MPEG-4 в соответствии с ИСО/МЭК 14496-2:2004 (приложение С) или как антропометрические точки с двухмерными или трехмерными координатами. Определение антропометрических точек и их взаимосвязь с набором контрольных точек MPEG-4 приводятся в 5.6.6.
Горизонтальное и вертикальное положение контрольных точек указываются в координатах текстурного изображения или в прямоугольной системе координат (см. 5.10.2.2).
Таблица 12 - Блок "Контрольная точка"
Поле |
Размер, байт |
Значение |
Примечание |
Тип контрольной точки |
1 |
См. 5.6.2 |
Определяет тип контрольной точки |
Код контрольной точки |
1 |
См. 5.6.3 |
Определяет контрольную точку, например левый глаз |
Координата X, координата Y |
2 |
См. 5.6.2, таблицу 13 |
Определяет координату контрольной точки. Для контрольных точек типов 0x01 и 0x02 эта координата обозначает соответствующий номер пикселя с отсчетом от верхнего левого пикселя изображения. Для контрольных точек типа 0x03 значение кодирует координату Z в трехмерной системе координат |
Координата Z |
2 |
См. п. 5.6.2, таблицу 13 |
Определяет координату контрольной точки. Для контрольных точек типов 0x01 и 0x02 это поле игнорируется. Для контрольных точек типа 0x03 значение кодирует координату Z в трехмерной системе координат |
5.6.2 Поле "Тип контрольной точки"
Поле "Тип контрольной точки" (1 байт) определяет тип контрольной точки, записанной в блоке "Контрольная точка" (таблица 13). Это поле должно иметь значение 0x01 для обозначения двухмерной контрольной точки MPEG-4 в соответствии с ИСО/МЭК 14496-2:2004 (приложение С). Поле должно иметь значение 0x02 для обозначения двухмерной антропометрической контрольной точки. Поле должно иметь значение 0x03 для обозначения трехмерной антропометрической контрольной точки. Все другие значения поля зарезервированы ПК37 для будущего использования.
Таблица 13 - Коды поля "Тип контрольной точки"
Описание |
Значение |
Примечание |
Контрольная точка MPEG-4 |
0x01 |
Горизонтальное и вертикальное положения контрольной точки измеряются в пикселях со значениями, варьирующими от 0 до Ширины-1 и Высоты-1 соответственно. Поле "Координата Z" не указывается |
Двухмерная антропометрическая точка |
0x02 |
Координаты измеряются в пикселях со значениями, варьирующими от 0 до Ширины-1 и Высоты-1 соответственно. Поле "Координата Z" не указывается |
Трехмерная антропометрическая точка |
0x03 |
Координаты X, Y и Z являются двухбайтными значениями с фиксированной точностью 0,02 мм в диапазоне от минус 655,34 до плюс 655,34 мм. Контрольная точка является трехмерной точкой в прямоугольной системе координат.
Пример: Значение "10001" соответствует "-655,34 мм + 10001 х 0,02 мм = -455,32 мм" |
Зарезервировано ПК37 для будущего использования |
0x04-0xFF |
- |
5.6.3 Поле "Код контрольной точки"
Поле "Код контрольной точки" (1 байт) определяет контрольную точку, записанную в блоке "Контрольная точка".
Для контрольной точки типа 0x01 в этом блоке должны быть сохранены коды контрольных точек MPEG-4, указанные в 5.6.4, в соответствии с ИСО/МЭК 14496-2:2004 (приложение С), или дополнительные контрольные точки глаз и ноздрей из 5.6.5.
Для контрольных точек типов 0x02 или 0x03 в этом блоке записываются коды контрольных точек, определенных в 5.6.6.
5.6.4 Контрольные точки MPEG-4
Коды, присвоенные контрольным точкам в соответствии ИСО/МЭК 14496-2:2004 (приложение С), показаны на рисунке 7. Код каждой контрольной точки задается условным обозначениям в формате А.В. Значение А является основным, значение В - дополнительным. Кодировка контрольной точки производится записью значения (1 байт), полученного по формуле A х 16 + В.
5.6.5 Контрольные точки глаз и ноздрей
Контрольные точки центров глаз 12.1 (левого) и 12.2 (правого) определяются как середины отрезков, соединяющих углы глаз (3.7, 3.11) и (3.8, 3.12) соответственно. Контрольная точка центра левой ноздри 12.3 имеет такую же горизонтальную координату, как середина отрезка, соединяющего контрольные точки носа (9.1, 9.15), и такую же вертикальную координату, как середина отрезка, соединяющего контрольные точки носа (9.3,9.15). Контрольная точка центра левой ноздри 12.4 имеет такую же горизонтальную координату, как середина отрезка, соединяющего контрольные точки носа (9.2, 9.15), и такую же вертикальную координату, как середина отрезка, соединяющего контрольные точки носа (9.3, 9.15). Контрольные точки центров глаз и ноздрей изображены на рисунке 8, их значения приведены в таблице 14.
Код каждой контрольной точки, показанной на рисунке 8, задается основным значением А и дополнительным значением В. Например, код для левого угла левого глаза задается основным значением 3 и дополнительным значением 7.
Рисунок 7 - Коды контрольных точек MPEG-4 по ИСО/МЭК 14496-2
Рисунок 8 - Контрольные точки центров глаз и ноздрей, определяемые относительно середины отрезков между контрольными точками MPEG-4
Таблица 14 - Коды контрольных точек центров глаз и ноздрей
Контрольная точка центра |
Середина отрезка, соединяющего контрольные точки
|
Код контрольной точки |
|
Левого глаза |
3.7, 3.11 |
12.1 |
|
Правого глаза |
3.8, 3.12 |
12.2 |
|
Левой ноздри |
Горизонтальная координата
|
Вертикальная координата |
12.3 |
9.1, 9.15 |
9.3, 9.15 |
||
Правой ноздри |
Горизонтальная координата
|
Вертикальная координата |
12.4 |
9.2, 9.15 |
9.3, 9.15 |
5.6.6 Антропометрические точки
Антропометрические точки расширяют модель MPEG-4 точками, которые используются в криминалистике и антропологии для идентификации человека с помощью двух изображений лица или изображения лица и черепа.
На рисунке 9 и в таблице 15 приводится определение антропометрических точек. Набор точек представляет собой черепно-лицевые контрольные точки на голове и лице. Последние используются в криминалистике для идентификации по принципу "Лицо с лицом" или "Череп с лицом". Некоторые из этих точек имеют эквиваленты в MPEG-4, другие - не имеют.
Определения данных точек представлены в таблице 15.
Рисунок 9 - Антропометрические точки, которые имеют (красные) и не имеют (синие) эквиваленты в MPEG-4
Таблица 15 - Определения антропометрических точек
Идентификатор точки |
Код точки |
Код точки MPEG-4 |
Название антропометрической точки |
Определение точки |
v |
1.1 |
11.4 |
Верхушечная (vertex) |
Наивысшая точка головы при ее ориентации на Франкфуртскую горизонталь. Определение Франкфуртской горизонтали приводится в приложении Е |
g |
1.2 |
- |
Надбровная (glabella) |
Наиболее выступающая средняя точка между бровями |
op |
1.3 |
- |
Затылочная (opisthocranion) |
Точка в затылочной части головы, наиболее удаленная от надбровной точки |
eu |
1.5, 1.6 |
- |
Теменная (eurion) |
Наиболее выступающие боковые точки на каждой стороне черепа в области теменной и височной костей |
ft |
1.7, 1.8 |
- |
Лобно-височная (frontotemporale) |
Точки на каждой стороне лба, сбоку от возвышения височной линии |
tr |
1.9 |
11.1 |
Волосяная (trichion) |
Точка на границе волосистой части лба по срединной линии |
zy |
2.1, 2.2 |
- |
Скуловая (zygion) |
Наиболее выступающая снаружи точка скуловой части |
go |
2.3, 2.4 |
2.15, 2.16 |
Нижнечелюстная (gonion) |
Наиболее выступающая боковая точка угла нижней челюсти рядом с центром угла нижней челюсти |
sl |
2.5 |
- |
Подгубная (sublabiale) |
Нижний край нижней губы или верхний край подбородка |
pg |
2.6 |
2.10 |
Погонион (pogonion) |
Передняя точка подбородочного выступа, расположенная на поверхности кожи перед идентичной костной точкой нижней челюсти |
gn |
2.7 |
2.1 |
Низшая точка подбородка (или гнатион) (menton, gnathion) |
Наиболее низкая срединная точка на нижнем крае нижней челюсти |
cdl |
2.9, 2.10 |
- |
Выступ мыщелкового отростка нижней челюсти (condylion laterale) |
Наиболее выступающая снаружи точка на поверхности мыщелкового отростка нижней челюсти |
en |
3.1, 3.2 |
3.11, 3.8 |
Эндокантион (endocanthion) |
Точка у внутренней смычки глазной щели |
ex |
3.3, 3.4 |
3.7, 3.12 |
Экзокантион (или эктокантион) (exocanthion, ectocanthion) |
Точка у наружной смычки глазной щели |
p |
3.5, 3.6 |
3.5, 3.6 |
Центральная точка зрачка (center point of pupil) |
Центральная точка зрачка при положении головы в состоянии покоя и направлении взгляда прямо вперед |
or |
3.7, 3.8 |
3.9, 3.10 |
Орбитале (orbitale) |
Наиболее нижняя точка на нижнем крае глазницы |
ps |
3.9, 3.10 |
3.1, 3.2 |
Точка верхнего века (palpebrale superius) |
Наиболее высокая точка в средней части свободного края верхнего века |
pi |
3.11, 3.12 |
3.3, 3.4 |
Точка нижнего века (palpebrale inferius) |
Наиболее нижняя точка в средней части свободного края нижнего века |
os |
4.1, 4.2 |
- |
Орбитале верхняя (orbitale superius) |
Наиболее высокая точка на нижнем крае брови |
sci |
4.3, 4.4 |
4.3, 4.4 |
Надбровная (superciliare) |
Наиболее высокая точка верхнего края средней части брови |
n |
5.1 |
- |
Верхненосовая (nasion) |
Точка пересечения носолобного шва с передней срединной линией |
se |
5.2 |
- |
Средняя точка носолобного шва (или субназион) (sellion, subnasion) |
Наиболее глубокая точка, расположенная в нижней части носолобного угла |
al |
5.3, 5.4 |
9.1, 9.2 |
Аларе (alare) |
Наиболее выступающая боковая точка крыла носа |
prn |
5.6 |
9.3 |
Кончик носа (pronasale) |
Наиболее выступающая точка кончика носа |
sn |
5.7 |
9.15 |
Нижненосовая (subnasale) |
Средняя точка угла носовой перегородки, в которой соединяются нижний край носовой перегородки с верхней губой |
sbal |
5.9, 5.10 |
- |
Нижняя точка крыла носа (subalare) |
Точка на нижнем крае основания крыла носа, в которой основание крыла носа переходит в кожный покров верхней губы |
ac |
5.11, 5.12 |
9.1, 9.2 |
Точка изгиба крыла носа (или вершина крыла носа) (alar curvature point, alar crest) |
Наиболее выступающая снаружи точка на изгибе крыла носа |
mf |
5.13, 5.14 |
9.6, 9.7 |
Максиллофронтале (maxillofrontale) |
Точка пересечения основания носа и средней линии от эндокантиона |
cph |
6.1, 6.2 |
8.9, 8.10 |
Криста фильтри (christa philtri) |
Точка в возвышенной части подносового желобка сразу над контуром красной каймы губ |
ls |
6.3 |
8.1 |
Лабиале (или лабрале) верхняя (labiale, labrale superius) |
Средняя точка верхнего контура красной каймы губ |
li |
6.4 |
8.2 |
Лабиале (или лабрале) нижняя (labiale, labrale inferius) |
Средняя точка нижнего контура красной каймы губ |
ch |
6.5, 6.6 |
8.3, 8.4 |
Хейлион (cheilion) |
Точка угла рта |
sto |
6.7 |
- |
Стомион (stomion) |
Воображаемая точка пересечения вертикальной средней лицевой линии и горизонтального среза между слегка закрытыми губами. При этом зубы сжаты в естественном положении |
sa |
7.1, 7.2 |
10.1, 10.2 |
Вершина уха (superaurale) |
Наиболее высокая точка свободной части ушной раковины |
sba |
7.3, 7.4 |
10.5, 10.6 |
Нижняя точка уха (subaurale) |
Наиболее нижняя точка свободной части мочки уха |
pra |
7.5, 7.6 |
10.9, 10.10 |
Передняя точка уха (preaurale) |
Самая передняя точка уха, расположенная прямо напротив основания завитка ушной раковины |
pa |
7.7, 7.8 |
- |
Задняя точка уха (postaurale) |
Наиболее выступающая назад точка свободной части уха |
obs |
7.9, 7.10 |
10.3, 10.4 |
Верхняя точка крепления уха к голове (otobasion superious) |
Точка крепления завитка ушной раковины к височной области |
obi |
7.11, 7.12 |
- |
Нижняя точка крепления уха к голове (otobasion inferious) |
Точка крепления мочки уха к щеке |
po |
7.13, 7.14 |
- |
Точка верхнего края наружного слухового прохода (мягкая) (porion (soft)) |
Наиболее высокая точка верхней части наружного слухового прохода |
t |
8.1, 8.2 |
- |
Козелковая точка (tragion) |
Углубление в верхней части козелка |
Антропометрическая точка имеет формат А.В. Параметр А определяет область на изображения лица, которой принадлежит эта контрольная точка, например нос, рот и т.д. Параметр В определяет отдельную точку. Если контрольная точка имеет два симметричных положения (левое и правое), то правое положение всегда имеет большее и четное значение параметра А. В результате все контрольные точки на левой части изображения лица имеют нечетные дополнительные коды, а на правой - четные. Параметры А и В имеют значения в диапазоне от 1 до 15. Код A х 16 + В записывается в поле "Код контрольной точки" размером 1 байт.
5.6.7 Трехмерные антропометрические точки
Ошибка определения положения трехмерной антропометрической точки должна составлять не более 3 мм. Точка должна находиться от ближайшей точки поверхности на расстоянии не более 3 мм. Точкой на поверхности считается вершина, точка на ребре или точка на грани поверхности.
5.6.8 Поле "Координата Z"
Это поле не используется, если тип контрольной точки относится к контрольным точкам MPEG-4 или двухмерным антропометрическим точкам. Если тип контрольной точки относится к трехмерным антропометрическим точкам, то это поле вместе с положением по горизонтали и положением по вертикали определяет координаты контрольной точки в прямоугольной системе координат. Метрические координаты трехмерных контрольных точек вычисляются путем умножения координат X, Y и Z на постоянный коэффициент масштаба, равный 0,02 мм. Таким образом, поле "Тип контрольной точки" кодирует тип контрольной точки и определяет способ интерпретации координаты Z.
5.7 Блок "Информация об изображении"
5.7.1 Структура
Блок "Информация об изображении" (11 байтов) предназначен для описания параметров цифрового изображения лица. Каждое изображение лица, входящее в запись, имеет свой блок "Информация об изображении". Структура данного блока представлена на рисунке 2. За каждым блоком "Информация об изображении" следует один блок "Данные представления".
5.7.2 Поле "Тип изображения лица"
Поле "Тип изображения лица", согласно таблице 16, должно содержать информацию о типе изображения лица, записанного в блоке "Данные изображения", и, при наличии, в блоке "Данные трехмерного изображения". Фронтальный тип изображения лица является полным фронтальным, условным фронтальным, обработанным фронтальным либо полным фронтальным трехмерным или условным фронтальным трехмерным типом изображения. Поэтому не используется отдельное значение "фронтальный".
Таблица 16 - Коды поля "Тип изображения лица"
Описание |
Значение |
Основной |
0x00 |
Полный фронтальный |
0x01 |
Условный фронтальный |
0x02 |
Обработанный фронтальный |
0x03 |
Зарезервировано ПК37 для будущего использования |
0x04-0x7F |
Основной трехмерный |
0x80 |
Полный фронтальный трехмерный |
0x81 |
Условный фронтальный трехмерный |
0x82 |
Зарезервировано ПК37 для будущего использования |
0x83-0xFF |
Основной тип изображения лица определен в разделе 6. Фронтальный, полный фронтальный, условный фронтальный и обработанный фронтальный типы изображения лица определены в разделах 7, 8, 9 и 10 соответственно. Для данных типов изображения лица используется понятие "наследование". Например, фронтальный тип изображения лица наследует все требования для основного типа изображения лица. Это означает, что фронтальный тип изображения лица подчиняется всем нормативным требованиям, установленным для основного типа изображения лица. Структура наследования типов изображения лица показана на рисунке 10.
Если двухмерная запись, отвечающая требованиям основного, полного фронтального или условного фронтального типов изображений, содержит данные трехмерного изображения, это определяется установкой единицы для старшего бита поля "Тип изображения лица", в результате чего код типа изображения лица задается в диапазоне от 0x80 до 0x82.
Нормативные требования к основному, фронтальному, полному фронтальному, условному фронтальному и обработанному фронтальному типам изображения лица приведены в разделах 6, 7, 8, 9 и 10 соответственно. Основной, полный фронтальный и условный фронтальный трехмерные типы изображения лица определены в разделах 11,12, и 13 соответственно.
Рисунок 10 - Типы двухмерных изображений лица и их наследование
5.7.3 Поле "Тип данных изображения"
Поле "Тип данных изображения" (1 байт) должно содержать информацию об используемом формате кодирования данных изображения (таблица 17). Должен быть определен формат JPEG (ИСО/МЭК 10918-1 и МСЭ-Т Рекомендации Т.81), JPEG2000 (ИСО/МЭК 15444-1) или PNG (ИСО/МЭК 15948).
Для сжатия информации без потерь должен быть использован формат PNG или формат JPEG2000 (без потерь). Для изображений с более чем 8 битами на канал без потерь необходимо использовать формат PNG или формат JPEG2000 (без потерь). Для изображений с более чем 8 битами на канал с потерями необходимо использовать формат JPEG2000.
Примечание - Значение "Не определен" не может быть использовано.
Таблица 17 - Коды поля "Тип данных изображения"
Описание |
Значение |
JPEG |
0x00 |
JPEG2000 (с потерями) |
0x01 |
JPEG 2000 (без потерь) |
0x02 |
PNG |
0x03 |
Зарезервировано ПК 37 для будущего использования |
0x04-0xFF |
5.7.4 Поле "Горизонтальный размер изображения"
Поле "Горизонтальный размер изображения" (2 байта) должно содержать информацию о числе пикселей в горизонтальном направлении.
5.7.5 Поле "Вертикальный размер изображения"
Поле "Вертикальный размер изображения" (2 байта) должно содержать информацию о числе пикселей в вертикальном направлении.
5.7.6 Поле "Пространственная дискретизация"
Для разных приложений может потребоваться различная минимальная частота пространственной дискретизации. Например, использование высокой частоты пространственной дискретизации необходимо для визуальных и автоматических методов, требующих анализа очень маленьких деталей. Поле "Пространственная дискретизация" (1 байт) содержит информацию о числе пикселей горизонтального размера головы на изображении (таблица 18). (Горизонтальный размер головы СС определен на рисунке 14).
Таблица 18 - Коды поля "Пространственная дискретизация"
Горизонтальный размер головы CC, пиксели |
Степень частоты пространственной выборки |
CC |
0x00 |
180<CC |
0x01 |
240<CC |
0x02 |
300<CC |
0x03 |
370<CC |
0x04 |
480<CC |
0x05 |
610<CC |
0x06 |
750<CC |
0x07 |
Зарезервировано ПК37 для будущего использования |
0x08-0xFF |
Примечание - Расстояние между центрами глаз в пикселях приблизительно равно половине горизонтального размера головы.
5.7.7 Поле "Постобработка изображения"
Несмотря на то что данные изображения не должны подвергаться изменению, возможны случаи, когда нет иных вариантов:
- унаследованные базы данных, содержащие фронтальное изображение лица с поворотом 3/4, которые должны быть повернуты к полному фронтальному изображению для биометрического сравнения;
- нефронтальные изображения, автоматически сгенерированные из фронтального изображения с использованием полной модели головы и т.п. (многоракурсные изображения). Такие изображения могут быть полезны в процессе сравнения или визуального анализа благодаря более похожему ракурсу, чем исходное фронтальное изображение;
- отдельное изображение подвергается прогнозированию возрастных изменений и используется для верификации владельца паспорта;
- из небольшого видеопотока вырезается отдельное изображение лица (обработка значительным приближением) для сравнения со списком лиц.
Поле "Постобработка изображения" (2 байта) предоставляет перечень вариантов постобработок, которые могут применяться к исходным изображениям. Каждый бит маски на позиции, указанной в таблице 19, должен быть установлен на 1, если соответствующая постобработка изображения проводилась, и на 0 в обратном случае. Нулевая позиция маски соответствует самому низкому биту. Если у всех битов установлены нулевые значения, то постобработка изображения не проводилась. Все зарезервированные биты должны быть заполнены нулями.
Для исходных изображений обычно необходима некоторая постобработка, чтобы изображение соответствовало требованиям настоящего стандарта, особенно для фронтального типа изображения. Однако эта постобработка должна быть минимальной и не должна искажать характеристики исходного изображения. В правой колонке таблицы 19 указано, при каких вариантах постобработки изображение обязательно должно сохраняться в обработанном типе изображения (см. раздел 10).
Таблица 19 - Варианты постобработки
Вариант постобработки |
Позиция маски |
Обязательное использование обработанного типа изображения |
Поворот (в плоскости) |
0 |
Нет |
Кадрирование |
1 |
Нет |
Понижение разрешения |
2 |
Нет |
Выравнивание баланса белого |
3 |
Нет |
Многократное сжатие |
4 |
Да |
Интерполяция |
5 |
Да |
Растяжение контраста |
6 |
Да |
Корректировка ракурса |
7 |
Да |
Многоракурсное изображение |
8 |
Да |
Прогнозирование возрастных изменений |
9 |
Да |
Обработка значительным приближением |
10 |
Да |
Зарезервировано ПК37 для дальнейшего использования |
11 - 15 |
- |
5.7.8 Поле "Перекрестная ссылка"
Поле "Перекрестная ссылка" (1 байт) определяет внутренние зависимости при хранении записи обмена нескольких изображений и имеет значение при применении постобработки изображения (см. раздел 10). Для изображений обработанного типа в поле "Перекрестная ссылка" должен указываться порядковый номер изображения, из которого получено данное изображение (таблица 20). Первое по порядку изображение имеет код 0x01.
Таблица 20 - Коды поля "Перекрестная ссылка"
Описание |
Значение |
Основной, условный фронтальный или полный фронтальный тип изображения |
0x00 |
Обработанный тип изображения |
Порядковый номер исходного изображения |
Например, в записи четыре представления. Второе представление было использовано для постобработки, и результат сохранен как четвертое представление. Тогда четвертое представление должно иметь в поле "Перекрестная ссылка" значение 2, а все остальные представления-значение 0.
5.7.9 Поле "Цветовое пространство изображения"
Поле "Цветовое пространство изображения" (1 байт) должно содержать информацию о цветовом пространстве, используемом при кодировании данных изображения, в соответствии с таблицей 21. Значения 0x80-0xFF зарезервированы и определяются изготовителем. Для получения описания этих значений разработчикам приложений следует обращаться к изготовителю.
Таблица 21 - Коды поля "Цветовое пространство изображения"
Цветовое пространство изображения |
Значение |
Не определено |
0x00 |
24 бита RGB |
0x01 |
YUV422 |
0x02 |
8 битов градаций серого |
0x03 |
48 битов RGB |
0x04 |
16 битов градаций серого |
0x05 |
Другое |
0x06 |
Зарезервировано ПК37 для будущего использования |
0x07-0x7F |
Определяется изготовителем |
0x80-0xFF |
5.8 Блок "Данные представления"
Блок "Данные представления" состоит из следующих блоков: блок "Данные изображения", блок "Информация о трехмерном изображении" и блок "Данные трехмерного изображения".
5.9 Блок "Данные изображения"
5.9.1 Структура
Блок "Данные изображения" (переменной длины) должен состоять из двух полей, согласно таблице 22.
Таблица 22 - Структура блока "Данные изображения"
Поле |
Размер |
Значение |
Примечание |
Размер данных изображения |
4 байта |
K |
K - минимальная длина заголовка JPEG, JPEG2000 или PNG |
Данные изображения |
Переменной длины |
См. таблицу 17 |
JPEG, JPEG2000 или PNG |
5.9.2 Поле "Размер данных изображения"
Поле "Размер данных изображения" (4 байта) содержит информацию о размере данных изображения в байтах.
5.9.3 Поле "Данные изображения"
Поле "Данные изображения" (переменной длины) содержит данные изображения, закодированные с помощью одного из следующих форматов: JPEG, JPEG2000 или PNG.
5.10 Блок "Информация о трехмерном изображении"
Блок "Информация о трехмерном изображении" состоит из следующих полей: "Длина данных трехмерного изображения", "Тип системы координат", "Матрица текстурной проекции", "Масштаб", "Смещение", "Тип трехмерного представления", "Вспомогательные данные трехмерного изображения", зарезервированное для будущего использования поле, "Идентификатор технологии биометрического 3D сканера лица", "Идентификатор изготовителя биометрического 3D сканера лица", "Идентификатор типа биометрического 3D сканера лица", "Синхронность получения двухмерного и трехмерного изображений", "Синхронность получения текстурной карты и трехмерного изображения", "Продолжительность получения трехмерного изображения", "Продолжительность получения текстурной карты", "Тип текстурной карты", "Спектр текстурной карты".
5.10.1 Поле "Длина данных трехмерного изображения"
Данное поле (4 байта) определяет размер блоков "Информация о трехмерном изображении" и "Данные трехмерного изображения", включая необязательные поля и блоки при их наличии.
5.10.2 Поле "Тип системы координат"
5.10.2.1 Общие положения
Исходные данные трехмерного изображения регистрируются в собственной системе координат устройства. С использованием значений внутренних параметров устройства получения трехмерного изображения данные трехмерного изображения могут быть преобразованы в метрические мировые координаты. Однако у этого способа имеется два недостатка:
- происходит потеря периодической структуры данных, созданной устройством получения трехмерного изображения (что приводит, например, к различиям в расстояниях между точками);
- для обеспечения периодичности структуры в мировой системе координат требуется интерполяция, при этом исходные данные не сохраняются. Это вполне приемлемо для многих приложений, однако настоящий стандарт предназначен и для сохранения исходных данных.
По этой причине настоящим стандартом предусмотрено несколько способов хранения данных трехмерного изображения в различных представлениях. Все представления поддерживают прямоугольную систему координат. Представление в виде карты глубины дополнительно поддерживает цилиндрическую систему координат. В дальнейшем применение системы координат может быть ограничено для различных типов изображения лица (см. 11 - 13 и В.7).
Преобразование в метрические мировые координаты определено соответствующими коэффициентами пересчета и неявными правилами (например, используемыми в типе трехмерной антропометрической точки), определенными в настоящем стандарте (см. 5.10.2.2 и 5.10.2.3).
Поле "Тип системы координат" (1 байт) определяет систему координат данных трехмерного изображения (таблица 23).
Таблица 23 - Коды поля "Тип системы координат"
Описание |
Значение |
0x00 |
|
0x01 |
|
Зарезервировано ПК37 для будущего использования |
0x02-0xFF |
Различные системы координат определяются в 5.10.2.2 и 5.10.2.3.
5.10.2.2 Прямоугольная система координат (рисунок 11)
В прямоугольной системе координат начало отсчета данных, полученных сдатчика, обычно используется в качестве начала отсчета системы координат.
Преобразование прямоугольных координат в метрические прямоугольные координаты производится следующим образом:
X = х Масштаб X + Смещение Х
Y = у Масштаб Y + Смещение Y;
Z = z Масштаб Z + Смещение Z.
Примечание 1 - Для определенных типов изображения лица началом отсчета системы прямоугольных координат является нос, т.е. контрольная точка prn, определенная в таблице 15.
Примечание 2 - Для определенных типов изображения лица определяются ограничения в отношении положения головы. Фронтальное положение определяется Франкфуртской горизонталью FH (см. приложение Е) в качестве плоскости XOZ и вертикальной плоскостью симметрии в качестве плоскости YOZ с осью Z, направленной в сторону взгляда лица.
Кроме того, между антропометрическими точками и системой координат существует точное соотношение, определяемое:
- анатомическими требованиями к расположению соответствующего двухмерного изображения лица,
- соответствием между трехмерной картой глубины и соответствующим двухмерным изображением лица после применения матрицы текстурной проекции.
Рисунок 11 - Пример прямоугольной системы координат
5.10.2.3 Цилиндрическая система координат (рисунок 12)
Точка в цилиндрической системе координат задается координатами , h, r. Угол
и ось h определяются таким образом, что они составляют правостороннюю систему координат.
Преобразование цилиндрических координат в метрические прямоугольные координаты производится следующим образом:
Х = r Масштаб Z x sin(
х Масштаб X) + Смещение X;
Y = h Масштаб Y + Смещение Y;
Z = r Масштаб Z x cos(
x Масштаб X) + Смещение Z.
Масштаб X, Масштаб Y, Масштаб Z, Смещение Х, Смещение Y и Смещение Z являются постоянными величинами для преобразования. Масштаб X измеряется в радианах. Масштаб Y, Масштаб Z, Смещение X, Смещение Y и Смещение Z измеряются в миллиметрах. Следует обратить внимание на то, что большие значения полей "Масштаб X", "Масштаб Y" или "Масштаб Z" указывают на низкое разрешение в соответствующем измерении.
Обычно начало отсчета данных, полученных с датчика, используется в качестве начала отсчета системы цилиндрических координат.
Примечание - Для определенных типов изображения лица началом отсчета системы цилиндрических координат является нос, т.е. контрольная точка prn, определенная в таблице 15.
Кроме того, между антропометрическими точками и системой координат существует точное соотношение, определяемое:
- анатомическими требованиями к расположению соответствующего двухмерного изображения лица,
- соответствием между трехмерной картой глубины и соответствующим двухмерным изображением лица после применения матрицы текстурной проекции.
Преобразование из цилиндрической в прямоугольную систему координат производится с помощью преобразования, определенного в 5.10.2.3, а затем - с помощью преобразования, обратного преобразованию, определенному в 5.10.2.2.
Рисунок 12 - Пример цилиндрической системы координат
Примечание - FH означает Франкфуртскую горизонталь, см. приложение Е.
5.10.3 Поле "Матрица текстурной проекции"
Матрица текстурной проекции Р (размер 3 x 4, тип float, 48 байт) предназначена для отображения данных трехмерного изображения на текстурное двухмерное изображение. Матрица записывается ряд за рядом, начиная с верхнего левого угла.
Проецирование точки в трехмерном пространстве [X, Y, Z] на текстурное изображение производится умножением матрицы текстурной проекции Р на так называемые однородные трехмерные координаты точки [13]:
.
Однородные трехмерные координаты являются вектором четырех чисел . В данном случае X, Y, Z - это координаты точки в метрической прямоугольной системе координат. В результате умножения получается вектор
так называемых однородных двухмерных координат со вспомогательной координатой w. Чтобы получить двухмерные координаты пикселей текстурного изображения, следует разделить первые две координаты однородных двухмерных координат на соответствующую третью координату w.
Таким образом, [х:w, y:w] - это результирующие координаты пикселей текстурного изображения, связанного с определенной трехмерной точкой . Получаемые координаты являются значениями с плавающей точкой. В настоящем стандарте не регламентируются правила округления или интерполяции полученных значений до целочисленных значений координат пикселей.
При использовании цилиндрической системы координат для проецирования данных трехмерного изображения на текстуру требуется преобразовать трехмерные данные сначала в метрическую прямоугольную систему координат. В случае наложения на текстуру проецируется первая трехмерная точка по линии взгляда (ближайшая к наблюдателю).
В следующих двух блоках хранятся все параметры, необходимые для расчета метрических значений глубины на основе данных трехмерного изображения.
5.10.4 Блоки "Масштаб" и "Смещение"
Как указано в 5.10.2.2 и 5.10.2.3, параметры Масштаб X, Масштаб Y, Масштаб Z, Смещение X, Смещение Y, Смещение Z применяются в преобразовании цифровых координат в метрические. Это относится ко всем трехмерным представлениям, описанным в настоящем стандарте. Значения этих полей определены в физических единицах - миллиметрах. Масштаб Х имеет размерность физических единиц "мм" при использовании прямоугольных координат, а при использовании цилиндрических координат - "радианы". Каждый параметр является обязательным значением с плавающей точкой длиной в 4 байта.
Большие значения полей "Масштаб X", "Масштаб Y" или "Масштаб Z" указывают на низкое разрешение в соответствующем измерении. Для различных типов изображений могут быть ограничены верхние пределы значений полей "Масштаб X", "Масштаб Y" или "Масштаб Z" (см. разделы 11 - 13, В.7).
Масштаб X и Масштаб Y в карте глубины представляют пространственное разрешение, а в карте точек - интервалы квантования трехмерного пространства. Масштаб Z в любом из этих представлений определяет интервал квантования.
5.10.5 Поле "Тип трехмерного представления"
Поле "Тип трехмерного представления" (1 байт) определяет тип представления, кодирующего данные трехмерного изображения (таблица 24).
Таблица 24 - Коды поля "Тип трехмерного представления"
Описание |
Значение |
0x00 |
|
Карта точек |
0x01 |
Данные вершин |
0x02 |
Зарезервировано ПК37 для будущего использования |
0x03-0xFF |
5.10.6 Поле "Вспомогательные данные трехмерного изображения"
Маска вспомогательных данных трехмерного изображения - это битовая маска размером в 1 байт. Биты в каждой позиции маски, перечисленные в таблице 25, должны быть установлены в значение 1, если имеется соответствующая информация о трехмерном изображении, и в значение 0, если такая информация отсутствует. Поэтому битовая маска, состоящая из одних нулей, указывает на отсутствие какой-либо вспомогательной информации. Позиция маски начинается с младшего бита. Маска показывает, присутствует ли в записи карта ошибок/ошибки в вершинах и/или текстурная карта.
Все зарезервированные биты должны быть установлены на значение 0.
Таблица 25 - Структура поля "Вспомогательные данные трехмерного изображения"
Описание |
Значение |
Наличие карты ошибок или ошибок в вершинах |
0 |
Наличие текстурной карты |
1 |
Зарезервировано ПК37 для будущего использования |
2 - 7 |
5.10.7 Поле "Идентификатор технологии биометрического 3D сканера лица"
По аналогии с полем "Идентификатор технологии биометрического 2D сканера лица", в котором содержится информация о технологии получения двухмерного изображения лица, поле "Идентификатор технологии биометрического 3D сканера лица" (1 байт) должно использоваться для указания типа биометрического сканера, использованного для получения данных о трехмерном изображении (таблица 26). Кроме того, самый старший разряд (Most Significant Bit, MSB) определяет то, какая технология сканирования используется для устройства данного типа: активная или пассивная.
Таблица 26 - Коды поля "Идентификатор технологии биометрического 3D сканера лица"
Описание |
Значение (пассивная технология) |
Значение (активная технология) |
Не определено |
0x00 |
0x00 |
Стереоскопический сканер |
0x81 |
0x01 |
Движущаяся (монохроматическая) лазерная линия |
Недоступна |
0x02 |
Структурированная подсветка |
Недоступна |
0x03 |
Подсветка с цветовым кодированием |
Недоступна |
0x04 |
Времяпролетная технология |
Недоступна |
0x05 |
Восстановление формы по теням |
0x86 |
0x06 |
Зарезервировано ПК37 для будущего использования |
0x87-0xFF |
0x07-0x80 |
5.10.8 Поле "Идентификатор изготовителя биометрического 3D сканера лица"
Поле "Идентификатор изготовителя биометрического 3D сканера лица" (2 байта) описывает уникальный для изготовителя идентификатор биометрического 3D сканера лица. Идентификатор разработчика алгоритма биометрического 3D сканера лица кодируется двухбайтовым значением идентификатора биометрической организации ЕСФОБД (зарегистрированной МАБП или другим разрешенным регистрационным органом). Значение, состоящее из одних нулей, является допустимым и означает, что тип биометрического 3D сканера лица не определен.
5.10.9 Поле "Идентификатор типа биометрического 3D сканера лица"
Поле "Идентификатор типа биометрического 3D сканера лица" (2 байта) описывает уникальный для изготовителя идентификатор типа биометрического 3D сканера лица. Значение, состоящее из одних нулей, является допустимым и означает, что тип биометрического 3D сканера лица не определен. Разработчики приложений могут получить значение этого кода у изготовителя.
5.10.10 Поле "Синхронность получения двухмерного и трехмерного изображений"
Обязательное поле "Синхронность получения двухмерного и трехмерного изображений" (2 байта) определяет временную взаимосвязь между двухмерным изображением блока "Данные изображения" и данными трехмерного изображения. Поле не содержит ссылки на необязательное текстурное изображение блока "Данные трехмерного изображения". Значение равно разнице во времени, указанной в миллисекундах (мс), между началом получения двухмерного изображения лица и началом получения трехмерного изображения. Допускаются положительные и отрицательные значения.
В настоящем стандарте отрицательная разница во времени означает, что процесс получения трехмерного изображения начался раньше процесса получения двухмерного изображения. Разница во времени, выраженная в миллисекундах (мс), указывается в системе дополнения до двух. Таким образом, значение 0x8001 определяет максимальную по модулю отрицательную разницу во времени минус 32767 мс, а значение 0x7FFF соответствует максимальной положительной разнице во времени плюс 32767 мс. Значение 0x8000 является допустимым и указывает, что синхронность получения двухмерного и трехмерного изображения не определена (таблица 27).
Таблица 27 - Коды поля "Синхронность получения двухмерного и трехмерного изображений"
Описание |
Значение |
Разница во времени между началом получения двухмерного изображения и началом получения трехмерного изображения (мс), кодированная в системе дополнения до двух |
0x0000-0x7FFF 0x8001-0xFFFF |
Не определено |
0x8000 |
5.10.11 Поле "Синхронность получения текстурной карты и трехмерного изображения"
Обязательное поле "Синхронность получения текстурной карты и трехмерного изображения" (2 байта) определяет временную взаимосвязь между данными трехмерного изображения и данными текстурной карты (необязательное поле) блока "Данные трехмерного изображения". Значение равно разнице во времени, выраженной в миллисекундах (мс), между началом получения текстурной карты и началом получения трехмерных данных.
Примечание - Поле не имеет отношения к синхронности получения двухмерного изображения в блоке "Данные изображения" и данными трехмерного изображения.
Допускаются положительные и отрицательные значения. В настоящем стандарте отрицательная разница во времени означает, что процесс получения трехмерного изображения начался раньше процесса получения текстурной карты. Разница во времени, выраженная в миллисекундах (мс), указывается в системе дополнения до двух. Таким образом, значение 0x8001 определяет максимальную по модулю отрицательную разницу во времени минус 32767 мс, а значение 0x7FFF соответствует максимальной положительной разнице во времени плюс 32767 мс. Значение 0x8000 является допустимым и указывает, что синхронность получения текстурной карты и трехмерного изображения не определена (таблица 28).
Таблица 28 - Коды поля "Синхронность получения текстурной карты и трехмерного изображения"
Описание |
Значение |
Разница во времени между началом получения текстурной карты и началом получения трехмерного изображения (мс), кодированная в системе дополнения до двух |
0x0000-0x7FFF 0x8001-0xFFFF |
Не определено |
0x8000 |
5.10.12 Поле "Продолжительность получения трехмерного изображения"
Продолжительность получения трехмерного изображения существенно различается при использовании различных методов сканирования и может напрямую повлиять на качество данных (при движении объекта съемки во время получения данных). Поле "Продолжительность получения трехмерного изображения" (2 байта) определяет значение интервала времени, выраженное в миллисекундах (мс), между началом процесса получения трехмерного изображения и его окончанием. Значение 0xFFFF является допустимым и указывает, что поле не определено (таблица 29).
Таблица 29 - Коды поля "Продолжительность получения трехмерного изображения"
Описание |
Значение |
Продолжительность получения трехмерного изображения (мс) |
0x0000-0xFFFE |
Не определено |
0xFFFF |
5.10.13 Поле "Продолжительность получения текстурной карты"
Текстурная карта (необязательное поле) в блоке "Данные трехмерного представления" может быть получена как одновременно, так и не одновременно сданными трехмерного изображения. Поле "Продолжительность получения текстурной карты" (2 байта) определяет значение интервала времени между началом и окончанием получения текстурной карты, выраженное в миллисекундах (мс). Значение 0xFFFF является допустимым и указывает, что поле не определено (таблица 30).
Примечание - Значение поля "Продолжительность получения текстурной карты" не является продолжительностью получения двухмерного изображения блока "Данные изображения".
Таблица 30 - Коды поля "Продолжительность получения текстурной карты"
Описание |
Значение |
Продолжительность получения текстурной карты (мс) |
0x0000-0xFFFE |
Не определено |
0xFFFF |
5.10.14 Поле "Тип текстурной карты"
Поле "Тип текстурной карты" (1 байт) определяет тип кодирования текстурной карты (таблица 31). Если в поле "Вспомогательные данные трехмерного изображения" задано наличие текстурной карты в записи, то следует указать формат: JPEG (ИСО/МЭК 10918-1 и рекомендации МСЭ-Т Т.81), JPEG 2000 (ИСО/МЭК 15444-1) или PNG (ИСО/МЭК 15948:2004). Для формата JPEG данные должны быть отформатированы в соответствии со стандартом формата обмена файлами JPEG (JPEG File Interchange Format, JFIF), версия 1.02.
Если в поле "Вспомогательные данные трехмерного изображения" не указано наличие текстурной карты, то тип текстурной карты должен иметь значение "не определено".
Таблица 31 - Коды поля "Тип текстурной карты"
Описание |
Значение |
Не определено |
0x00 |
JPEG |
0x01 |
JPEG2000 |
0x02 |
PNG |
0x03 |
Зарезервировано ПК37 для будущего использования |
0x04-0xFF |
5.10.15 Поле "Спектр текстурной карты"
Поле "Спектр текстурной карты" (1 байт) определяет диапазон спектра, в котором получена текстурная карта, указанная в 5.11.9. Для получения двухмерного изображения всегда используется видимый диапазон спектра, при получении же текстурной карты условия могут быть иными.
Если в поле "Вспомогательные данные трехмерного изображения" указано наличие текстурной карты, то следует также указать значение поля "Спектр текстурной карты". Если в поле "Вспомогательные данные трехмерного изображения" не указано наличие текстурной карты, то спектр текстурной карты должен иметь значение "не определено" (таблица 32).
Таблица 32 - Коды поля "Спектр текстурной карты"
Описание |
Значение |
Не определено |
0x00 |
Видимый (380 - 780 нм) |
0x01 |
В ближней инфракрасной области спектра - фотографический (780 - 1000 нм) |
0x02 |
В коротковолновой инфракрасной области спектра (1000 - 1400 нм) |
0x03 |
Другой |
0x04 |
Зарезервировано ПК37 для будущего использования |
0x05-0xFF |
5.11 Блок "Данные трехмерного изображения"
5.11.1 Структура
Блок "Данные трехмерного изображения" содержит данные трехмерного изображения. Предусмотрено три варианта хранения трехмерных данных: карта глубины, карта точек или данные вершин. Допускается запись дополнительной информации в поле "Карта ошибок", блоке "Ошибки вершин", а также в поле "Текстурная карта".
Карты глубины предназначены для кодирования значений глубины от определенной точки ракурса до проекции объекта на плоскость или цилиндрическую поверхность. Карта глубины допускает кодирование только одного значения глубины на пиксель, что ограничивает топологическую сложность кодируемой поверхности. Тем не менее для изображений лица, особенно фронтальных, такое представление является хорошей аппроксимацией. В меньшей степени карта глубины подходит для кодирования информации о глубине в отсутствие фронтального положения. Кроме того, данные карты глубины (в отличие отданных карты точек) в большей степени подвергаются обработке (сглаживанию, изменению шага дискретизации, интерполяции и т.д.).
Карта точек в большей степени подходит для обмена и хранения необработанных данных трехмерного изображения, полученных от биометрического 3D сканера лица. Сохранение данных в их первичной форме может привести к увеличению объема хранимых данных.
Данные вершин определяют трехмерные точки с непостоянным шагом дискретизации, что обычно приводит к разреженному кодированию. Ввиду того, что выборка точек вершин является вариативной, полученный результат может иметь форму либо очень компактных представлений, либо очень точных представлений при использовании большого числа вершин.
Поле "Тип трехмерного представления" (см. 5.10.5) определяет формат данных трехмерного изображения, который применялся в фактической записи.
5.11.2 Поле "Разрядность карты глубины"
Поле "Разрядность карты глубины" (1 байт) определяет число бит, используемых для представления каждого пикселя карты глубины (таблица 33). Это поле предусмотрено для быстрого и простого доступа к данной информации, поскольку разрядность глубины можно также получить из заголовка записи PNG.
Таблица 33 - Коды поля "Разрядность карты глубины"
Описание |
Значение |
8 бит |
0x00 |
16 бит |
0x01 |
Зарезервировано ПК37 для будущего использования |
0x02-0xFF |
5.11.3 Поле "Карта глубины"
Поле "Карта глубины" содержит данные глубины в двухмерном формате. Карта глубины должна храниться в формате PNG (ИСО/МЭК 15948). Формат PNG обеспечивает сжатие без потерь как для 8-битных, так и для 16-битных изображений в градациях серого. Разрядность данных в PNG изображении записывается в заголовок PNG и указывается в поле "Разрядность карты глубины" (см. 5.11.2). Разрядность карты глубины (8 бит или 16 бит) должна быть определена из заголовка PNG записи.
Размер поля "Карта глубины" является переменным, поскольку зависит от алгоритма сжатия. Несжатые данные имеют размеры, равные произведению высоты карты глубины на ширину карты глубины. Эти значения указаны в заголовке PNG записи.
Значения пикселя 0xFF в случае 8-битного кодирования и 0xFFFF в случае 16-битного кодирования изображения указывают на отсутствие данных о глубине.
5.11.4 Поля "Ширина карты точек" и "Высота карты точек"
Поля определяют ширину и высоту карты точек, в которой хранятся данные трехмерного изображения. Оба поля (2 байта) могут иметь значения в диапазоне от 0 до 65535.
5.11.5 Поле "Карта точек"
Карта точек предназначена для записи исходных данных, полученных с биометрического 3D сканера лица. Карта представляет собой трехканальное изображение, сжатое без потерь в формате PNG, с 16-битным кодированием каждого канала. Первый канал содержит значения Х, второй - Y, а третий - Z координат точек. Значение (X, Y, Z) = (0xFFFF, 0xFFFF, 0xFFFF) означает недействительную трехмерную точку.
Координаты определяются в произвольной прямоугольной системе координат. Информация о связности точек явным образом не сохраняется. Для действительных значений координаты соседних пикселей соответствуют соседним точкам на поверхности лица.
5.11.6 Блок "Данные вершин"
Блок "Данные вершин" переменной длины содержит блок "Координаты вершин", необязательный блок "Нормали вершин", необязательный блок "Ошибки вершин" и необязательный блок "Текстуры вершин". Каждый из указанных блоков содержит наборы значений характеристик вершин. Число вершин определено в поле "Число вершин" (2 байта).
Положение каждой вершины определяется X координатой, Y координатой и Z координатой в соответствии с 2-байтными полями "Координата Х вершины", "Координата Y вершины" и "Координата Z вершины" соответственно. Значения определяют местоположение с фиксированной точностью в соответствии с 11.3.2.
Если флаг нормали равен 0x01, то соответствующий вектор нормали каждой вершины должен быть определен в 2-байтовых полях "Нормаль X", "Нормаль Y", "Нормаль Z" (таблица 34).
Необязательное поле "Ошибка вершины" (1 байт) содержит дополнительную информацию о вершине в соответствии с описанием в таблице 35. Если в поле "Вспомогательные данные трехмерного изображения" задано наличие карты ошибок, то поле "Ошибка вершины" должно быть определено для каждой вершины.
Необязательные поля "Текстурная координата Х" и "Текстурная координата Y" определяют соответствующие Х и Y позиции пикселя на текстурной карте. При этом значение (0,0) соответствует верхнему левому углу. Если в поле "Вспомогательные данные трехмерного изображения" определено наличие текстурной карты, то текстурные координаты X и Y должны быть определены для каждой вершины.
Число треугольных граней определяется в соответствующем поле "Число треугольных граней" (4 байта).
Данные вершин позволяют определять дополнительные нормали для вершин. Наличие нормалей определяется значением в поле "Флаг нормали" размером 1 байт (таблица 34).
Таблица 34 - Коды поля "Флаг нормали"
Описание |
Значение |
Информация о нормали не используется в данных вершин |
0x00 |
Информация нормали используется в данных вершин |
0x01 |
Зарезервировано ПК37 для будущего использования |
0x02-0xFF |
5.11.7 Поле "Данные треугольных граней"
Поле "Данные треугольных граней" переменной длины содержит список параметров треугольных граней. Число треугольных граней задается в поле "Число треугольных граней" (см. 5.11.6). Каждая треугольная грань задается тремя 2-байтовыми индексами вершин в списке данных вершин, образующих треугольную грань. Для определения внешней стороны треугольной грани порядок расположения индексов вершин должен соответствовать движению против часовой стрелки.
5.11.8 Поле "Карта ошибок"
Необязательное поле "Карта ошибок" содержит информацию о способе обработки данных трехмерного изображения до его записи в форме трехмерного представления. Карта ошибок кодируется в формате PNG как 8-битное изображение в градациях серого. Размер карты (в байтах) является переменным, поскольку зависит от эффективности алгоритма сжатия изображения.
Несжатые данные имеют размеры, равные произведению высоты карты глубины на ширину карты глубины, если они связаны с картой глубины, либо размеры, равные произведению ширины карты точек на высоту карты точек, если они связаны с картой точек.
Значения пикселя t в диапазоне от 0 до 199 зарезервированы ПК37 для будущего использования. Значение t, равное 200, определяет корректное значение глубины. Значения t, равные 201 и более, определяют потенциальный или исправленный дефект данных трехмерного изображения или соответствующего изображения текстуры (таблица 35).
Более полная информация об
Если вы являетесь пользователем интернет-версии системы ГАРАНТ, вы можете открыть этот документ прямо сейчас или запросить по Горячей линии в системе.
Национальный стандарт РФ ГОСТ Р ИСО/МЭК 19794-5-2013 "Информационные технологии. Биометрия. Форматы обмена биометрическими данными. Часть 5. Данные изображения лица" (утв. приказом Федерального агентства по техническому регулированию и метрологии от 6 сентября 2013 г. N 987-ст)
Текст ГОСТа приводится по официальному изданию Стандартинформ, Москва, 2015 г.
Дата введения - 1 января 2015 г.
В настоящий документ внесены изменения следующими документами:
Изменение N 2, введенное в действие приказом Росстандарта от 25 ноября 2021 г. N 1607-ст
Изменения вступают в силу с 1 января 2022 г.
Изменение N 1, введенное в действие приказом Росстандарта от 8 ноября 2018 г. N 947-ст
Изменения вступают в силу с 1 января 2019 г.