AVX(2) data load

Граждане, что-то вот отчаялся понять, отчего может быть так что

Вот так - хорошо, профайлер в этом месте особых тормозов не показывает:

                __m128 p0 = _mm_loadu_ps(source);
                __m128 p1 = _mm_loadu_ps(source + 4);
                __m128 p2 = _mm_loadu_ps(source + 8);

 

А вот так - нехорошо:

                __m256 i0008 = _mm256_loadu_ps(fsrcstart3);
                __m256 i0915 = _mm256_loadu_ps(fsrcstart3 + 8);
                __m256 i1623
...

FastRawViewer 1.4.6: release

FastRawViewer 1.4.6 выпущен ограниченным тиражом ой, пока только на .RU-сайте (бету качали плохо, поэтому наберем тестеров таким способом). На .COM - ориентировочно в четверг-пятницу.

Брать тут: https://www.fastrawviewer.ru/download

Изменения скопирую вот прямо с официального сайта же, зря что ли писал....

...

Про МГТС и GPON

Вот в декабре сменил МГТС-овский тариф на 200 мегабит и как-то не было счастья, ну то есть 15-16 мегабайт/сек регулярно видел, а так чтобы 20-22 - редко.

Даже думал, не надо ли роутер менять с ПлохогоПути на что-то более современное.

Но нет, курсы английского для детей качаются честно на 22MB/sec, по всей видимости мои другие желания - менее общие и просто нужных источников на нужной скорости нет (ну и забугор все шейпят...).

 

FRV 1.4.7 (alpha): режим стандартной отметки файлов

Как знают все постоянные пользователи FastRawViewer, механизм отметки (выборки) файлов там сильно отличается от общепринятого (в Windows Explorer/Mac Finder/далее везде). Главное (и принципиальное) отличие: случайный клик мимо не сносит тщательно сделанную выборку. Это (базовое) отличие автоматически приводит и к другим, например текущий файл не обязан быть отмеченным.

Новые пользователи редко (но регулярно) жалуются на это, им непривычно. Чтобы сделать их жизнь чуть проще, в FRV 1.4.7 мы дополнительно реализовали и стандартный (общепринятый) механизм выборки/отметки. Пока нет планов делать его умолчанием...

FastRawViewer 1.4.6 release candidate

Несмотря на многочисленные отвлечения (1,2,3) от основных продуктов, FastRawViewer тоже не забыт и версия 1.4.6  близка к релизу как никогда ранее.

В прошлом анонсе (первой беты) уже было описано быстрое копирование в подпапку, а сейчас мы сделали еще одну штуку, которая, как мы надеемся, найдет свою аудиторию:

В большинстве цифровых камер можно защитить файл (это обычно называется Protect или Lock) т.е. установить атрибут Read-Only файлу...

Monochrome2DNG: полезный тул для пользователей конвертированных ЧБ камер

Преамбула: ч-б камеры, переделанные из цветных

Наверное не все знают, но есть в природе такие чудные штуки, как "черно-белые цифровые камеры, переделанные из цветных". Смысл в них в том, что байеровских фильтров нет, соответственно не нужен дебайер, соответственно нет артефактов дебайеризации.

Нет, есть и "настоящие", которые прямо с завода такие (лейки и фазаны), но речь именно о переделках.

У переделок - остается родная прошивка, которая о переделке не в...

LibRaw 0.19 (Beta1)

LibRaw 0.19 (beta1) (github)- это не только ценный мех, но и:

  • 1014 поддержаных камер
  • улучшенная обработка вложенных IFD в DNG
  • улучшенный разбор метаданных разных вендоров
  • улучшенная обработка превьюшек
  • вызов open_bayer для тех самоделкиных, кто дамп данных с сенсора имеет уже в памяти и без метаданных.
  • отсутствие поддержки LibRaw-demosaic-pack-GPLn, вместо них теперь сделаны callbacks, надеюсь что найдутся энтузиасты, которые demosaic packs прикрутят новым методом (а не через #ifdef как раньше).

Прошу любить, тестировать и жаловаться.

Camera market: итоги года

Готовлю релиз LibRaw 0.19, соответственно смотрю на списки камер. Предыдущий релиз был в декабре 16-го, то есть за примерно 15 месяцев:

  • Canon: 8 камер (и сегодня еще две, эти в подсчет не входят), две мыльницы, остальные - сменная оптика.
  • Fujifilm: 9 камер (из них одна анонсирована до отчетного периода, но появилась уже в нем; две - только на японский рынок)
  • Panasonic: 9 камер (точные даты анонсов не уточнял, что-то может быть и на фотокине показали и до декабря 16-го выпустить не успели т.е. частично ситуация может быть с фуджей). И еще 10-я, GH5s, в LibRaw 0.19 она не войдет.
  • А остальные все - кое-как:
    • Leica: 3
    • Nikon 3 (или 4, в одной вот сомневаюсь)
    • Olympus: 3
    • Pentax: 1
    • Sony: 4 (сегодняшний анонс не входит)

Ничего не хочу сказать этим списком, додумывайте сами :)

