[oo-translation] Bitmap- растр
Nickolai Garbuz
nickolai на garbuz.ru
Чт Май 6 17:03:32 MSD 2004
Anatoly Yakushin wrote:
> Alexej Kryukov пишет:
>
>> On Thursday 06 May 2004 10:24, Anatoly A. Yakushin wrote:
>>
>>> Alexej Kryukov пишет:
>>> <skip>
>>>
>>>> И, наконец, конкретно для названия формата Windows BMP вообще
>>>> нужен не буквальный перевод, а общепринятое русское название.
>>>> Поскольку формат придуман MS, то, очевидно, нет ничего страшного
>>>> в том, чтобы принять предложенный ею же перевод (который к тому
>>>> же всем привычен), т. е. именно "точечный рисунок Windows".
>>>
>>>
>>> Я бы перевел "растровый рисунок Windows", не следуя в данном
>>> случае общепринятому переводу от MS. Ибо точка и пиксел -
>>> это очень разные понятия.
>>
>>
>>
>> Ну, если вернуться к давней теме "точка vs пиксел", то согласно
>> данному Николаем определению, с которым тогда как будто все
>> согласились:
>>
>> "Пиксель" - это неделимая единица растрового изображения, которая
>> характеризуется тремя параметрами - x, y, цвет. Термин "пиксель" -
>> контекстно привязан к дискретным устройствам ввода/вывода. Точка - это
>> объект графического изображения не зависящий от типа устройства.
>>
>> С этой точки зрения рисунки bmp и xpm являются именно точечными,
>> ибо одна точка растра в данном случае совершенно не обязана
>> соответствовать одному пикселу, хотя в идеале такое соответствие
>> и предполагается.
>
>
> "Что такое пиксель?
> Пиксель - (от слов picture element- элемент изображения) представляет
> собой элементарную цветную точку, совокупность которых образует
> изображение. Пиксель является основным элементом растровых изображений."
>
> Никаким образом он к устройствам ввода - вывода не привязан при
> определении битовой карты. Прозевал я это место в определении. Каюсь :)
Давайте не будем придумывать то, чего нет. Растр всегда привязан к
дискретному устройству ввода-вывода и именно для него был создан.
Позволю себе отступление. На заре своей трудовой деятельности мне
довелось работать в коллективе, который пытался сотворить советскую CAD
систему, на базе одной удачной французской разработки. По моему, она
называлась SECAPA. Это была полностью автономная система и работала даже
без MS-DOS, хоть и на платформе Intel. Основным достоинством этой
системы был аналоговый дисплей с размером 21". Луч на том дисплее
управлялся по такому же принципу, как и на осциллографе. Он рисовал
только контуры изображения, а не бегал в холостую по всей площади
кинескопа. Так вот, В ТОЙ СИСТЕМЕ вообще НЕ БЫЛО ТАКИХ ПОНЯТИЙ, КАК
РАСТР ИЛИ БИТМАР, а было поле вывода изображения с размером [0,0..1,0]
по оси Х и У. Однако визуальное качество изображения (гладкость кривых и
окружностей, отображение тонких линий) была значительно выше, чем на
современных дисплеях XGA (1024x768). Да и зачем там был нужен растр,
если другими устройствами ввода/вывода были планшет и графопостроитель,
где движение пера управлялось через сантиметры и секунды.
Растр (bitmap) как понятие появился с распространением дискретных
устройств, в первую очередь дисплеев. Формирование растрового
изображения по вычислительным затратам всегда дороже, чем формирование
аналогового изображения. При рисовании на растре, надо обрабатывать и
хранить все элементы изображения, а не только те, которые его формируют.
Копирование растра на экран дисплея (матричного принтера) - самая
быстрая операция, требующая минимальных вычислительных затрат. Рисование
на растровом дисплее с помощью примитивов ( линия, дуга и т.п.) более
длительная и утомительная операция. Потому еще на заре существования
растровых дисплеев был изобретен такой прием программирования, когда
создавался в памяти растр (Bitmap), совпадающий по размерам
(pixel2pixel) с активным портом вывода (ViewPort) дисплея. Далее, этот
растр объявлялся устройством, для которого вызывались стандартные
функции рисования/отсечения. После окончания процедуры формирования
изображения, растр копировался на дисплей в соответствующий порт вывода.
Известны недостатки такого подхода:
1) Требуется больше памяти;
2) Требуется больше времени.
Известны достоинства:
1) Для пользователя изображение становится более четким.
2) Глаз успевает лучше зафиксировать неподвижный кадр, пока на растре в
памяти формируется новый.
3) Появляется возможность создания анимированых изображений.
Этот прием до сих пор наиболее часто используется на всех платформах
имеющих дискретные устройства вывода - и на мощных игровых станциях и на
мобильных телефонах. А выпады в сторону Microsoft считаю не относящимися
к теме.
Что касается формата, сжатия и заголовка растрового файла, то к переводу
интерфейса это не имеет никакого значения. Это все придумано для того,
чтобы повысить плотность хранения информации. Однако в момент
отображения (копирование на дисплей) все равно происходит разуплотнение
сжатого изображения в формат зависящий от типа устройства и структурно
представляющий из себя прямоугольник, стороны которого измеряются целым
числом.
>
> Другое дело, что сегодня, с появлением цифровых камер и матриц в понятие
> "пиксель" вкладывается и хардварное значение. Эти толкования не стоит
> путать.
>
Это не причина, а следствие. :)
> Точка - понятие геометрическое. В векторном рисунке тоже есть понятие
> точки. И легко представить векторное изображение, состояшее из точек.
С геометрической точки зрения ЭТО АБСУРД :)
Не надо путать Пиксель как конечный элемент растра с понятием
геометрической точки. :) Согласно определению Евклидовых "Начал", Точка
есть неделимый элемент, характеризующийся местоположением в пространстве
и не имеющий размера (ширины). :) В этом случае, для формирования
конечного изображения необходимо бесконечное множество геометрических
точек. А это, простите, как?
Снова простите за ликбез. Но мы рискуем дойти до полного абсурда :)
ВЕКТОРНОЕ изображение (правильнее формат хранения) - это обычный случай
придания нового смысла старому слову. В нашем случае слово ВЕКТОР не
имеет отношения к понятию АЛГЕБРАИЧЕСКИЙ вектор, который характеризует
конечное множество величин, обрабатываемых в заданном порядке, равно как
и не имеет отношения к понятию ФИЗИЧЕСКИЙ (ГЕОМЕТРИЧЕСКИЙ) вектор,
который характеризуется направлением и величиной. Главное преимущество
векторного формата хранения ихображений - высокая плотность записи
информации. Ни один растровый формат не сравниться по плотности
представления информации об изображении с векторным форматом хранения
даже в 2D. В 3D растр просто отдыхает. :) Векторный формат хранения
изображений, правильнее было бы назвать ФОРМАТОМ хранения ПРИМИТИВОВ,
где ПРИМИТИВ - это простейший элемент изображения, характеризующийся
начальными условиями и правилом - что с этим делать. Векторный формат
хранения графической информации может быть как бинарным (CDR), так и
текстовым (DXF). В случае текстового формата графические примитивы,
например, могут выглядеть так:
CR - Окружность (x, y, радиус, цвет);
LN - Прямая(х1, у1, х2, у2, толщина, цвет);
RT - Прямоугольник(х1, у1, х2, у2, толщина, цвет);
Тогда для сохранения информации о красной окружности радиусом 100 и
центром в точке (150, 150) нам достаточно записать:
CR(150, 150, 100, красный) - всего 26 символов или 26 байт.
Первые два символа записи CR - это правило, что рисовать - окружность.
Параметры в скобках - это начальные условия.
Чтобы сохранить информацию об этом изображении в растровом формате. Нам
потребуется (МИНИМУМ) 5000 байт, при условии, что наш растровый формат
передает всего 16 цветов (4 бита), а заголовок хранит смещение:
5000 = 100*100 * 4/8.
Замечания о методах сжатия здесь не уместны, так как в момент
отображения растра, последний будет разуплотнен и займет в памяти ровно
столько места, сколько необходимо для хранения всех его элементов с
учетом глубины цветовой палитры.
Сложные изображения в векторных форматах образуются из множества примитивов.
>
> Т.е. в сухом остатке пиксель - это точка растровой графики.
А может примем более емкое определение?
"Пиксель" - это неделимая единица растрового изображения(дискретного
устройства), которая характеризуется тремя параметрами - x, y, цвет. :)
А если серьезно, то Алексей Крюков уже поднимал вопрос о том, что надо
менять отношение к переводу. Аргумент, что все мы здесь добровольцы -
считаю не уместным. Но нельзя допускать вольности и выдумку при переводе
специализированных предметных областей.
>
>
>
--
Best regards,
Nickolai Garbuz
http://ru.openoffice.org/
http://juga.ru/
http://i-rs.ru/
Подробная информация о списке рассылки Translation