Свежие комментарии

Title Comment
>отключите кэширование

>отключите кэширование кекстов.

Как?
(гугл не помог)

Может VS выключает virtual address space randomization, стэк

Может VS выключает virtual address space randomization, стэк/куча оказываются в определённых местах и всё случайно срастается. В линуксах это можно сделать снаружи через personality(2). Возможно в винде есть что-то похожее.

Ещё вариант влияние трэйсинга процесса. В линуксах ptrace(2) может немного влиять на повидения отлаживаемого процесса, даже если дебаггер руками в процесс не лезет. В частности, на обработку сигналов.

ЯнпольКолор Вам в помощь.

"Просто мне пришла идея, экспонировать каналы по отдельности,.."
От меня эта идея давно уже ушла. :)
Причин несколько:
- Как это сделать в камере для одномоментной экспозиции?
- 3 экспозиции?! - А совмещать потом как? (Или у Вас НЕ зеркалка?)
- Поканальные экспонометрические кривые - НЕ ПРЯМЫЕ,=>, тени/середина/света разъедутся по балансу белого.

Или в последнем утверждении я не прав???
Тогда почему фотошопом правятся практически все фотографии, даже если не надо фотоЖабить?
Можно, конечно, кастомный профиль наваять, для ВСЕХ источников света... ;)

На хоботе я уже пару раз предлагал побаловаться объективом ЯнпольКолор, который для печати.
Им какой любое освещение можно скомпенсировать прямо при съёмке!
Но народ сразу сливался. :( И почему бы?!.. Стоит копейки. Не из-за дырки же!.. :D

Как мне кажется, все эту "непрямоту" видят и правят, но при съёмке лень об этом вспоминать.

Дык все релизное. И DLL-ки (MSVC runtime) подставляются - ре

Дык все релизное.
И DLL-ки (MSVC runtime) подставляются - релизные, msvcr100, а не msvcr100d

debugging heap, если я ничего не путаю, отличается от просто

debugging heap, если я ничего не путаю, отличается от просто хипа.

Ну я бы - если бы встала

Ну я бы - если бы встала такая задача - это место бы напрограммировал.

Готовых средств не знаю, но это не означает что их вообще нет, просто не знаю.

А ещё, может быть вы знаете,

А ещё, может быть вы знаете, как чб мозайку превратить в цветную мозайку, без дебаера, аналог RAW composite с отключенным 2x2 pixel в RawDigger?

Ну вот без программирования -

Ну вот без программирования - честное слово, не знаю.
Если без дебайера, то можно фотошопом собрать по слоям. А собрать файл в котором будут две нулевые компоненты в каждом пикселе - не знаю чем.

Ну, как дебайерезировать pgm*

Ну, как дебайерезировать pgm* мозайку я нашёл, например, плагин к ImageJ есть. Но как 4 разных картинки собрать в мозайку, вопрос открытый. С матлабом для меня сложно заморачиваться, я не кодер, я фотолюбитель)

Причем тут это? The QSettings

Причем тут это?

The QSettings class provides persistent platform-independent application settings.

А я вот спрашиваю про

Представим себе какой-то обычный GUI(Windows)-диалог с настройками. Там галочки, пимпочки, выпадающие списки, общим числом с полсотни-сотню, например (5 табов по 10-15 параметров, так и получится).

Ну и дальше там.

Как вот QSettings помогут поставить Defaults по кнопке 'Reset Defaults'?

Лол. Используйте QSettings и

Лол. Используйте QSettings и будет вам счастье

Ну я вот думаю, что

Ну я вот думаю, что экспериментировать вообще надо в Матлабе или чем-то похожем (а данные туда собрать через 4channels).

А когда заработает - ну запрограммировать на чем-то. На Halide, к примеру.

Ну это да. Тут недавно кто-то

Ну это да. Тут недавно кто-то предлагал отдельные каналы уншарпить до интерполяции, интересно как. Просто мне пришла идея, экспонировать каналы по отдельности, своего рода альтернатива магента-фильтру.

Вынуть - с помощью программы

Вынуть - с помощью программы 4channels из LibRaw.

Дальше - не знаю.

Подскажите, какими средствами

Подскажите, какими средствами можно из 3 разных RAW файлов достать 3 разных канала, собрать их в однин файл и интерполировать.

Дык двойное лучепреломление

Дык двойное лучепреломление же.
в первом приближении (абстрагируемся от неидеальности материала) никакого рассеивания/"размытия" нет.

А как дельта функцию

А как дельта функцию реализовать физически (в этом вот фильтре)? А дальше вопрос размера кернела и как быстро оно затухнет до практически применимых величин.

Действительно, разве есть

