2016

Новые версии

RawDigger 1.2.7, FastRawViewer 1.2.5

В обеих программах обновилась поддержка камер (часть, впрочем, уже была в RD):

  • Phase One IQ3 100Mpix, IQ150
  • Fujifilm X-Pro2 (только нежатые RAW), X70, X-E2S, X-E2 firmware 4.0
  • Leica M (Typ 262), X-U (Typ 113)
  • Olympus Pen-F
  • Panasonic DMC-TZ80/81/85/ZS60

Кроме того, в FRV небольшие доделки:

  • Дата создания/модификации файла сохраняется при копировании и перемещении
  • Исправлена ошибка, возникавшая при чтении поврежденных файлов .eip
  • Поддержка черно-белых JPEG-превью

 

Qt ненависти псто (3)

А вот, значит, еще про Qt.

Допустим, у нас есть QListView (с кастомными элементами, но это в данном случае несущественно). В нем мелко показаны фигульки.

Хотим: при клике на фигульку спрятать QListView и на его месте показать фигульку крупно (в QGraphicsView, хотя это тоже не так и важно).

Первые грабли зарыты в "спрятать-показать". Если запихнуть их, скажем, в один QLayout и делать  QListView->hide(); QGraphicsView->show(), то оно может валится. Не всегда. При некоторых размерах окна. Ну ладно, сначала show/hide, а потом...

Qt MVC: ненависти псто - 2

А вот например Qt. Обычный такой QTableView на две колонки, хочется банального:

  1. Чтобы занимало окошко целиком, даже если строки короткие, иначе там odd/even rows некрасиво.
  2. Чтобы если строки длинные - был бы скроллбар.

Осложняется, правда, тем, что некоторые строки - HTML-ные, то есть их надо руками рендерить. Соответственно, для DisplayRole надо отдавать пустой текст (это я сейчас знаю!), HTML-ку получать другой ролью и рендерить самостоятельно.

И что вы думаете? ДВА ДНЯ. И то, полностью не победил, скроллбар в результате есть всегда. Ну хоть так.

При этом узнал, что SizeHint есть:

  1. В Q...ItemModel::data()
  2. В QTableView::sizeHintForColumn
  3. В QItemDelegate::sizeHint

Вот не могу сказать, что это были лучшие два дня в моей жизни. Казалось бы, таблица, что может быть проще.... ан нет.

Qt MVC: ненависти псто!

Вот есть такой Qt. А в нем полноценный Model-View: QAbstractItemModel (и потомки), QAbstractItemView (и потомки) ну и "контроллер", то есть делегат.

И вот допустим мы отображаем некий список (произведя его из QListItemModel) в некоем вью (произведя его из QListView). Стандартные средства - хороши, пока их хватает. Иконка, подпись, чекбокс, все есть. Раскраска - стайлшитом.

Идем дальше, стандартных средств не хватает, хотим нарисовать полоску/иконку/хреновинку. Ну отлично, QStyledItemDelegate, базовый класс нарисует основу, мы потом разукрасим.

Правда выясняется, что оформление...

О цветокоррекции (или репродукции?)

Пишешь в гугл-картинках "Серов портрет Ермоловой" и видишь такое:

Слова подходящие - не подбираются.

Покрутил дальше, есть вообше шедевр: http://www.dgr.ru/photoalbum/58992/20-sm.jpg

О шуме и зерне

Качал с DPReview очередные самплы и получился такой вот скриншот:

(кликабельно)

Я к тому, что вот технология примерно одного поколения, ожидаемый шум - тоже (да, там надо на замер смотреть, в этом месте может быть некоторая разница).

Но насколько лучше смотрится монохромный шум, чем цветной (ну и де-байера нет, который тоже добавляет)

RawDigger 1.2.4

