Pull to refresh
12
0
Send message

Ортографическая проекция в фотографии и прочие интересные фокусы с объективами

Level of difficultyMedium
Reading time30 min
Views24K

С тем как работает фотоаппарат мы знакомимся еще со школьной программы. Однако привычное нам из школьного курса сведение объектива к "тонкой линзе" на самом деле не отвечает на массу практических вопросов. Например как удается создавать объективы с ортографической проекцией применяемые в системах технического зрения?

Да-да, такие тоже бывают не только в компьютерной графике, но и в фотографии: попробуйте-ка это объяснить оперируя исключительно в терминах "тонкой линзы". Размер изображения предмета в таких системах (почти) не зависит от того на каком расстоянии от объектива они находятся и это весьма удобно для измерения размеров предмета. В этой статье мы поговорим о том как этого удается добиться, как работает автофокус и пленоптические камеры и о многих других интересных вещах

Так как же работает объектив?

Как мы учились обходить блокировки VPN в Китае, чтобы быть готовыми к РКН

Reading time7 min
Views100K

В понедельник 7 августа пользователи VPN-сервисов из России заметили проблемы с подключением к серверам. По собранной в соцсетях и Телеграме информации, ограничения затронули наиболее распространенные VPN-протоколы OpenVPN,  L2TP, PPTP и WireGuard. На сбои в работе VPN-сервисов жаловались клиенты мобильных операторов — Мегафон, МТС, Билайн, Tele2, Yota, Тинькофф Мобайл. 

В этот же день на Xeovo обвалилось огромное количество тикетов, но к вечеру, когда инеформация о новой волне блокировок VPN ещё продолжала расходиться по рунету, и СМИ ещё собирали статистику, которую мы здесь приводим, мы уже закрыли большую часть из них и соединение наших клиентов было восстановлено. Как нам это удалось? Дело в том, что весь последний год мы посвятили борьбе с Великим Китайским файерволлом, а именно — с блокировками VPN в Китае.

Читать далее

Экосистема Hyper. Полный пиринг и шифрование

Level of difficultyMedium
Reading time7 min
Views6.4K


В настоящее время резко выросла потребность людей в защищённых коммуникациях. А с ней и популярность сервисов для защиты связи и шифрования. Это VPN, mesh-сети и пиринговые приложения для прямого обмена зашифрованными сообщениями, файлами и т. д. Один из самых продвинутых наборов такого рода — экосистема Hyper. Есть и другие (о них ниже).
Читать дальше →

Разработка сервопривода с BLDC мотором

Level of difficultyMedium
Reading time16 min
Views18K

Открытый проект серво‑контроллера MC50 продолжает развиваться. На этот раз поговорим о создании сервопривода.

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

Читать далее

Bercut птица гордая, не пнешь…

Level of difficultyMedium
Reading time9 min
Views6.9K

Эта статья о моем опыте импортозамещения в сфере сертифицированного измерительного оборудования, а именно использование приборов Bercut‑ETX 10G компании ООО «НТЦ‑Метротек». Полагаю, что информация в статье будет любопытна коллегам трудящимся в близких областях.

Читать далее

Мы сделали вам плату, а дальше вы сами: Доводим дешевый одноплатник до ума своими руками

Level of difficultyMedium
Reading time6 min
Views13K
image

В прошлой статье, мы с вами рассмотрели на что способен одноплатный компьютер, который стоит всего 1.000 рублей. Как мы выяснили, перспективы у данного девайса весьма неплохие, однако по факту, Orange Pi продаёт практически голую железку, которую нужно дорабатывать самому. Да, тут есть Ubuntu/Fedora, да, тут выведена гребенка с I2C/SPI — однако из коробки это всё работает криво-косо, либо не работает совсем. Даже обещанные шины SPI/I2C фактически не доступны в системе «из коробки». Материалов о доработке этого одноплатника в сети мало, поэтому я решил довести его до ума сам и поделится с вами — в том числе, готовыми бинарными образами! Интересно, на что способен доработанный одноплатник по цене ящика пива? :)
Читать дальше →

Какими приключениями грозит невключенная двухфакторная аутентификация на Госуслугах

Level of difficultyEasy
Reading time9 min
Views52K

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

Когда появились госуслуги, на них не было автоматического информирования о входах в аккаунт с непривычного IP, не предлагалась двухфакторная авторизация. Я создал пароль достаточно надежный - не использованный нигде ранее, и считал,что все отлично, не меняя его 5 лет. На портал заходил я редко, но авторизовывал через ЕСИА государственные сервисы. Госуслуги присылали рассылки на почту, а я был уверен, что при авторизации с подозрительного IP или попытки брутфорса меня уведомят, а аккаунт заблокируют, ведь телефонный номер Госуслуги и так знают.

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

Утром 11 июля мне потребовалось авторизоваться на сайте Госуслуг, но "пользователь с таким email не зарегистрирован". Я набрал службу поддержки, назвал свой номер СНИЛС, а мне (не спрашивая всяких контрольных вопросов, что в моем случае было как раз хорошо) техподдержка заявила, что с этим номером СНИЛС аккаунт заведен 5 июля, почта и телефон там другие, а тот, в котором была ваша почта и телефон, удалены того же числа.

