LINUX.ORG.RU

Вышла первая версия аналога OpenCV — DCV 0.1

 , dcv,


4

7

Состоялся релиз первой версии компьютерного зрения DCV. DCV является аналогом OpenCV, написанным на языке D. В отличие от OpenCV, DCV — крайне компактная и простая библиотека. В настоящий момент исходные коды системы занимают всего 1 MB, однако, несмотря на свои крайне компактные размеры, DCV поддерживает не только работу со статическими изображениями, но и захват видео.

Настоящая версия DCV фактически является фреймворком для построения систем компьютерного зрения и позволяет легко внедрять в себя новый функционал.

DCV базируется на крайне удобной библиотеке работы с многомерными массивами — ndslice, которая является более функциональным аналогом Numpy из Python.

С примерами работы системы можно ознакомиться в официальном репозитории проекта.

>>> Подробности

★★

Проверено: Klymedy ()
Последнее исправление: Psych218 (всего исправлений: 7)

Ответ на: комментарий от pudding

Ещё один новомодный хипстерский язычок?

Ты D с Go попутал. D это фактически плюсы без костылей.

Xroft ★★
() автор топика

ndslice, которая является более функциональным аналогом Numpy из Python

оо спасибо за наводку :) прохожу курс по машинному обучению, где используют Numpy, крутая штука

eReSik ★★
()
Ответ на: комментарий от pudding

Ещё один новомодный хипстерский язычок?

Это уже старомодный хипстерский язычок.

Esper
()
Ответ на: комментарий от pudding

Ещё один новомодный хипстерский язычок?

Ему уже больше 10 лет. Язык конечно имеет некоторые свои уродливые бородавки, но весьма удобен в использовании (по сравнению с C++). Это тот случай, когда ты занимаешься непосредственно своей задачей, а не огородом костылей, помогающих обойти проблемы языка, чтобы потом когда-нибудь приступить к решению задачи.

m0rph ★★★★★
()

В настоящий момент исходные коды системы занимают всего 1 MB, однако, несмотря на свои крайне компактные размеры, DCV поддерживает не только работу со статическими изображениями, но и захват видео.

Не то, чтобы злорадствую. Но слова о «компактных размерах» означают на практике скудный набор реализованных алгоритмов предметной области (ради которых, собственно, библиотека и создаётся). Как вообще это можно подавать в виде достоинства? Захват видео - тривиальная вещь при использовании ffmpeg или gstreamer. CV-библиотека - вещь неслабо нишевая, самые серьёзные вещи в ней будут создаваться людьми от науки, для людей от науки. Си - lingua franca, в том числе, для академической среды. ПМСМ наблюдаем использование D ради использования D. В Project Roadmap нет ни сопряжения с другими языками для написания алгоритмов, ни биндингов к другим языкам. Это помешает взлететь проекту - все подряд не ломанутся портировать все алгоритмы из OpenCV в DCV.

Andrey_Utkin ★★
()

О, отлично! Странно что я ее проглядел. Мне сперва казалось, что это биндинг к OpenCV а потому особо не вглядывался.

wolph ★★
()

Видел тред на первой странице

f3nrir
()
Ответ на: комментарий от anonymous

Скорее всего, жуть - у меня компиляция простенького терминала повесила ось, чего на C не замечено.

Ancient
()

Можно подумать, что кто-то, кроме этих двух фанбоев-коммитеров, будет D для систем компьютерного зрения использовать.

Deleted
()

А скажем нельзя ли прикрутить к этой системе компьютерного зрения сервис ФайндФэйс из ВПашки, и находить например акки телеведущих, настроив эту программу на считывание новостных передач и выгрузку данных в ФайндФэйс?

anonymous
()

Отличная новость для 3.5 пользователя этого языка!

anonymous
()
Ответ на: комментарий от Pavval

А что мешало не велосипедить, а запилить байндинги к OpenCV?

OpenCV если не ошибаюсь имеет C++ интерфейс? Вот это и помешало.

m0rph ★★★★★
()

"... крайне мала!" Много слов «крайне».

А так, полезно когда есть альтернатива

Zidane
()
Ответ на: комментарий от eReSik

