Как стать автором
Обновить
159
-1.8
Сергей @iiiytn1k

Инженер

Реализация контроллера SDRAM

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 3.9K
FPGA *

В статье про VGA интерфейс я написал, что использовал внешнюю память SDRAM  в качестве фрем буфера. Хочу поделиться его реализацией, хотя бы потому что, когда я занимался разработкой этого модуля потратил много времени, ведь стандартные IP-ядра не поддерживают эту микросхему. И, как результат, хочу кому-нибудь помочь в этом вопросе.

Читать далее
Всего голосов 39: ↑39 и ↓0 +39
Комментарии 10

Разводка регулярных структур в KiCAD: путь лентяя

Время на прочтение 11 мин
Количество просмотров 4K
Python *CAD/CAM *Производство и разработка электроники *DIY или Сделай сам
image

Я в одной из предыдущих статей писал — я, фактически, безработный. Юридически — нет, во-первых я пенсионер, но вполне мог бы и работать. Во-вторых, вроде как и работаю в одной маленькой фирме из двух человек, но последний год у нас с контрактами напряженка. С голоду не умираем, пенсии вполне достаточно на жизнь, но ведь развлекаться как-то надо?
Время от времени от скуки публикую статьи-обзоры на сайте шопоголиков, администрация сайта даже денег довольно-таки регулярно за это дает. Очень хорошая отмазка для супруги — нет, я не шопоголик, это я, вроде как, при деле. И вот здесь взялся публиковать статейки — если на том сайте такие публиковать, только минусов нахватаешь — типа ты что, слишком умный, что ли? — а вот на тебе минус и не балуй. И в следующий раз пиши про какую-нибудь мыльницу.
Читать дальше →
Всего голосов 42: ↑41 и ↓1 +40
Комментарии 13

Восстановить удаленную фотографию с флешки? Искусственный интеллект в помощь

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 4.7K
Блог компании НТЦ Вулкан Python *Обработка изображений *Восстановление данных *Искусственный интеллект
Кейс

Привет, Хабр! В статье хотел бы поделиться своим опытом восстановления данных (на самом деле, всего одной фотографии), который перерос в любопытный кейс применения методов машинного обучения для решения задачи реконструкции файлов изображений. Думаю, что проблема с восстановлением удаленной информации с носителей весьма актуальна для читателей Хабра (и обычных юзеров, и целых компаний), поэтому поделюсь некоторыми наработками. Все это - под катом.  

Читать далее
Всего голосов 40: ↑40 и ↓0 +40
Комментарии 3

Алгоритмы программы для дозиметра на счетчике Гейгера

Уровень сложности Простой
Время на прочтение 17 мин
Количество просмотров 3.5K
Алгоритмы *Физика
Туториал

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

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

Будет полезна радиолюбителям, разработчикам и программистам для аналогичных задач.

Читать далее
Всего голосов 22: ↑22 и ↓0 +22
Комментарии 28

Земля круглая, вода мокрая, JPEG шакалит, небо голубое… Или нет?

Время на прочтение 11 мин
Количество просмотров 15K
Программирование *Алгоритмы *Обработка изображений *Математика *

Вы можете сказать, что один факт выбивается из этого ряда в заголовке, потому что он не так очевиден, как остальные. Еще лет 10-15 назад я бы никогда не подумал, что тут могут быть возражения, а сейчас уже и не удивляюсь, что приходится объяснять простые истины: дело в том, что планеты обладают очень большой массой, поэтому гравитация стремится придать им форму шара. Вот и все! Хотел бы на этом закончить статью и поблагодарить за внимание.

Читать далее
Всего голосов 139: ↑139 и ↓0 +139
Комментарии 46

Небанальные правила чистого Python. Часть 1

Время на прочтение 6 мин
Количество просмотров 16K
Python *Программирование *Проектирование и рефакторинг *
✏️ Технотекст 2022

Большинство питонистов не раз слышали о таких правилах как «функции должны быть глаголами» или «не наследуйтесь явно от object в Python 3». В этой статье рассмотрим не такие банальные, но полезные правила чистого кода в Python.

Читать далее
Всего голосов 49: ↑47 и ↓2 +45
Комментарии 49

Автоэнкодеры в Keras, Часть 3: Вариационные автоэнкодеры (VAE)

Время на прочтение 10 мин
Количество просмотров 43K
Python *Алгоритмы *Обработка изображений *Математика *Машинное обучение *
Туториал

Содержание



В прошлой части мы уже обсуждали, что такое скрытые переменные, взглянули на их распределение, а также поняли, что из распределения скрытых переменных в обычных автоэнкодерах сложно генерировать новые объекты. Для того чтобы можно было генерировать новые объекты, пространство скрытых переменных (latent variables) должно быть предсказуемым.

Вариационные автоэнкодеры (Variational Autoencoders) — это автоэнкодеры, которые учатся отображать объекты в заданное скрытое пространство и, соответственно, сэмплить из него. Поэтому вариационные автоэнкодеры относят также к семейству генеративных моделей.


