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

Title Comment
Да просто поток несжатого

Да просто поток несжатого сырого видео идёт с камеры и огромный проект не в одну сотню тысяч строк кода написан на Delphi. Да и всё написано на Delphi за долгие годы. Debayer сейчас делаю ф-цией из SDK pvAPI для камер от Allied Vision Technologies. Но, он довольно скудный и не имеет настроек. Даёт вполне сносный результат для индустриальных применений.

Ну да, для вашей задачи она и

Ну да, для вашей задачи она и не предназначена, open_bayer прикручен сбоку изолентой.

В поддиректории doc лежит

В поддиректории doc лежит несколько html файлов, к которых нет ничего про open_bayer. В общем, я понял, что libraw крайне неудобная библиотека.

Результат дебайеризации

Результат дебайеризации (после open_.../unpack()/dcraw_process()) будет у объекта LibRaw внутри (что, IMHO, достаточно ясно написано в документации/примерах).

То, что на объекте я понял.

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

Я так понял результат open

Я так понял результат open_bayer возвращает в том же входном массиве?

Нет, вы поняли неверно.  LibRaw вообще работает на объекте LibRaw, каких-то отдельных вызовов "не в этом контексте" там и нет (из существенных).  LibRaw::open_bayer() - это аналог LibRaw::open_file, но открывает не файл, а массив в памяти.

Уже это выяснил. Точка

Уже это выяснил. Точка доступа в libraw.dll к функции open_bayer не найдена. Это плохо. DLL получается не универсальная и языковозависимая. Это чтобы выкрутиться придётся писать ещё одну DLL уже на мрачном С++, чтобы она экспортироала правильно функцию open_bayer, которую можно вызывать из любого языка. Я так понял результат open_bayer возвращает в том же входном массиве?

open_bayer - это метод

open_bayer - это метод объекта LibRaw.

Ну так можно из С++ вызвать

Ну так можно из С++ вызвать open_bayer не используя её в качестве метода объекта rp? Если да, то данную функцию можно вызывать из любого языка, не только из Delphi. Нужно лишь портировать вызов с С++ на Delphi. Мне много где так удавалось сделать.

да, rp - это объект LibRaw, C

да, rp - это объект LibRaw, C++

Как из дельфи работать с C++ я не знаю.

То есть достаточно из DLL

То есть достаточно из DLL импортировать вот такую ф-цию и её вызывать?
open_bayer(unsigned char *data, unsigned datalen, ushort _raw_width, ushort _raw_height,
ushort _left_margin, ushort _top_margin, ushort _right_margin, ushort _bottom_margin,
unsigned char procflags, unsigned char bayer_pattern, unsigned unused_bits,
unsigned otherflags, unsigned black_level);
Этот вызов получается, нужно портировать в Delphi. unsigned - это я так понял 32-х разрядное беззнаковое? Обычно это unsigned int.
В примере openbayer_sample.cpp эта ф-ция правда является методом некоего объекта rp, который имеет тип LibRaw. Не очень понятно, что это за объект.

Ответил в другой, тоже

Ответил в другой, тоже нетематической ветке: https://blog.lexa.ru/comment/51268#comment-51268

Вопросы по Libraw лучше бы задавать у ея на сайте (libraw.org или libraw.su), так больше шансов, что если кому понадобится, то он там найдет, а не у меня в блоге.

В свежих LibRaw есть вызов

В свежих LibRaw есть вызов open_bayer() и пример openbayer_sample.cpp, ровно под эту потребность.

Debayering 2D arrays

Возникла потребность сделать дебайер для массиву данных. Он получен с камеры и представляет из себя просто двумерный массив в памяти. Какую функцию можно из libraw можно для этого использовать? Судя по описанию она работает с файлами, полученных с разных камер. А, мне нужно просто с массивом, который расположен в памяти. Используемый компилятор Delphi-7.

Bebayer

Возникла потребность сделать дебайер для массиву данных. Он получен с камеры и представляет из себя просто двумерный массив в памяти. Какую функцию можно из libraw можно для этого использовать? Судя по описанию она работает с файлами, полученных с разных камер. А, мне нужно просто с массивом, который расположен в паяти. Используемый компилятор Delphi-7.