Действительно, разве есть какая-то (а тем более принципиальная) разница между гладкой непрерывной функцией и конечной суммой дельта-функций ? :-))

А разве есть какая-то

А разве есть какая-то принципиальная разница сколько там будет пятен. Одно большое или много маленьких?
И кстати ходють слухи, что при deconvolution происходит усиление шумов, если не делать специальных телодвижений. :-)

<b>>> Я обязательно всем этим займусь всерьез, но не раньше

>> Я обязательно всем этим займусь всерьез, но не раньше осени. <<
А может лучше начать с качественного поканального (до демозаика) шумоподава ?
Сдаётся мне, что это более разумное приложение усилий, да и микроконтрасту может заметно полегчать.

В таком случае никон Д800Е -

В таком случае никон Д800Е - вообще гониво голимое (ибо объявленной техникой действие АА-фильтра не обратимо) :-Ъ

А вот врут, что АА-фильтр

А вот врут, что АА-фильтр делает из одной точки - четыре (а не одно большое пятно)

"шарпинг" делается

"шарпинг" делается посредством внесения артефактов, создающих "иллюзию" повышения резкоcти... _зачем_ вносить артефакты на самой начальной стадии обработки ? чтобы они потом (неконтролируемым) образом усиливались, разваливая "иллюзию" ?
более того, я не уверен, что такое действие облегчит демозаику

соотв. вопрос: а чего в этой затее (априори) разумного ? :-)

Тогда нужно определиться чего

Тогда нужно определиться чего же мы желаем.
1. Улучшить микроконтраст (исходная тема топика)
2. "Откатить" действие low pass фильтра.

Первая задача косвенно связана с повышением "разрешения" - никаких новых деталей никто не добывает, а просто делает видимыми уже существующие "микроструктуры" (текстуры & etc)
Вторая задача - попыптка поднять пространственное разрешение, "срезаное" LPF.

Если разумность и осуществимость первой задачи не вызывает особых сомнений, то разумность и выполнимость второй задачи не столь очевидна.
Для начала было бы не дурно понять, что такое этот самый LPF есть и как он работает. По идее этот тот самый "фильтр из теоремы Котельникова", который срезает высокие частоты. Если он справляется со своей задачей, то любые попытки "борьбы с влиянием AA-фильтра" суть шаманство, причём вредное (с точки зрения результата) - по сути это пресловутые "поиски чёрной кошки в тёмной комнате".

Иными словами, прежде чем искать способы борьбы с влиянием АА-фильтра, нужно убедиться (доказать), что его действие суть "свёртка у которой детерминант не нуль (т.е. матрица обратима)".

lyrics: предположим, что нам удалось обратить действие LPF, тогда мы получим паразитные высокачстотные шумы, для подавления которых и используется входной низкачастотный фильтр... кому нукжно такое счастье я не знаю. ,-)

Здравствуйте! А не могли бы

Здравствуйте!

А не могли бы вы еще раз выложить эти архивы? А то сейчас пытался их скачать, а там уже все поудаляли. Спасибо!

Со временем - будем. Пока вот

Со временем - будем.

Пока вот - мне не на чем потестировать.

Retina етить ее

Купил макбук с ретиной и тут же обнаружил что RawDigger ее не поддерживает :( Будете на это тратить свое время, как скажите?

>А касаемо кода - воткните

>А касаемо кода - воткните -O3 и код станет другой.
Никаких изменений
Linux gcc-4_5-branch revision 167585

> А может ли компилятор

> А может ли компилятор понять это через статический анализ? Например, если указатель изначально поставлен правильно и инкрементируется в цикле на правильное число?

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

А касаемо кода - воткните -O3 и код станет другой.

_mm_load_ps - читает 16 байт

_mm_load_ps - читает 16 байт (в регистр).

Все немного сложнее.
Из кода

float in[]={0,0,0,0,0,0,0,0};
__m128 a, b,c;
scanf("%f%f%f%f%f%f%f%f", in,in+1,in+2,in+3,in+4,in+5,in+6,in+7);
a = _mm_load_ps(in);
b = _mm_load_ps(in+4);
c = _mm_add_ps(a , b );
float out[4];
_mm_store_ps(out, c );
printf("%f %f %f %f", out[0],out[1],out[2],out[3]);

получается только одно чтение в регистр. Операция сложения получается такой:
...
movaps 32(%rsp), %xmm0
movl $.LC1, %edi
addps 48(%rsp), %xmm0
...

Т.е. _mm_load_ps не обязательно поместит что-нибудь в регистр.

Компилятор, конечно, может породить код, который на рантайме проверяет, какой дали указатель

А может ли компилятор понять это через статический анализ? Например, если указатель изначально поставлен правильно и инкрементируется в цикле на правильное число?

Pages

Subscribe to comments_recent_new