- Сообщения
- 34 337
- Реакции
- 11 265
Вово! Эдакий форумный Платон и быстрый разумом Невтон!вашей молниеносной мысли

Вово! Эдакий форумный Платон и быстрый разумом Невтон!вашей молниеносной мысли

Ну так дайте правильное объяснение разницы между 0,1 и 0,2 процента черного, и я с радостью с вами соглашусь. А если у вас нет правильного объяснения, то обоснуйте неправильность моего предположения об округлении однобайтной величины до нуля.мое эстетическое чувство коробит подобная формулировка поста
Я разве где то говорил про то что у меня есть более вразумительная гипотеза? Я чисто про периодические безграмотные определения, что такое неонка в ваших постах. Вот, к примеру, в процитированном, внимательно вчитайтесь в это свое "округление однобайтной величины до нуля"?обоснуйте неправильность моего предположения об округлении однобайтной величины до нуля
При переводе числа с плавающей точкой в двоичное 8-битное число округление будет происходить почти всегда (за исключением случаев, когда число с плавающей точкой будет целым и не превышать 255).С какого перепугу значение с плавающей точкой будет округляться до восьмибитного целого (как правильнее было бы сказать, чтобы все поняли)?
?С какого перепугу значение с плавающей точкой будет округляться до восьмибитного целого
Откуда мне знать? Я Акробата не пугал.С какого перепугу
Нет, ну вы же исходя из какой то логики сделали такое странное предположение? Давайте я напомню - вы "когда то где то слышали, что внутри адобовских программ внутреннее представление цвета целочисленное, причем, uint8/uint16" , так?Откуда мне знать? Я Акробата не пугал.

Ага.
Логика простая - округления 0,1% до uint8 дает ноль, а округление 0,2% дает 1. Почему uint8? Потому что тип данных uint8 часто используют для эффективности памяти, когда достаточно небольших положительных чисел.вы же исходя из какой то логики сделали такое странное предположение?
Вы всерьез так думаете? Я, конечно, делаю вам скидку на возраст, возможно, это было эффективно, когда вы начинали знакомство с компьютерами. Они были большими, памяти было 64К и регистры процессора были 8битными. Но сейчас вторая четверть 21 века, в процессоры встроена плавающая математика охрененной разрядности, которая, ЧСХ, считается быстрее целочисленной и даже целочисленные 8битные операции эмулируются (с замедлением) на 64битных регистрах, формат хранения данных - тоже (текстовая!!!) плавающая точка охрененой точности после запятой; на выходе печати гладкие многометровые полутоновые переходы, итак, я повторяю свой вопрос:Потому что тип данных uint8 часто используют для эффективности памяти, когда достаточно небольших положительных чисел
?С какого перепугу значение с плавающей точкой будет округляться до восьмибитного целого

Нет, использовал совет проверять себя.Вы - бот?
Расчет тут не при чем. Я вечером вспомнил как в 90-х писал перекодировщик текстов (тогда макинтоши не понимали кодировку виндоус) и что фотошоп сплошь работает на таблицах. Так вот, арифметика работает только на этапе построения таблиц пересчета цвета, а потом идет преобразование входного цвета в выходной, и происходит оно практически со скоростью чтения + записи оперативной памяти. Если Акробат использует этот механизм, то ему нужны целочисленные входные данные, которые можно преобразовать в адреса.математика охрененной разрядности, которая, ЧСХ, считается быстрее целочисленной
А том числе был вопрос от ТС о причине нелогичного поведения Акробата.какая была исходная задача?
Не нужно, я прекрасно понял, что вы имели в виду, вероятно, хэширование массивов, так?Так вот, арифметика работает только на этапе построения таблиц пересчета цвета, а потом идет преобразование входного цвета в выходной, и происходит оно практически со скоростью чтения + записи оперативной памяти. Если Акробат использует этот механизм, то ему нужны целочисленные входные данные, которые можно преобразовать в адреса.
Я могу расписать это подробно, но получится очень длинно...
Нет.вы имели в виду, вероятно, хэширование массивов, так?
Паазвольте, у нас разве фотошоп и попиксельный пересчет одного растрового изображения в другое? Насколько я понимаю, у нас весьма сложная (нецелочисленная) математика с усреднением, на выходе число с плавающей точкой. Где там в алгоритм можно влепить описанное вами табличное преобразование с округлением, а главное, зачем - ума не приложу.Нет.
Поясню на примере. Допустим, в фотошопе вы хотите исправить градации в большом (не обязательно) файте и устанавливаете в кривых несколько точек, задающих функцию преобразования. Обсчитывать каждый пиксель по этой функции было бы безумием. Фотошоп задает эту функцию в виде таблицы выходных значений одно- или двухбайтовыми числами (в зависимости от выбранного вами режима). После этого считывает один из каналов (R, G или B) первого пикселя в виде адреса таблицы и записывает в первый пиксел нового файла значение из этого адреса после чего повторяет эту операцию для каждого следующего пикселя и канала. То есть осуществляет только операции чтения и записи без вычислений. Вуаля - задача выполнена предельно быстро.
Нет, кстати, для массовых формульных преобразований идея хорошая, максимально быстрая, мне нравится, я такое тоже делал как-то давно. Только вот к теме топика это не имеет никакого отношенияГде там в алгоритм можно влепить описанное вами табличное преобразование с округлением, а главное, зачем - ума не приложу.
Нет, у нас Акробат, который изначально был предназначен для показа документов на экране, и распечатке его на принтере. Обе задачи предполагают финальную пикселизацию всех изображений и текстов.у нас разве фотошоп