По случаю выхода PhaseOne IQ3 100Mpix, пришлось обновлять RawDigger:

  • Исправлена ошибка в обработке поврежденных файлов .eip
  • Windoes: cохранение размеров главного окна: запоминаются статус максимизации окна и его размер до максимизации.    
  • Экспорт в CSV: целочисленные параметры (номер фрейма, номер сампла, координаты сампла) не заключаются в кавычки.
  • Лимит Disable RGB Rendering for files larger... увеличен до 200Mpix.
    Стандартное значение этого лимита для 64-битных версий: 120Mpix, но если вы работали с предыдущей версией, то сохранится значение от нее (стандартное - 99Mpix для 64-биной версии) и для копания в 100Mpix-файлах может захотеться его увеличить (если нужен RGB-рендеринг).
  • Exiftool обновлен до версии 10.09
  • Поддержка формата PhaseOne 16-bit compressed
  • Поддержка камер:  Phase One IQ3 100Mpix

Брать на официальном сайте (или на официальном русском сайте)

Про MF backs

Спасибо неназываемому (он просил не называть) благодетелю, теперь у нас есть самплы со всех PhaseOne P- и IQ-series и с большого числа задников Leaf. 75 гигабайт.

Вот рассматриваю я их, особенно сделанные на длинных выдержках (десятки-сотни-тысячи секунд) и не могу понять:

  1. Вот есть равчики, у которых на выдержках в десятки секунд - уже привычный нам на других (мелкоформатных) камерах шум. Ну, OK, все понятно, чудес нет.
  2. А есть такие, что там сотни-тысячи секунд (натурально, до часа) - и они чистые.
    Да, ISO50 обычно. Но чистые: ни хотпикселей, ни бэндинга, ничего. Shadow Boost наш кажет чистые приятные тени.

Вот, блин, как они это делают? Это RAW, никакого специфического процессинга у нас нет, смотрю я естественно FRV и RawDigger, чем еще....

То есть я конечно докопаюсь, у Фазы в метаданных есть и карта хотпикселей и много всего другого интересного, но вдруг кто из знает без этих копаний?

 

Про Nikon D5 и ее 3 миллиона ISO

Значит всем, кто радуется ISO 3млн на 21-mpix спешу напомнить:

  • На ISO 100 уровень насыщения (т.е. белого) - 3200 фотонов на квадратный микрон. Просто, я извиняюсь, по стандарту на эти самые ISO (при измерении чувствительности по saturation).
  • Площадь одного пикселя у D5 - 40 кв. микрон (при заполнении площади сенсора пикселями на 97%, удобно оказалось округлить так)
  • Это дает нам 128000 фотонов на пиксель на ISO100 в белом (в насыщении).
  • Увеличиваем чувствительность в 30000 раз. Из ISO100 - в 3 миллиона.
  • Экспозицию укрутим, понятно, в те же 30 тысяч раз, на 15 стопов.
  • Фотонов на пиксель будет 4.27
  • Умножаем на квантовую эффективность, пусть она будет 0.7 (это со всеми цветными светофильтрами, на самом деле 0.7 - завышенное значение).
  • Электронов на пиксель получается 3. Три, блин, штуки. В белом (насыщении).
  • В точке серого, которая в лучшем случае в 5.5 раз ниже (18%) электронов будет 0.
  • Нет, понятно, статистический разброс, то-се, в каких-то местах "в сером" их будет больше 0.
  • И это все - для идеальной т.е. никак не шумящей камеры, про шумы мы вообще не говорили.

Продолжайте читать маркетологов, они вам расскажут!

Q: Gaussian blur

Вот значит пишу свой Gaussian Blur, прямо по статье в Википедии

Ну не совсем прямо, конечно, а в два прохода и (буду) с использованием hardware linear interpolation в GPU, чтобы поменьше самплить, но вопрос мой не в этом.

Хочется: чтобы попугаи в моем фильтре были бы такими же, как у Фотошопа. И вот тут загвоздка:

  • "Радиус" на который нужно делать convolution kernel - три сигмы.
  • Соответственно, при сигме меньше 0.167 (радиусе меньше 0.5) - весь наш радиус вписывается
  • ...

Pages