Pull to refresh
66
0.6

User

Send message

У меня была 3d камера от intel (usb3 это скоростная вебка с 240 инфракрасным режимом и железом для построения карты глубины), с ее sdk шла тьма утилиток, в т.ч. определения взгляда и т.п., Так вот, качество было отвратительное. Проблема в том что на основе именно изображения детектировать положение можно только приблизительно.

Что бы нивелировать эти проблемы, нужно использовать специализированные маркеры и софт к ним, которые на порядок повышают качество распознования без затрат процессора, тот же ArUco (это упрощенный qr код), его смартфоны на скорости в 10-30fps детектируют, если он будет большой (десяток другой сантиметров) то управление головой станет реальностью а не пыткой.

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

У нас разные понятия 'проще'. У автора например с руками проблема, и весь мир превращается в лучшем случае взять готовое или попросить другого. Быть зависимым от другого - очень тяжело.

Не думаю что крупные компании пострадают, планетарные монополисты так просто не умирают, они проще перекинут проблему на кого то по слабее.

Убытки в итоге понесут - венчурные фонды, розничные инвесторы, сотрудники стартапов (опционы), мелкие подрядчики и поставщики, а также компании, которые закупают инфраструктуру 'на вырост', который не случился.

у меня os/2 осталась в памяти как инструмент, эффективнее позволяющий эмулировать оперативную память на диске в файле подкачки для запуска игр с требованиями чуть выше чем есть в наличии, работало это сильно лучше чем из под windows, но пользовался я помню какой то сильно обрезанной версией (то ли готовую взял то ли сам ковырял) где был только консольный режим и в нем уже запускался dos.

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

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

Отдал идею на изучение ИИ, забраковал, типа отраженный свет слабый, экраны не идеальные, будут потери сигнала и т.п.

Самый простой и эффективный - вебкамера + отражатели на голове (цветные блестки которые на одежду крепят) + экран (стена/потолок). Блестки могут быть не только разного цвета но и формы (звездочка, крест, квадрат, круг... лучше в форме каких-нибудь fiducial markers типа ArUco/AprilTag только их придется делать самому, когда как разной формы можно купить готовые). Крепить отражатели лучше на чем то типа заколок в волосах и сережках в ушах (с ними сидеть долго удобнее чем в шапочке), максимум приклеить крошечные на висках, лбу и может носу. Направленное освещение на голову дает четкие солнечные зайчики на экран, которые ловит вебкамера, дальше вопрос калибровки. Саму голову можно детектировать как отправную точку, не говоря о том что маркер может быть прямым а не отражателем (но позиционная точность тут будет заметно ниже чем угловая). Подчеркну, что речь идет об определении угловой дельты при наклоне головы, а не самого угла, так как положение самой головы точно получить сложнее.

Для OpenCL были библиотеки поддержки ArUco и тем более простых ярких ярких точек, несколько их плюс стена+потолок дадут четкий вектор в 3d. Веб камер так же может быть несколько, с разных ракурсов повышают точность распознавания но усложняют код (обязательно заложить автокалибровку, разместив метки на стенах и потолке) .

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

p.s. почему идея с блестками (без маркера, просто точка) рабочая, можно найти в магазине фурнитуры для рукоделия миллионы разных стеклянных/пластиковых бусинок (крохотные от миллиметра) которые дают четкие отражения (чаще всего в небольшом пределе угола, не обязательно обратно в сторону светильника), это даже фичей считается. В темной комнате зайчики очень яркие, вопрос только в их количестве и калибровке (вот тут то цвета и понадобятся, они позволят различать несколько точек относительно их взаимного положения а дальше информацию берут из соседнего кадра и последней калибровки)

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

upd. https://eviacam.crea-si.com/

Так кто будет крайним в случае проблем из-за ИИ-агентов, разработчик или пользователь?

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

успешные... скорее исключение чем правило.

p.s. mozilla плохой пример, там платят деньги не за opensource, а за саботаж (что бы разработка не могла конкурировать с chrome) и ссылку поиска по умолчанию, именно поэтому mozilla foundation и ее глава занимается любой х..ней, кроме того что нужно.

буквально: посмотреть, что там, и поместить в соответствующую папку.

Найди-ка мне те фотки с отдыха, не помню где, мы там еще под водопадом с женой

теоретически какой-нибудь openhands ai способен на такое, если заранее подключить модель с vision либо дать ему соответствующий скилл через mcp, и конечно показать фотки жены и остальных 'мы', я видел как он даже со слабой qwen3-coder пытался делать очень странные вещи, качал библиотеки, пробовал их использовать... в последних версиях там сломали работу с браузером, а так он и документацию сам может читать.