А как там с практикой? Упражнения и примеры (применимые на практике) есть?

wolph ★★
()
Ответ на: комментарий от pudding

Да нет, Це, это костыли без плюсов.

AVL2 ★★★★★
()
Ответ на: комментарий от anonymous

Ок, все хорошо кроме одного. Зачем делать это на D?

В мире полно «ждунов», которые боятся использовать язык, пока на нем не будет реализованно что-то стоящее какой-нибудь крупной компанией. Но есть и такие люди, которые просто выбирают подходящий и интересный им инструмент и используют его для решения своих задач.

m0rph ★★★★★
()

Ура! Наконец-то что-то интересное на D. У них в коде интересная манера импортировать одиночные функции, а не целые пакеты.

unDEFER ★★★★★
()

Не понятен выбор D. Биндинги к нему не сделать, насколько я знаю. GC для математики - это вообще прикол.

Нужно было на расте писать.

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

А D - надмножество сишки. Кому надо - сишное апи и так подключит и так заюзает.

wolph ★★
()
Ответ на: комментарий от RazrFalcon

GC для математики - это вообще прикол.

Вы могли бы зайти на гитхаб и поискать по слову «@nogc» И обнаружить там файлик memory.d

В заголовке:

import std.experimental.allocator.mallocator : AlignedMallocator, Mallocator;

И сигнатуру функции

@nogc @trusted T[] alignedAlloc(T)(size_t count, uint alignment = 16)

Этого было бы достаточно, чтобы не писать в пятисотый раз избитый аргумент про ГЦ.

wolph ★★
()
Ответ на: комментарий от RazrFalcon

А в чем проблема в использовании GC в целом?

А в принципе, не хочешь GC - делаешь

extern(C) __gshared string[] rt_options = [ "gcopt=initReserve:100 disable:1" ];

wolph ★★
()

Привет от команды opencv

Как говорят англичане, вырастить настоящий английский газон очень просто - нужно посадить траву на ровный участок земли, и после этого регулярно поливать и подстригать его в течение 200 лет :)

Короче говоря, мы всячески приветствуем это начинание и надеемся что ребята продержатся хотя бы несколько лет :) Пока мало кому это удавалось.

Немного критики. Смотря на код библиотеки чувствуется недостаток масштаба в подходе. Переписывать базовую функциональность конечно можно, только 1) библиотека на D врядли когда-нибудь обгонит OpenCV по скорости и 2) сейчас это особо никого не заинтересует, ведь есть OpenCV.

Нужно сделать хотя бы одно очень крутое демо, чтобы народ посмотрел и сказал «вау!». Еще лучше серию демо. Начать можно хотя бы вот с этого уровня: https://www.youtube.com/watch?v=OUbUFn71S4s

V_P
()
Ответ на: комментарий от anonymous

А зачем в 21 веке писать на С++?

Чтобы хипстеры в код не совались.

Pavval ★★★★★
()
Ответ на: комментарий от Xroft

Ещё один новомодный хипстерский язычок?
Ты D с Go попутал.

А, точно! D - это старомодный хипстерский язычок :)

D это фактически плюсы без костылей.
Xroft

Ага - щаз! Это скорее костыли без плюсов! :)

anonymous
()

Поехали. Одни пишут на D другие на Go. Вавилонская башня. Может хватит силы распылять? Фортран вон линкуют и ничего....

dmxrand
()
Ответ на: комментарий от Pavval

А что мешало не велосипедить, а запилить байндинги к OpenCV?

Наверное то, что она как сишная либа нормально юзается из D?

ioway
()
Ответ на: комментарий от wolph

в большинстве случаев

Статистикой не поделитесь? Если и используют, то вряд ли в риалтайм обработке видео. А для картинок и так сойдёт.

RazrFalcon ★★★★★
()
Ответ на: комментарий от pudding

тред про D
Ещё один новомодный хипстерский язычок?

D был уже тогда, когда тебе мамка интернетом самостоятельно разрешила пользоваться.

slon
()

Есть ли проект, где эта библиотека используется? Если нет, то всё это бесполезно.

Quasar ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.