Читать далее

Применение вакуумного люминисцентного индикатора

Reading time3 min
Views15K
Некоторое время назад мне подвернулся недорогой VFD-экранчик. Из него я сделал что-то вроде часиков, подключив к домашнему серверу.



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

Я использовал дисплей IEE 036X2–122–09220 (он же IEE 36199-01), их можно найти на ибее. Скорее всего, работа с любым другим VFD от IEE не будет отличаться (также, как и со многими другими похожими дисплеями, например, от кассовых аппаратов).
Читать дальше →

Обзор платы Tang Primer 20K на Gowin GW2A-LV18

Level of difficultyMedium
Reading time8 min
Views14K
После получения большого количества отзывов и комментариев на обзор платы на Cyclone IV из части из них четко прослеживались мысль: “А почему Cyclone IV, это же старый хлам!”. В ответ на это я решил сделать обзор на что-нибудь современное, функциональное и очень недорогое. И такой вариант нашелся — это отладочная плата Tang Primer 20K на ПЛИС от небезызвестной компании Gowin. На неё я и сделаю обзор в этой статье и расскажу про примеры проектов, доступных для этой платы.

Кого заинтересовала тема — добро пожаловать под кат! =)

image
Читать дальше →

Altera Quartus Prime и ModelSim под Linux. Вводное руководство

Level of difficultyMedium
Reading time9 min
Views9.7K
В очередной раз, начав изучать что-то новое для себя, я столкнулся с типичной для меня проблемой: нет нигде быстро гуглящегося how-to и step-by-step руководства по быстрому созданию какой-либо простой конструкции на Verilog и описания способа эту конструкцию быстро симулировать без необходимости запуска кода в железе для проверки конечного результата. Я надеялся очень быстро найти готовый материал о том, как под Altera Quartus 20.1 и ModelSim 2020.1 под Linux всё по-быстрому сделать и идти дальше. В итоге не найдя ничего системно и последовательно описанного в одном месте я традиционно разобрался самостоятельно и решил это исправить своей очередной статьей на Хабре. 

Возможно, этот материал поможет таким же как я новичкам на самом старте и позволит не растерять энтузиазм во время танцев по граблям. Всем, кто заинтересовался — добро пожаловать под кат. 

image
Читать дальше →

В ближайшие 20 лет космонавтику ждет небывалый прорыв

Reading time6 min
Views45K

Для космических путешествий «напрямую» используя импульсные маневры ракете нужно набрать скорость, достаточную для перехода между точками солнечной системы. Современным сверхтяжёлым химическим ракетам хватает запаса скорости, разве что до Луны слетать. Космические аппараты отправляются в дальний космос не столько своей тягой, а множеством гравитационных маневров. Например, аппарат «Кассини» разгонялся в полете до Сатурна при помощи четырех гравитационных катапульт и тормозил используя гравитацию спутника Ио. Полет занял 7 лет и для человеческой экспансии космоса такие скорости и сроки не подходят.

Читать далее

Сверточный слой: методы оптимизации основанные на матричном умножении

Reading time9 min
Views14K

Введение


Данная статья является продолжением серии статей описывающей алгоритмы лежащие в основе
Synet — фреймворка для запуска предварительно обученных нейронных сетей на CPU.

Если смотреть на распределение процессорного времени, которое тратится на прямое распространение сигнала в нейронных сетях, то окажется что зачастую более 90% всего времени тратится в свёрточных слоях. Поэтому если мы хотим получить быстрый алгоритм для нейронной сети – нам нужен, прежде всего, быстрый алгоритм для свёрточного слоя. В настоящей статье я хочу описать методы оптимизации прямого распространения сигнала в свёрточном слое. Причем начать хочется с наиболее широко распространенных методов, основанных на матричном умножении. Изложение я буду стараться вести в максимально доступной форме, чтобы статья была интересна не только специалистам (они и так про это все знают), но и более широкому кругу читателей. Я не претендую на полноту обзора, так что любые замечания и дополнения только приветствуются.
Читать дальше →

Обзор отладочной платы Altera Cyclone IV EP4CE6

Level of difficultyMedium
Reading time7 min
Views14K
Очередной раз пролистывая Aliexpress, в поисках чего-нибудь интересного из мира FPGA-отладок, я наткнулся на один интересный экземплярчик. Попалась отладка на Altera Cyclone IV с большим количеством всякой периферии на борту + с которой за сравнительно небольшие деньги можно приобрести 4.3’’ LCD дисплей и камеру.

Посмотрев детально документацию и характеристики модулей — я особо не раздумывая решил ее заказать. После получения ее с пункта выдачи — я был в восторге и твердо для себя решил — нужно поделиться своей радостью со всеми интересующимися, сделав обзор этой отладочной платы со всеми ссылками и картинками. Поехали!
image
Читать дальше →

Открытый проект встраиваемого модуля для IoT

Level of difficultyHard
Reading time5 min
Views9.2K