Аналогия - много ли стран заинтересованы в северной корее? может только что в поставках навоза,.. не более.

Не вижу никаких предпосылок, что бы из России не делали что то иное.

google:gemini 3.1 pro

«Специально поставлю себе напоминалку, чтобы отправить этот текст в 2029 году.

То есть автор открыто призывает вообще удалить систему комментариев на Хабре! Текст сухой, деепричастия расставлены криво, а маркированные списки выдают 100% работу ChatGPT. Да и вообще это явная нативная реклама курсов по психологии. Главное тут помнить — комментарии в интернете обычно оставляют люди. Помню, у нас на заводе в 1995 году мы таких классификаций на перфокартах не делали, а просто переписывали всё на православном C++ вместо вашего тормозного Питона. Впрочем, методология статьи хромает, не учтено профильное исследование 2018 года, но за попытку ставлю "+"»

Спойлер: где здесь кто спрятан (нажми, чтобы развернуть)
  • 10. Некропост: «...отправить этот текст в 2029 году»

  • 1. Фантазёр: «То есть автор призывает удалить систему комментариев...»

  • 2. Эстетическая Бабка: «Текст сухой, деепричастия расставлены криво...»

  • 9. Бендер-Инспектор: «...выдают 100% работу ChatGPT»

  • 3. Лапшедер: «...нативная реклама курсов»

  • 4. Кэп Очевидность: «...комментарии оставляют люди»

  • 7. Оракул из кустов: «Помню, у нас на заводе...»

  • 11. Хранитель Скрижалей: «...в 1995 году на перфокартах»

  • 8. Адепт секты: «...на православном C++ вместо тормозного Питона»

  • 5. Жесткий Рецензент: «...методология статьи хромает, не учтено исследование...»

  • 6. Тихий Плюсатор: «...ставлю "+"»

Федеральная АНТИмонопольная Служба, он вообще соображают на сколько описываемая в статье деятельность далека от их целей, ради которых они создавались? И даже противоположна?!

Даже не могу сформулировать, какой же в стране бардак, если ФАС заставили заниматься этим бредом, собственно почему вообще этим занимаются? Реальными делами им уже не дают заниматься? гонять торговые сети уже не интересно, все крупные монополии уже разобрали те, против кого 'бочку катить нельзя'? И что бы не загнила 'от безделья' контора, через нее такие законодательные высеры пускают?

Проблему решает струйная фотополимерная печать ... но такие принтеры стоят дорого и занимают много места

...

Компания Simba 3D представила альтернативу — принтер QC2A

формулировка такая, будто этот принтер не струйный фотополимерник, но на офсайте судя по презентации это он и есть.

Когда уже наконец журналисты начнут вместо тупо рекламы давать хоть чуть чуть полезной информации?

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

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

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

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

Главное достижение Neuralink от Илона Маска это робот, который проводит операцию по установки этого чипа с невиданными до сих пор скоростями, вместо месяцев на восстановление - дни и даже часы.

ага, спасибо, сделал один запрос с тупейшим промптом:

вот код, помоги найти в чем он не оптимален

получил в ответе первым пунктом:

openai:gpt-5.2 api

Вот где в этом коде «не оптимально» (в смысле лишняя работа/лишние ограничения), и что можно улучшить.

1) Главная неэффективность: платная операция делается до фильтра

Сейчас пайплайн такой:

input
| transform(run_paid_request)   // "платим" за каждый элемент
| filter(even)                  // часть результатов выбрасываем

То есть run_paid_request вызывается для всех входных значений, даже для тех, которые потом не пройдут filter.

Если run_paid_request реально дорогая операция (как намекает название), это ключевая проблема.

Можно ли переставить filter перед transform?

Не напрямую, потому что фильтрация у вас по преобразованному значению:
фильтр: (i + 1) % 2 == 0.

Но это условие можно переписать через исходное i:

  • (i + 1) % 2 == 0i % 2 == 1 (то есть i нечётный)

Значит можно сначала отфильтровать нечётные входы, а потом платить только за них:

auto output = input    | std::views::filter([](int i){ return i % 2 != 0; })   // оставили только те, что дадут чётный результат после +1    | std::views::transform(run_paid_request);

Это уменьшает число вызовов “платной” функции примерно вдвое (для равномерных данных).

2) std::endl — лишний flush (медленно)

std::endl делает и перевод строки, и принудительный flush буфера. В циклах это сильно тормозит.

Заменить на '\n':

std::cout << "..." << '\n';

3) Слишком сильное требование к диапазону: forward_range

Вы используете диапазон ровно один раз, и вам достаточно input_range:

void process_data(std::ranges::input_range auto&& input)