P.S. Это все про камеры с RAW. Камеры без оного в наши списки не входят.

И снова про (де)байер

Один и тот же кадр, но тот что слева - после дебайеризации, а тот что справа - без нее. Adobe Camera Raw 10.2.1, движки "по нулям", черно-белая камера без АА-фильтра. Кликните, чтобы увеличить:

При обесцвечивании (камера то ч-б) муар, понятно, теряет цвет, но не пропадает.

Если же взять объект, весь состоящий из мелких контрастных деталей, то даже и увеличения в 300% не надо, все видно и на...

Трудо-выебудни

Вот, к примеру, история:

  • Беру одинаковые исходные данные (RGB-файл) и леплю из него ч-б битмеп, двумя способами:
    • 3 компонента на пиксель (значения одинаковые)
    • 1 компонент на пиксель.
  • Запихиваю это все в libjpeg(-turbo), один и тот же код и степень сжатия, отличия только в cinfo.input_components и cinfo.in_color_space (out_color_space не ставлю, оно само ставится тоже в 3/1 соответственно)
  • Пишу результат в файл(ы)
  • Смотрю в эти файлы:
    • Фотошопом: файлы, как и ожидалось, неотличимы на глаз
    • IrfanVew: отличимы и
  • ...

DPRSplit: расщепитель Dual Pixel RAW файлов (Canon 5D mk IV)

Когда в руке микроскоп - все кажется гвоздями.

В качестве побочного эффекта от утилиты SonyPixelShift2DNG получилась рамка приложения, которую легко применить к какой-то еще задаче. И такая задача нашлась:

Как мы уже писали, камера Canon 5D Mark IV в режиме Dual Pixel RAW пишет два полукадра, один из которых экспонирован на стоп ниже. Достать этот (второй) кадр оттуда можно с помощью RawDigger, но во многих...

Sony A7R-III и L-bracket

Вдруг кому будет полезно....

После покупки Sony A7RM3 встала проблема L-bracket.  RRS-овский стоит $180, что как-то слишком, я уже давно с RRS перешел на китай и для кэнонов (и A7R-II) это проблему решало.

С A7R-III оказалось хуже. Камера новая, но по конструктиву в точности как A9, поэтому L-платки от A9 тоже должны подходить.