Читать дальше →
Всего голосов 48: ↑47 и ↓1 +46
Комментарии 15

Термостабилизация телескопа

Время на прочтение 30 мин
Количество просмотров 9.3K
Разработка под Arduino *Производство и разработка электроники *3D-принтеры DIY или Сделай сам Астрономия

На Хабре уже много статей о любительской астрономии, но мне пока ещё не встречались статьи о вентиляции (охлаждении, терм стабилизации) телескопа. Про то, зачем это нужно, написано, например, тут и тут. Вкратце, проблема в том, что если ГЗ (главное зеркало) телескопа теплее, чем окружающий его воздух, над ним возникает конвективный поток, который заметно портит изображение. Звёзды обзаводятся асимметричными "лучами", а протяженные объекты (планеты) теряют чёткость и контрастность. Маленькие телескопы довольно быстро остывают сами, а большие, особенно закрытой конструкции (такие, как Шмидт-Кассегрен), Требуется охлаждать принудительно. Самый простой и естественный способ - продувка ГЗ и трубы компьютерными кулерами. Редкие модели крупных ШК оборудованы кулерами, поэтому приходится сверлить дырки. Считаю тему достойной Хабра: тут и разработка электроники, и Ардуино, и 3D печать. Эта статья - адаптация того, что я писал на Астрофоруме год назад, всё никак руки не доходили до Хабра.

Девайс назвал CoolScope. Потому что от клёвый, охлаждает, и эта надпись влазит в экранчик. Все чертежи, схемы и код прошивки выложены на гитхабе.

Читать далее
Всего голосов 81: ↑81 и ↓0 +81
Комментарии 41

Вычисляем π на первом процессоре от Intel — 4004

Время на прочтение 10 мин
Количество просмотров 14K
Ненормальное программирование *Assembler *Математика *Программирование микроконтроллеров *
Перевод

Как-то мне пришла в голову мысль о том, насколько же быстрее современные процессоры по сравнению с ранними экземплярами. Да, можно размышлять об этом эмпирически - зная тактовую частоту и особенности микроархитектуры (как устроен конвейер, сколько есть ALU, и т.д.), можно прикинуть производительность Intel 4004. Пусть и не в FLOPS'ах, ибо нативная поддержка чисел с плавающей запятой появилась позже. Но это будет весьма грубая прикидка, так как у этого процессора есть несколько интересных черт: разрядность только 4 бита (а не 64, как у большинства современных машин), очень скудный набор инструкций (нет даже AND'a и XOR'a!) и ограничения переферии (в частности памяти не так уж и много).

Поэтому я решил исследовать вопрос на практике. В качестве бенчмарка выбор пал на вычисления числа π. В конце-то концов, даже ENIAC в дремучем 1949 году справился с этой задачей! [2]

Читать далее
Всего голосов 109: ↑108 и ↓1 +107
Комментарии 25

Трёхмерная графика с нуля. Часть 1: трассировка лучей

Время на прочтение 42 мин
Количество просмотров 122K
Работа с 3D-графикой *Разработка игр *Алгоритмы *Математика *
Перевод
image


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

В этой работе мы сосредоточимся не на скорости, а на чётком объяснении концепций. Код примеров написан наиболее понятным образом, который не обязательно является самым эффективным для реализации алгоритмов. Есть множество способов реализации, я выбрал тот, который проще всего понять.

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


Читать дальше →
Всего голосов 90: ↑90 и ↓0 +90
Комментарии 53

Трёхмерная графика с нуля. Часть 2: растеризация

Время на прочтение 47 мин
Количество просмотров 48K
Работа с 3D-графикой *Разработка игр *Алгоритмы *Математика *
Перевод
image


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

К сожалению, эта простота имеет свою цену: низкую производительность. Несмотря на то, что существует множество способов оптимизации и параллелизации трассировщиков лучей, они всё равно остаются слишком затратными с точки зрения вычислений для выполнения в реальном времени; и хотя оборудование продолжает развиваться и становится быстрее с каждым годом, в некоторых областях применения необходимы красивые, но в сотни раз быстрее создаваемые изображения уже сегодня. Из всех этих областей применения самыми требовательными являются игры: мы ожидаем рендеринга отличной картинки с частотой не менее 60 кадров в секунду. Трассировщики лучей просто с этим не справятся.

Тогда как это удаётся играм?

Ответ заключается в использовании совершенно иного семейства алгоритмов, которое мы исследуем во второй части статьи. В отличие от трассировки лучей, которая получалась из простых геометрических моделей формирования изображений в человеческом глазе или в камере, сейчас мы будем начинать с другого конца — зададимся вопросом, что мы можем отрисовать на экране, и как отрисовать это как можно быстрее. В результате мы получим совершенно другие алгоритмы, которые создают примерно похожие результаты.
Читать дальше →
Всего голосов 38: ↑37 и ↓1 +36
Комментарии 3

Информация

В рейтинге
Не участвует
Откуда
Челябинск, Челябинская обл., Россия
Зарегистрирован
Активность