forward_range более строгий (мультипроходность), и этим вы отсекаете часть потенциальных источников данных (например, некоторые потоковые/генераторные ranges).

4) static const auto run_paid_request = ... обычно не нужно

static тут не даёт выигрыша производительности, но:

  • усложняет (один объект на программу, а не на вызов),

  • может быть нежелательно для потоков/тестов/переиспользования.

Обычно достаточно обычной локальной лямбды:

auto run_paid_request = [](int i) { ... };

Вариант с исправлениями (минимально меняя смысл)

#include <iostream>
#include <ranges>
#include <vector>
void process_data(std::ranges::input_range auto&& input) {    auto run_paid_request = [](int i) {        std::cout << "pay for processing of " << i << '\n';        return i + 1;    };    auto output = input        | std::views::filter([](int i) { return i % 2 != 0; }) // чтобы (i+1) было чётным        | std::views::transform(run_paid_request);    for (int o : output) {        std::cout << "result: " << o << '\n';    }
}
int main() {    process_data(std::vector<int>{1,2,3,4,5});
}

Если скажете, что именно в реальном коде является “платной” операцией (I/O? сеть? CPU?), можно подсказать ещё более подходящую архитектуру (кэширование, батчинг, параллелизм, materialize в vector и т.п.).

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

Документация по классам, которые используются в вашем коде, и документации по тем классам, которые использует эта библиотека... вам ведь комплексный анализ нужен производительности?

Судя по рекламе (сам я не пользовался, у меня нет задач, для которых можно 'на поиграть' выкинуть 20-30т.р. в месяц) при использовании pro подписок есть агенты, которые в облачной песочнице умеют запускать код (эти агенты не в опенсорсе, как они работают никто не говорит), и если проводить аналогии я видел как работает открытый агент openhands даже с тупой открытой маленькой моделью,.. очень впечатляюще. Дальше я просто экстраполирую, деньгами и ресурсами уровень качества и возможностей поднимается на десятки процентов.

Гугл заявляли что их собственные решения уже оптимизировали их инфраструктуру, значимо и это было в прошлом году! openai заявляли, что они уже успешно использовали агентное программирование (с людьми само собой) только дорого для обывателя, так как по токенам там получались десятки тысяч баксов в месяц на маленькую команду (читай еще 1-2 такие же команды оплачивать, само собой компании это дешевле, поэтому такие траты оправданы, а вот нам смертным это скорее всего не по карману)

Разочарую вас, бесплатный copilot использует слабую модель или роутер, который по независящим от вас причинам может переключать между средней моделью и слабой.

К сильным моделям бесплатно доступ не предоставляется.

Я не знаю, какие агенты крутятся у openai, если купить 200$/месяц доступ, но слышал что компания экспериментирует в т.ч. с запуском кода, о котором модель тут же размышляет.

Так же я наблюдал, когда даже слабая модель qwen3-coder-30b-a3b при использовании в openhands ai, по мере работы с задачей, сама придумывала снипет на python что бы проверить работоспособность метода и вставить его в тесты, которые он же тут же разрабатывал.

ДА! современные модели все еще не надежны, тупы, переобучены (бенчмарки могут приводить к завышенным ожиданиям, когда как на поверку могут быть простым заучиванием), уж точно не детерменированы, не способны в oneshot решать сложные задачи, но вот у агентов на их основе шансов значительно больше...

в результате, когда у вас что то не получается с ИИ, нужно грешить не только на модель, но и на используемых агентов и на ваш промпт, на сколько полно вы предоставили модели информацию. Я не вижу в вашем промпте даже хотя бы выдержек из документации,.. а значит модель воспринимает код абстрактно.

К сожалению проблема не в фактах и не в их пониманием моделью, когда они в контекстном окне, а в поиске нужных среди большого их объема и составлении индексов.

Максимально верный способ поиска нужного факта, это когда к текущему контексту беседы (можно использовать саморизацию), добавляется следующий факт из базы по очереди, с вопросом - нужен ли он на текущий момент, с ответом да/нет, затем все нужные факты подсовываются в основной контекст беседы.

Дорого, медленно..

Есть RAG, но, к сожалению, делает это хоть и быстрее на пару порядков, но хуже и главное, лишний мусор... т.е. в вашем примере вместе с фактами о том что леша руководитель, вылезут анекдоты про Алешу, факты про руководителя соседнего отдела, а факт про порученный проект B2B затеряется в списке проектов, которые босс поручал леше, его коллегам, или просто чем занимается компания, где работает Леша... потому что не существует красивого способа остановиться и переставить валить в общую кучу факты из индекса RAG.

1
23 ...

Information

Rating
2,201-st
Registered
Activity