зато качество лучше (у FF) =

зато качество лучше (у FF) = http://www.photonstophotos.net/Charts/PDR.htm#Pentax%20K-1%20II,Pentax%2...(APS-C),Pentax%20K-5%20IIs

Похоже, что автор потратил на

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

Это ж, вроде, давненько было...

Я сам не смотрел - мне не надо.
Но факт, цветёт и пахнет. :-)

Пост оттуда:
"Полезность данной программы невелика, а защита там стоит довольно сложная. Похоже, что автор потратил на механизм защиты бОльшую часть времени написания и отладки сабжа. Глупо, абсолютно бессмысленно, но такие кодеры встречаются. Тут многие смогли бы убрать защиту, да прога эта никому не сдалась, разве что поиграться."
Повеселили. :-D

Я видел эти "Ломалки", там

Я видел эти "Ломалки", там отличный вирус внутри.....

Это не шутка, это пункт устава.

Это пункт устава, написанного кровью (как и любой устав!) юзеров и сисадминов.
Более того, их 2:
1. Работает - не трогай.
2. Если что-то не так - сноси обновлённые драйвера и ставь родные драйвера (с диска из коробки с оборудованием).

оффтоп: кстати ваш софт уже активно взламывают. На сегодня увидел FastRawViewer 1.5.0
Отличный софт, ИМХО!

О, публикатор (редактор HTML)

О, публикатор (редактор HTML) абзацы переставил, а я не посмотрел

«Для обхода этой проблемы,

«Для обхода этой проблемы, FRV 1.5.1Это не решает»

Ха-ха.

Ха-ха.

У Intel 10nm на стол — скорее всего в 2021 году. Если не в 2022.

https://tweakers.net/nieuws/151984/roadmap-toont-dat-intel-in-2021-nog-d...

Ну вот потому и ждём Zen2,

Ну вот потому и ждём Zen2, посмотрим, что там с AVX2.

У меня вот видишь задачи разные. Есть для AVX, есть для мультитредига :-) Хочется одну корбку а не две

16 ядер и 2-канальная память?

16 ядер и 2-канальная память?

На TR я смотрел, но смотрел еще на AVX2 performance (график выше) и огорчался. Ну то есть это процессор под странные задачи, у меня таких нет (мои - кушают AVX2)

Про только тестами — это

Про только тестами — это очевидно, да. Если бы можно было на пару суток раз в пару недель арендовать такую систему (эксклюзивный доступ к ней) мне бы и хватило для моих тестов.

Но я посмотрел на соовтествующие инстансы на AWS — ОЧЕНЬ дорого.

Вообще-то AMD начинает с

Вообще-то AMD начинает с десктопных. EPYC они выпускают когда отработают всё на десктопе.

И Threadripper на 16 ядер на Zen сейчас вполне можно купить, если бы не AVX-256 я бы уже.
Ну вот, $600, не $500, но всё равно:
https://www.amazon.com/AMD-Threadripper-32-thread-Processor-YD195XA8AEWO...

А вот за те же деньги Zen+ 12 ядер:
https://www.amazon.com/AMD-Threadripper-24-Thread-Processor-YD292XA8AFWO...

В общем, у AMD куда лучше предложение по многоядерности, чем у Intel уже сейчас (но пррямо сейчас AVX256 огорчает).

А в Zen2 по слухам будут просто Ryzen'ы с 16 ядрами, а Threadripper'ы пойдут дальше.

И, думаешь, в десктопном

И, думаешь, в десктопном процессоре будет 16 ядер и полноценный AVX2, а в серверном - хрен?
Или сначала будет серверный, а уже потом, хз когда, 16 ядер на десктопе?

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

Ну вот потом и жду (ждал?)

Ну вот потом и жду (ждал?) Zen2.

У Zen2 подтвердили full-width

У Zen2 подтвердили full-width AVX256 (у Zen и Zen+ — да, последовательно по 128 бит), но 512 не будет.

Pages

Subscribe to comments_recent_new