Pull to refresh
10
0
Ярослав Корчевский @yslav

Embedded software

Send message

Обобщение медианного фильтра

Reading time3 min
Views39K

Аннотация


В данной статье рассказывается об уникальном фильтре, статья о котором появилась в 1990 году: Маслов А.М., Сергеев В.В. Идентификация линейной искажающей системы с использованием ранговой обработки сигналов // Компьютерная оптика. — М., 1990. — Вып.6. — С.97-102. Данный алгоритм получил название «Алгоритм ранговой обработки» и по факту является обобщением медианного фильтра.
Применение данного фильтра оправдано в двух случая — для подавления шума и для уменьшения смаза.
image
Рисунок 1 — исходное изображение, 2 — смазанное и зашумленное солью.
Читать дальше →
Total votes 64: ↑59 and ↓5+54
Comments45

Организация простой архитектуры в андроид-приложении со связкой ViewModel+LiveData, Retrofit+Coroutines

Reading time6 min
Views20K
Без долгих вступлений расскажу, как можно быстро и просто организовать удобную архитекруту вашего приложения. Материал будет полезен тем, кто не очень хорошо знаком с mvvm-паттерном и котлиновскими корутинами.

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

Наши действия: из активити (фрагмента) вызываем нужный метод ViewModel -> ViewModel обращается к ретрофитовской ручке, выполняя запрос через корутины -> ответ сетится в лайвдату в виде ивента -> в активити получая ивент передаём данные во вью.
Читать дальше →
Total votes 9: ↑6 and ↓3+3
Comments24

Практический опыт работы с Bitmap средствами Android

Reading time4 min
Views33K

Не так давно по долгу службы я столкнулся с одной задачей: нужно было придумать и реализовать дизайн медиа-плеера для Android. И если продумать и организовать более или менее сносное размещение элементов управления и информации оказалось делом не хитрым, то чтобы привнести в дизайн какую-то изюминку, пришлось хорошенько подумать. К счастью, в запасе у меня был такой элемент, как картинка с обложкой альбома проигрываемой мелодии. Именно он должен был добавить красок всей картинке.
Однако, будучи просто выведенной среди кнопок и надписей, обложка выглядела бумажным стикером, наклеенным на экран. Я понял, что без обработки изображения здесь не обойтись.
Читать дальше →
Total votes 50: ↑43 and ↓7+36
Comments13

Настраиваем бесплатную сборку для написания и отладки программ под микроконтроллеры на основе ядра ARM под Windows 10

Reading time10 min
Views67K
Идея написать статью (которая войдет в цикл статей для новичков, остро жаждущих создавать что-то на микроконтроллерах при почти нулевых знаниях в области программирования в принципе) пришла мне после того, как мне пришлось немного отвлечься от своих основных дел, чтобы помочь другу настроить рабочую среду для написания софта под его небольшой домашний проект на основе board-а с stm32f103 на борту. Я рассчитывал, что это займет около получаса, максимум час, но ноутбук друга был на Windows 10 x64, что для меня уже непривычно (сам работаю в Ubuntu). По итогу мы потратили практически 8 часов на настройку и создание простого проекта, борясь с многими не очевидными вещами.

Параллельно с этим мне пришлось подробно объяснять, какой элемент сборки для чего нужен, а так же, как эти элементы взаимодействуют между собой, поскольку друг до этого никогда ранее с микроконтроллерами не сталкивался (от слова «видел Arduino в магазине»).

Данный материал призван помочь начинающим быстро и без проблем настроить полностью бесплатную инфраструктуру для работы с микроконтроллерами, а так же понять, каким образом происходит сборка итогового бинарного файла. Производитель и модель микроконтроллера на этапе настройки этой инфраструктуры неважны. Главное, чтобы в его основе лежало ядро ARM.
Читать дальше →
Total votes 2: ↑1 and ↓10
Comments12

Умный дом или игрушка для мужчин: контроль электричества

Reading time7 min
Views48K
Вслед за статёй о контроле температуры, хочется еще немного рассказать о контроле электричества. Конечно, его интереснее контролировать, когда у Вас 3 фазы.

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

Автор статьи не является электриком и не претендует на профессиональную подачу информации. Хотя с ПУЭ и оборудованием заземляющего контура пришлось плотно ознакомиться.

В моем случае (так уж вышло), сделана не совсем правильная схема TN-C-S, я разбил PEN на PE и N уже после счетчика (он на опоре). Но, несмотря на это, все же очень интересно, куда и как ходит электричество по 3-м фазам и 5 проводам. Эту систему можно даже использовать как учебное пособие для начинающих, наблюдая за поведением нуля при загрузке разных фаз. В частности, интересно, что в нулевом проводе всегда есть напряжение (относительно земли). Думаю, в садоводстве, а также в квартирах, полного нуля на рабочем нулевом проводнике вообще не может быть. Соответственно, с нуля в контур заземления практически всегда уходит часть электричества. Начинаешь понимать, что зануление в квартирах и на садовых участках опасно для жизни.



Подробнее тут
Total votes 21: ↑19 and ↓2+17
Comments53

О развязке питания с примерами

Reading time8 min
Views178K
Когда я участвовал в проведении конкурса 7400, я понял, что многим из представленных логических схем для надежной работы не хватает простейших защитных элементов. Одним из самых часто встречающихся недостатков конструкции было отсутствие блокировочных емкостей. Позже, прочитав статью о законе Мёрфи, я решил немного написать о развязке и блокировочных конденсаторах.
Читать дальше →
Total votes 75: ↑73 and ↓2+71
Comments25

Матрицы для камер видеонаблюдения. На что обращать внимание?

Reading time7 min
Views119K


Качество изображения видеокамеры во многом зависит от используемого в ней светочувствительного сенсора (матрицы). Ведь поставь хоть лучший процессор для оцифровки видео – если на матрице получено плохое изображение, хорошим оно уже не станет. Попытаюсь популярно объяснить, на что следует обращать внимание в характеристиках сенсора камеры видеонаблюдения, чтобы потом не было мучительно больно при взгляде на изображение…
Total votes 21: ↑15 and ↓6+9
Comments19

Зрение для робота на Raspberry Pi: карта глубин

Reading time11 min
Views36K
image

Нынче все технологии «дроностроительства» активно дешевеют. Кроме одной: получение карты окружающего пространства. Тут есть две крайности: либо дорогие лидары (тысячи долларов) и оптические решения для построения карты глубин (много сотен долларов), либо совсем копеечные решения типа ультразвуковых дальномеров.
Поэтому возникла идея на базе недорогой Raspberry Pi с одной камерой сделать решение, которое окажется в пустующей нише и позволит получать карту глубин «за недорого». Причем сделать это на простом языке программирования типа Python, чтобы это было доступно новичкам для экспериментов. Собственно, о своих результатах я и хотел рассказать. Получившиеся скрипты с примерами фоток можно запускать и на десктопе.

Читать дальше
Total votes 43: ↑42 and ↓1+41
Comments23

Information

Rating
Does not participate
Location
Зеленоград, Москва и Московская обл., Россия
Date of birth
Registered
Activity