Выполнен на чипе семейства Synergy. Если коротко, то: ядро Cortex-M4, 240 МГц, 640 КБ RAM, 32 МБ SDRAM, 4 МБ Flash, LoRA, BLE, Wi-Fi a/b/g/n, uSD, USB HS, IMU, NV RTC, Li-ion Charger, 81 I/O, 7 мкА wakeful sleep.

Читать далее

Что нам стоит диаграмму в Python построить: 5 вариантов привлекающей внимание визуализации данных и кое-что ещё

Reading time6 min
Views16K

Диаграммы помогают визуализировать как простые, так и самые сложные наборы данных. При этом диаграмм — множество видов, у каждого есть свои достоинства и недостатки. О наиболее эффектных и эффективных, реализуемых с Python, мы решили рассказать в сегодняшней подборке. Если вам интересна эта тема – просим под кат. А если у вас есть собственные предпочтения среди графиков (или вы используете что-то ещё), то пишите в комментариях, обсудим. Что же – поехали!

Читать далее

Почему поиск по фото у Google и Apple не способен найти обезьян

Level of difficultyEasy
Reading time7 min
Views44K

В мае 2015 года Google выпустила отдельное приложение «Фотографии». Люди были поражены тем, что оно способно анализировать изображения, разбирать их на детали, а потом маркировать людей, места и вещи. Даже переводить текст!

Была только одна проблема. Google внедрил «категоризацию фотографий» — все фотографии автоматически размечались и организовывались в папках на основании того, что на них было. И через пару месяцев 22-летний программист-фрилансер Джеки Альсине обнаружил, что все фотографии, на которых был изображен он и его девушка, оба чернокожие, были помечены как «гориллы». Причем если на фотографиях был виден белый человек или человек со светлой кожей, Google маркировал их правильно — например, «выпускной» или «поход в бар». М-да.

История сразу разгорелась в Твиттере. После шквала негатива Google поклялась больше не позволять своему приложению классифицировать каких-либо людей как «горилл» и пообещала решить эту проблему. Восемь лет спустя — эта история, оказывается, всё еще не затухла, и влияет на развитие современных ИИ больше, чем можно было бы ожидать.

Читать далее

Как айтишник гигантские арбузы в средней полосе выращивал. Часть 1

Level of difficultyEasy
Reading time8 min
Views26K

Хобби коллег очень многогранны. Сегодня расскажем об ИТ-шном подходе к выращиванию арбузов в регионе, где, казалось бы, нормально вызревать они не должны. Наш девопс, Игорь Иванов, объединил системный подход к сбору информации и комплектующие с AliExpress и из магазинов для садоводов, и уже не первый год собирает отличный урожай. 

Своеобразная “инструкцию для начинающих” получилась довольно объемной. Мы  разделили ее на две части: в первой автор разбирает теоретические основы, а во второй переходит к практике.

Осторожно, много фото!

Читать далее

Как я секреты римской брони в лаборатории разгадывал

Reading time10 min
Views15K

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

Год назад в своей статье «Римские и средневековые доспехи. Что лучше?» в качестве одного из параметров сравнения я использовал ударную вязкость. Чтобы понимать, как работает связка свойств – твердость/ударная вязкость в доспехах, представьте себе пластилин и стекло. Если давить пальцем на стекло, то оно будет какое-то время сопротивляться вашему нажиму, но с определенного уровня – трескаться и рассыпаться. Пластилин, напротив, будет тянуться, не давая проникнуть «за». Для доспехов в идеале должны работать оба свойства, но поскольку они противоположны, то на практике нужен компромисс.

Готовы?

Полезен ли сегодня быстрый обратный квадратный корень из Quake III?

Reading time23 min
Views74K

В 2005 году id Software опубликовала под лицензией GPL-2 исходный код своей игры 1999 года Quake III Arena. В файле code/game/q_math.c есть функция для вычисления обратного квадратного корня числа, которая на первый взгляд выглядит очень любопытным алгоритмом:

float Q_rsqrt( float number )
{
    long i;
    float x2, y;
    const float threehalfs = 1.5F;

    x2 = number * 0.5F;
    y  = number;
    i  = * ( long * ) &y;                       // зловещий хакинг чисел с плавающей запятой на уровне битов
    i  = 0x5f3759df - ( i >> 1 );               // какого чёрта?
    y  = * ( float * ) &i;
    y  = y * ( threehalfs - ( x2 * y * y ) );   // первая итерация
//  y  = y * ( threehalfs - ( x2 * y * y ) );   // вторая итерация, можно удалить

    return y;
}

Об этом алгоритме написано множество статей, и ему посвящена хорошая страница Википедии, где он назван fast inverse square root (быстрым обратным квадратным корнем). На самом деле, этот алгоритм упоминался на различных форумах ещё до публикации исходного кода Q3. Ryszard из Beyond3D провёл в 2004-2005 годах исследование и в конечном итоге выяснил, что первоначальным автором алгоритма был Грег Уолш из Ardent Computer, который создал его десятью годами ранее.
Читать дальше →

DIY наушники: реализация мониторного звука

Level of difficultyHard
Reading time7 min
Views16K

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

Читать далее

Information

Rating
Does not participate
Location
Долгопрудный, Москва и Московская обл., Россия
Registered
Activity