[PS CC2022] попиксельно брать цвет из таблиц Ms Excel

IVA2000

Топикстартер
10 лет на форуме
Сообщения
74
Реакции
16
Задача: считать цвет в LAB с ячеек листа MS Exsel (или иного формата куда можно данные из Exsel конвертировать) и попиксельно заполнить им поле.
Нужно заполнить картинку 1000×1000 пикселей.
Рассчитать цвета и подогнать формат под нужный я смогу. А как затем построить картинку?
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 187
Реакции
10 844
А в каком формате цвет в ячейке задан?
 

IVA2000

Топикстартер
10 лет на форуме
Сообщения
74
Реакции
16
А в каком формате цвет в ячейке задан?
В LAB. Это три числа. То есть цвет одного пикселя - это значения в трех подряд идущих ячейках.
Соответственно, для картинки 1000×1000 пикселей потребуется таблица 3000×1000 ячеек.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 187
Реакции
10 844
Самое простое - написать макрос в экселе, записывающий данные с ячеек побайтово в бинарный файл.
Который потом открыть в фотошопе как RAW
 
  • Спасибо
Реакции: ~RA~

IVA2000

Топикстартер
10 лет на форуме
Сообщения
74
Реакции
16
Самое простое - написать макрос в экселе, записывающий данные с ячеек побайтово в бинарный файл.
Который потом открыть в фотошопе как RAW
Спасибо. Можно вас попросить назвать формат файла или дать какие-то ссылки с описанием этого формата?
 

~RA~

Одарённая.
12 лет на форуме
Сообщения
11 860
Реакции
3 450
Самое простое - написать макрос в экселе, записывающий данные с ячеек побайтово в бинарный файл.
Который потом открыть в фотошопе как RAW
Это ж сколько он времени один файл писать будет?
 

splxgf

12 лет на форуме
Сообщения
7 742
Реакции
3 424
Lab это понятно, а фотошоповский формат какой будет? Lab/rgb/cmyk?
что-то через бридж гоняли.
 

IVA2000

Топикстартер
10 лет на форуме
Сообщения
74
Реакции
16
Lab это понятно, а фотошоповский формат какой будет? Lab/rgb/cmyk?
что-то через бридж гоняли.
Мне точный цвет нужен. Чтобы какие я циферки в файле напишу, такие после открытия файла с данного пикселя пипеткой и считались. И чтобы цветовая модель файла была LAB color, без каких-либо конвертаций.
Как называется формат файла, который так можно записать скриптом, а потом открыть фотошопом?
Вряд ли я смог разобраться в формате PSD и записать его скриптом. Или заказать кому-то это сделать за умеренные деньги.
Нужно что-то простое, что фотошоп откроет.
 

splxgf

12 лет на форуме
Сообщения
7 742
Реакции
3 424
Вам уже посоветовали формат фотошоп raw, это чисто последовательность пикселей, этот файл можно напрямую записать из экселя. при открытии файл откроется как rgb но создать аналогичный файл и перекопировать каналы R->L, G->a, B->b.
psr.jpg
 

IVA2000

Топикстартер
10 лет на форуме
Сообщения
74
Реакции
16
Вам уже посоветовали формат фотошоп raw, это чисто последовательность пикселей, этот файл можно напрямую записать из экселя. при открытии файл откроется как rgb но создать аналогичный файл и перекопировать каналы R->L, G->a, B->b.
Спасибо! Я не понял, что речь о photoshop raw.
Но мне нужен LAB. Конвертировать LAB в RGB и обратно - довольно сложно. Начиная с того, что Lab 100;0;0 можно без потерь конвертировать в RGB 255;255;255. Но Lab 100;1;1 конвертируется в RGB уже не совсем корректно - светлота будет уже меньше 100.
Нужен формат, который напрямую пишет цвет в Lab.
 

~RA~

Одарённая.
12 лет на форуме
Сообщения
11 860
Реакции
3 450
Нужен формат, который напрямую пишет цвет в Lab.
Создаёте из вашей таблички текстовый файл такого вида
Код:
# ImageMagick pixel enumeration: 3,2,0,65535,cielab
0,0: (34891,53351,50039)
1,0: (30295,19481,45591)
2,0: (21166,53119,5047)
0,1: (34891,53351,50039)
1,1: (30295,19481,45591)
2,1: (21166,53119,5047)
потом

convert lab.txt lab.tif
и получаете заветный тиф.
Всё!
 

Вложения

  • Архив.zip
    1.3 КБ · Просм.: 112

splxgf

12 лет на форуме
Сообщения
7 742
Реакции
3 424
Попробую еще раз... формат raw это просто набор байтов, при открытии такого файла фотошоп спрашивает как вы хотите его интерпретировать.
Записать его можно значениями lab, фотошоп при этом каналы интерпретирует правильно, только откроет картинку в режиме (каналами) RGB, ваша задача после этого просто перемапить каналы в нужную цветовую модель. Просто три раза сделать копипаст и картинка уже будет в нужном виде, в lab без потерь.
 
Последнее редактирование:
  • Спасибо
Реакции: _MBK_

~RA~

Одарённая.
12 лет на форуме
Сообщения
11 860
Реакции
3 450
Но если у вас данные восьмибитные, то так

Код:
# ImageMagick pixel enumeration: 3,2,0,255,cielab
0,0: (136,208,195)
1,0: (118,76,177)
2,0: (82,207,20)
0,1: (136,208,195)
1,1: (118,76,177)
2,1: (82,207,20)
(82,207,20) это cielab(32.297, 79.1875, -107.86) в человекопривычном виде.
 
Последнее редактирование:

splxgf

12 лет на форуме
Сообщения
7 742
Реакции
3 424
в человекопривычном виде.
Да тут все для людей, разные размерности для L и ab. Если писать бинарник, то хранение отрицательных чисел в дополненном коде. Порядок старших/младших байт для разрядности свыше одного байта. Вобщем счастливой отладки.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 187
Реакции
10 844
Спасибо! Я не понял, что речь о photoshop raw.
Но мне нужен LAB. Конвертировать LAB в RGB и обратно - довольно сложно. Начиная с того, что Lab 100;0;0 можно без потерь конвертировать в RGB 255;255;255. Но Lab 100;1;1 конвертируется в RGB уже не совсем корректно - светлота будет уже меньше 100.
Нужен формат, который напрямую пишет цвет в Lab.
Вам не нужно ничего конвертировать - достаточно просто подставить каждому каналу lab нужное значение
 

~RA~

Одарённая.
12 лет на форуме
Сообщения
11 860
Реакции
3 450
счастливой отладки
А моем решении как раз все легко и просто, нужно лишь в Экселе при помощи незатейливой формулы перевести из человековривычной размерности в 0-255 и сохранить в текстовый файл.
 
Последнее редактирование:

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 187
Реакции
10 844
А вы исходник экселовский видели, в каком все таки формате там lab?
 

~RA~

Одарённая.
12 лет на форуме
Сообщения
11 860
Реакции
3 450

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 187
Реакции
10 844
Нет, мы гадаем. Сами ставим себе задачи и сами их решаем. ;)
Решать за дачу по четко заданному условию - неспортивно, любой дурак сможет.
Мы здесь для того, чтобы показать топикстартеру, что именно ему надо, когда он сам понятия об этом не имеет, причем, упирается изо всех сил. '))'