Я привязал свой сканер изображений (физическое устройство) к URL-адресу с помощью некоторой магии питона, скажем, это http://localhost/scan?parameters=scan-parameters
, и я пытаюсь написать для него веб-интерфейс.
Как вы, наверное, понимаете, полное PNG-изображение возвращается из этого URL через несколько секунд или даже минут, в зависимости от настроек сканирования.
Я могу просто сделать <img src=url />
, и это позволяет мне наблюдать, как изображение сканируется в режиме реального времени. Я даже могу добавить правило css filter: invert(100%)
, чтобы фильмы, которые я сканирую, выглядели хорошо.
Но я бы хотел пойти дальше и сделать некоторые гамма-коррекции на изображении, чтобы оно выглядело еще лучше. Проблема здесь в том, что я не знаю, как получить доступ к пиксельным данным, пока изображение все еще загружается. Я могу нарисовать его на canvas
, но для этого мне нужно, чтобы он был полностью загружен.
Единственная идея, которая у меня есть, - это загрузить изображение вручную и декодировать его пиксели также вручную (т.е. записать js PNG-декодер). Но я хотел, чтобы все было просто.
CSS-шейдеры могут работать, но похоже, что они заброшены.