Диапазон шага относится к пространству, занимаемому каждой строкой пикселей в памяти. Поскольку в системе есть требования к выравниванию интервала для изображений, этот диапазон шага может быть больше или равен ширине, занимаемой фактическими пикселями изображения;
Картинки в формате RGB24 с разрешением 638х480, выравниваемые по 16 байтам при обработке в памяти;
В формате RGB24 каждый компонент R (красный)/G (зеленый)/B (синий) занимает 8 бит (1 байт), а один пиксель занимает в общей сложности 24 бита (3 байта);
Память, занимаемая реальными пикселями каждой строки, составляет 638 * 3 = 1914 байт;
Необходимо выровнять по 16 байтам, фактический размер памяти, занимаемый последним байтом, составляет 1914 % 16 = 10 байт,
Следовательно, необходимы дополнительные 16–10 = 6 байтов заполнения.
Наконец достигает 638 * 3 + 6 = 1920 байт;
Выравнивание YUV stride (Стрид) — это концепция выравнивания памяти в процессе обработки изображений;
При обработке изображений в формате YUV система или аппаратное устройство требуют, чтобы каждая строка пикселей изображения YUV была выровнена в пространстве памяти;
Выравнивание шага должно соответствовать требованиям определенных режимов доступа к памяти. Некоторые системы требуют выравнивания шага.
Когда для обработки изображений YUV требуется память, они выравниваются по 16 байтам. Теперь имеется изображение размером 638 х 480 пикселей. Изображение YUV420P;
Формат хранения данных YUV420P показан на рисунке ниже. Различные типы компонентов размещаются в разных массивах.
Приведенные выше данные памяти изображений YUV,
Изображение представляет собой 4 x 4 фотографии размера , каждая строка занимать 4 байт ;
Пиксельный формат изображения — 638 x 480 пикселей;
сверху YUV420P изображение в формате ,каждая строка на пиксель Толькозанимать 1 байт, Так изображение в памяти , длина каждой строки да 638 байт ;
каждая строкаиз реальные пиксели Местозаниматьиспользоватьиз Памятьда 638 байт ;
Нужно 16 байтверно Ци ,最后одининдивидуальныйбайтзаниматьиспользоватьиздействительный Объем памяти да 638 % 16 = 14 байт,
поэтому за строку Все еще нужно дополнительная добавка 16 - 14 = 2 байтиззаполнить байт ,
наконец достичь 638 + 2 = 640 байт ;