Сначала была куплена дешевая платка Fittest (для Canon...

Lightroom, XMP, removable storage

(скорее записка для себя, чтобы потом превратить в ответ для пользователей FRV)

Как знают пользователи Adobe Lightroom под Windows, эта программа угнетает пользователей сменных дисков (и флеш-карточек):

  • При импорте - не читаются XMP-sidecar файлы
  • После импорта: Metadata - Save to File - не работает как надо
  • Ну и Metadata - Read from File - аналогично.

Понятно что это убивает один из режимов работы FastRawViewer: нельзя разобрать/пометить файлы прямо на флеш-карточке, разобранное (с XMP-файлами) нужно скопировать...

SonyPixelShift2DNG: beta 0.8.3

По причине непонятных приколов Adobe DNG SDK (в многопоточном режиме на Win7 неверное считается Image Digest), переделали и улучшили многопоточную обработку:

  • В настройках добавлен параметр Processing Threads (диапазон от 1 до количества ядер CPU на машине, с учетом hyperthreading).
  • Поскольку каждый поток обработки может использовать до 700Mb памяти, стандартное значение нового параметра - 2.
    Если у вас много памяти и файлы лежат на быстром носителе (SSD, быстрый RAID), рекомендуем увеличивать данный параметр (до "сколько можно потратить памяти").
  • На 4-ядерном CPU (i7-7700k) увеличение до 8 - ускоряет обработку примерно вдвое.
  • Добавлен тайминг работы (анализа метаданных и конверсии)

Качаем тут:

Старые ссылки устарели, берите на странице программы: https://www.fastrawviewer.com/SonyPixelShift2DNG

FastRawViewer 1.4.6 beta2

Чтобы не было впечатления, что на эту программу забили, вовсе даже отнюдь и наоборот

Ссылки для скачивания. Устарели, берите с официального сайта: https://www.fastrawviewer.ru/download

Изменения:

  • Исправлена ошибка показа 4-канальных полноцветных RAW (включая ARQ)
  • Чтение пресетов баланса белого из метаданных файлов, преобразованных в DNG (для камер Sony, Olympus)
  • OS X 10.6: в контекстное меню файла/файлов вернулись пункты Copy To - Select folder, Move To - Select Folder (ранее были убраны из-за проблем в этом месте с OS X 10.6)
  • Новая (временная) настройка Interface - fixed bottom bar (font) sizes in pixels, для странных многомониторных режимов (в релизе будет убрана в дополнительные скрипты)
  • Опция Interface - Use Lion Fullscreen доступна теперь только на OS X 10.7-10.8 (на более новых она не нужна и только смущает)
  • (Windows, build 2017) Просочившаяся по ошибке настройка "использовать пиксельные размеры для нижней строки" - убрана "в скрипты". Предназначена для использования в случае двух мониторов сильно разного разрешения, при проблемах в отрисовке нижней строки. Включение - скриптом UseBottomBarFontPixels.reg

SonyPixelShift2DNG: beta 0.8.2

Освежили версию

Качаем тут:

Новое (крупными штрихами):

  • Рекурсивная обработка папок
  • Поддержка формата APS-C
  • В DNG пишутся теги NoiseProfile и BaselineNoise
  • Все настройки убраны в отдельный диалог настроек
  • Все лишние кнопки (About, Manual) перенесены в Menu - Help
  • ...

О жатых и нежатых RAW

Сформулировалось вчера в дискуссии о том, что дескать от жатых RAW только польза, ибо места меньше.

Вот чтобы не пропало, запишу:

  1. Если у пользователя есть настроенный и работающий процесс сохранения данных, то единственное о чем ему надо думать - это какие диски (или кассеты, если стример) покупать (в будущем) для замены существующих "по кругу".
    Даже в наиболее вопиющих случаях (130Mb DNG вместо 330Mb ARQ), цена вопроса - копейки  за файл (в буквальном смысле копейки: цена гигабайта сейчас - рубля 2-3 на HDD).
  2. Если же процесса бэкапа нет (это часто бывает в поле), то нежатые файлы гораздо безопаснее: один поврежденный бит у жатых - это файл можно отправлять в утиль (ну может если повезет - JPEG вынется), а у нежатых форматов - это один поврежденный пиксель и все.
     

SonyPixelShift2DNG (beta)

Как хорошо известно читателям этого блога (раз, два), в камере Sony A7R-III есть режим PixelShift: снимаются 4 кадра со сдвигом в ровно в пиксель, после чего можно собрать эти кадры в один и получить полноцветное изображение без демозаики (а зеленых каналов там будет аж два).

Помимо понятных ограничений (снимать можно только совсем статические сцены), при использовании этого режима есть и ограничения Workflow:

  • Комбинировать 4 ARW-файла в один
  • ...

Sony A7R-III: тросики

Есть у меня универсальный тросик Pixel TC-252 (точнее два, второй - TC-282 с радиомодулем, но пользуюсь я им редко). Он не только тросик, но и timelapse-контроллер.

К этому тросику у меня сменные хвосты под все камеры, включая Sony. Очень удобно, особенно если в наличии разнородные камеры, один девайс и несколько разных хвостов.

Так вот, с A7R-III все, на удивление, не так хорошо:

  • Тросик вроде бы даже и работает, по поднажатию фокусируется, по полному - снимает.
  • Но такое вот впечатление, что размер буфера ограничен тремя кадрами: если поставить серийную съемку и нажать на педаль, то снимется три кадра и все. Если сразуже нажать на педаль второй раз - 1-2. Когда буфер сбросится - опять три.
  • И та же ситуация с брекетингом, даже хуже: если поставить длину брекетинга в 5 или 7 кадров, то снимется три, а продолжение - опять с начала.

Спросил в сони-форуме, народ попробовал, с родным тросиком такого нет. Сегодня вот купил себе RM-VPR1, проверил лично, никаких проблем: длина серии ~70 (на compressed-формате), брекетинг тоже работает.

В чем фигня - не знаю. Можно ли вылечить ее сменой кабеля для Pixel - тоже не знаю.

Снова про архивный формат DNG

Вот возьмем, к примеру, камеры Sony.

У них есть "шифрованый" (см sony_decrypt() в dcraw) блок данных SR2, устроенный, если в двух словах, так:

  • TIFF/EXIF like IFD с небольшим количеством записей в которых лежит
    • смещение до блока данных
    • размер блока данных
    • ключ для расшифровки
    • ну и еще что-то, науке неизвестное, всего вот в A7RM3 - 9 записей (т.е. 9x12 + 2 байта в начале = 110 байт)
  • небольшой паддинг (в A7RM3 - 4 байта нулей)
  • Ну и
  • ...

Байер или не байер (2) или опять про PixelShift

Вдумчивые читатели подкололи (за что им спасибо): использованный для показа в предыдущем тексте кусок мишеньки - уже на пределе возможностей струйника. Контраст там еще какой-то есть, но он далек от задуманного 1EV.

Переставил штатив вдвое дальше, объектив тот же, используем вторую (более крупную мишень). С ней результаты у PixelShift (т.е. без дебайеризации) более разнообразные.

Вот линии, идущие под 45 градусов (кликните для просмотра в полный размер), это скриншот с фотошопа 600%:

...

Байер или не байер...

С наличием присутствия Pixel Shift mode в соньке появилась возможность проверить, сколько же полезного пикселя сжирает байер.

Моя любимая low-contrast resolution target, слева Pixel Shift, справа - один из исходных ARW (оба файла обработаны одинаково, а именно открыты в ACR и нажато OK). Это скриншот в фотошопе "500%", кликните для зумирования, иначе разницы точно не будет.

(в виде PNG выложено...

Я ваш Adobe DNG SDK труба шатал!

Продолжаю биться головой о стену DNG SDK .

Вот, к примеру, объявление функции

void dng_negative::SetStage1Image (AutoPtr<dng_image> &image);

Вот как я обычно делаю:

// MyClass.h class dng_image; // Никаких include "dng_.....h", просто forward declaration class MyClass { private: dng_image *image; };

И только там, где у меня implemetation для MyClass - там будет включено "dng_image.h" и мы, наконец, разберемся, что же это такое (а указатель... ну указатель, 4/8 байт, нечего про него знать, private)

Но если интерфейс у dng_negative требует AutoPtr<>,...

Про Adobe DNG SDK

Вдогонку ко вчерашнему.

При рассмотрении потрохов DNG SDK (каковой, конечно же, используется в Adobe DNG Converter, другой вопрос что публичная версия могла несколько устареть) объяснение такому поведению EXIF нашлось:

  • Структура dng_exif - это разобранный (в кучу полей) EXIF
  • Пишется EXIF-таблица - из этой структуры.
  • Соответственно
    • Если поле (тег) неизвестно (ну вот OffsetTime), оно не разбирается.
    • Если поле не разобрано - оно не пишется.
    • Если тег известен, то он может разбираться в несколько полей dng_exif
    • Так, к примеру,
  • ...

Про Adobe DNG Converter и "архивный формат"

Возьмем, значит, ARW-файл от Sony A7RM3 и скормим его Adobe DNG Converter 10.1

И начнем рассматривать EXIF (это у меня любимая забава).

В исходнике было:

 | | 0) ExposureTime = 0.025 (1/40) | | - Tag 0x829a (8 bytes, rational64u[1]): | | 143a: 01 00 00 00 28 00 00 00 [....(...] | | 1) FNumber = 3.2 (32/10) | | - Tag 0x829d (8 bytes, rational64u[1]): | | 1442: 20 00 00 00 0a 00 00 00 [...

Pages

Subscribe to blog.lexa.ru: все статьи