Спецификация набора
Описание
Аниматроника — методика, применяемая в кинематографии, мультипликации, компьютерном моделировании для создания спецэффектов подвижных искусственных частей тела человека или животного, когда необходимо создать сложный макет, покадровая съёмка которого невозможна. (wiki)
Хотите удивить своих друзей привести в шок случайных прохожих? Покажите им хвост!
Предлагаем сделать своими руками простейшего робота аниматроника – хвост лисицы. (рис.1) При подачи команды с кнопки, которую вы спрячете в кармане, хвост начнет вилять. Это будет продолжаться несколько секунд.
Как это работает? К маленькой плате Arduino подключен сервомоторчик и кнопка. Куда что подключить указано в первых строчках скетча. На оси сервомоторчика установлена капроновая стяжка. Она вставляется в маленькую прищепку напечатанную на 3d принтере. А на эту стяжку надевается хвост. (рис.2). Хвост можно купить в сувенирном магазине или сшить из искусственного меха. Сервомоторчик прячется в корпус с большой прищепкой, которая удерживает хвост на юбке или брюках.
В скетче есть строчки, в которых можно настраивать угол и скорость виляния хвоста. Также можно установить и время виляния после нажатия кнопки. В подвале вы можете скачать stl-файлы корпуса и прищепок для 3D принтера. Если у вас нет 3D принтера, не расстраивайтесь, конструкция настолько простая, что возможно вы сами придумаете, как закрепить серву на поясе. Запитать робота можно тремя батарейками ААА. В маленьких роликах можно посмотреть как устроен корпус с прищепками и как работает хвост.
Как на Android включить защиту от слежки в приложениях из iOS
В этом году Apple зашла как никогда далеко в своих попытках обеспечить право своих пользователей на конфиденциальность при использовании приложений из App Store. Для этого в iOS было добавлено сразу несколько защитных механизмов, блокирующих слежку и предупреждающих о том, с какой целью софт запрашивает то или иное разрешение. Не сказать, что разработчики этому обрадовались, потому что навязанные ограничения существенно подорвали их заработок на рекламе, но пользовали оценили. В том числе пользователи Android, которые захотели, чтобы и о них кто-то заботился точно так же.
На Android появилась почти такая же защита от слежки, как на iOS
Купил iPhone 13 Pro Max и снова задумался, что лучше: iOS или Android
Естественно, предложить аналогичную защиту пользователям Android сама Google не хотела, да и, в общем-то, не могла. В компании не просто понимают, что это ни к чему, а боятся, что до этого додумается кто-то ещё. Потому что защита от слежки может привести к краху её бизнес-модели, которая буквально построена на отслеживании и демонстрации релевантной рекламы. Но DuckDuckGo бросил Google вызов в очередной раз.
Блокировка трекеров на Андроид
Разработчики поисковика DuckDuckGo, ориентированного на конфиденциальность, выпустили обновлённую версию одноимённого браузера со встроенным механизмом защиты от слежки на Android. Принцип его работы дублирует функцию блокировки перекрёстного отслеживания в Safari. Браузер DuckDuckGo препятствует не только работе всевозможных трекеров, но и не позволяет приложениями обмениваться информацией о пользователе.
DuckDuckGo заблокирует все трекеры на вашем смартфоне. По крайней мере, известные
Очевидно, что защита DuckDuckGo работает менее эффективно, чем у Apple. Разработчики поисковика предупреждают, что их браузер блокирует только те трекеры, которые ему известны. Но поскольку их перечень постоянно расширяется, то и эффективность защиты растёт вместе с ним. Кроме того, в играх трекинг пока не блокируется вообще. Поэтому избежать таргетированной рекламы в них не удастся.
Мнение: Главное преимущество Android над iOS, о котором вы не задумывались
Впрочем, если попользоваться защитным инструментарием DuckDuckGo, становится ясно, что он действительно работает. Браузер тщательно анализирует работу трекеров в приложениях, которые отслеживают пользователей и блокирует их, выявляя даже самые скрытные и неявные. Таким образом за неделю — конечно, в зависимости от количества приложений, которыми вы пользуетесь, — может быть заблокировано несколько тысяч попыток отправки ваших данных.
Как заблокировать слежку за телефоном
Пока нововведение находится в стадии бета-тестирование, поэтому оно не только ограничено с точки зрения функциональности, но и с точки зрения доступности. Так что для того, чтобы воспользоваться защитой, потребуется подать заявку на участие в её испытаниях:
Обычно приглашение на тестирование приходит в течение недели
Через несколько дней вам придёт уведомление о том, что вас допустили к бета-тестированию функции App Tracking Protection. Вам останется только включить его принудительно, сдвинув тумблер активации в положение «вкл.» и ждать, пока DuckDuckGo соберёт достаточно информации о том, какие трекеры пытаются вас отследить, и заблокирует их работу. По итогам недели вы увидите отчёт с общим количеством блокировок.
Крутые функции Android 12, которые должны появиться в iOS 16
По большому счёту информация о том, какие именно приложения пытаются вас отследить, не принесёт вам много пользы. Лично мне достаточно и того факта, что приложение блокирует трекинг. Другое дело, что поневоле удивляешься, когда видишь, сколько попыток связаться с серверами рекламодателя и передать ему данные о том, чем вы занимаетесь на своём устройстве, они предпринимают. Это может быть и две, и три, и даже пять тысяч раз. Короче, ужас.
Аниматронные хвосты для людей управляются при помощи приложения на Android
Компания Tail не так давно представила свое новейшее творение, miTail, аниматронный(Аниматроника(англ. animatronics — словослияние animate «анимировать, оживлять, одушевлять»(лат. anima «душа»)и electronics «электроника»)хвост для людей, который может двигаться сам по себе или с помощью команд телефона.
Компания Tail уже более 15 лет занимается созданием более реалистичных человеческих хвостов. Ее крайнее творение, miTail, было запущено на Kickstarter 2 недельки назад и профинансировано наименее чем за два часа. Разумеется, общество носящих хвосты больше, чем хоть какой из нас когда-либо мог себе представить. Независимо от того, нужен ли тебе хвост для косплея или просто нравится вилять хвостом, возможно, вы отыщите miTail достаточно крутым.
Аниматронный хвост miTail имеет съемные крышки, быструю зарядку USB-C, поддержку зарядки power bank, которая гарантирует до 10 часов использования, новый D-Clip для естественного и легкого крепления одной рукою. Новый хвост также на 20 процентов легче, чем предшествующий Digitail компании.
miTail управляется приложением для Android и iOS. Это позволяет юзерам выбирать различные варианты, но поскольку управление хвостом с помощью ручных команд может быть утомительным, miTail также имеет режим без телефона. Через 60 секунд после активации хвост начнет двигаться сам по себе с разной скоростью, имитируя реальный хвост.
8 приложений для Android, которые нужно удалить. Они опасны
Кто бы что ни говорил, но Google Play – это помойка. Не даром её признали самым популярным источником вредоносного софта для Android. Просто пользователи в большинстве своём доверяют официальном магазину приложений Google и скачивают оттуда любое ПО без разбору. А какой ещё у них есть выбор? Ведь их всегда учили, что скачивать APK из интернета куда опаснее. В общем, это действительно так. Но остерегаться опасных приложений в Google Play нужно всегда. По крайней мере, постфактум.
Есть как минимум 8 приложений, которые нужно удалить
Google добавила в Google Play функцию разгона загрузки приложений
Исследователи кибербезопасности из антивирусной компании McAfee обнаружили в Google Play 8 вредоносных приложений с многомиллионными загрузками. Попадая на устройства своих жертв, они скачивают получают доступ к сообщениям, а потом совершают от их имени покупки в интернете, подтверждая транзакции кодами верификации, которые приходят в виде SMS.
Вредоносные приложения для Android
Нашли вирус? Удалите его
В основном это приложения, которые потенциально высоко востребованы пользователями. Среди них есть скины для клавиатуры, фоторедакторы, приложения для создания рингтонов и др.:
Это названия пакетов приложений, то есть что-то вроде их идентификаторов. Поскольку всё это вредоносные приложения, их создатели знают, что их будут искать и бороться с ними. Поэтому они вполне могут быть готовы к тому, чтобы менять пользовательские названия приложений, которые видим мы с вами. Но это мы не можем этого отследить. Поэтому куда надёжнее с этой точки зрения отслеживать именно идентификаторы и удалять вредоносный софт по ним.
Как найти вирус на Android
Но ведь, скажете вы, на смартфоны софт устанавливается с пользовательскими названиями. Да, это так. Поэтому вам понадобится небольшая утилита, которая позволит вам эффективно выявить весь шлаковый софт, который вы себе установили, определив название их пакетов.
В красном квадрате приведен пример названия пакета
Package Name Viewer удобен тем, что позволяет не просто найти нужное приложение по названию его пакета, но и при необходимости перейти в настройки для его удаления. Для этого достаточно просто нажать на иконку приложения, как вы попадёте в соответствующий раздел системы, где сможете остановить, отключить, удалить накопленные данные, отозвать привилегии или просто стереть нежелательную программу.
Как отменить подписку на Андроиде
Лучше всего приложение именно удалить. Это наиболее действенный способ защитить себя от его активности. Однако не исключено, что оно могло подписать вас на платные абонементы, поэтому для начала проверьте свою карту на предмет неизвестных списаний, а потом просмотрите список действующих подписок в Google Play:
Если подписка оформлена через Google Play, отменить её ничего не стоит
В принципе, если подписка была оформлена через Google Play и оплата уже прошла, вы можете потребовать у Google вернуть уплаченные деньги. О том, как это делается, мы описывали в отдельной статье. Но поскольку разработчики таких приложений обычно тщательно продумывают способы воровства денег, как правило, они не используют встроенный в Google Play инструмент проведения платежей, чтобы их в случае чего не могли отозвать.
Как перенести нейросеть на мобильное устройство
В статье поговорим как обучить несложную CNN сеть с помощью tensorflow, конвертировать готовое с помощью tensoflow-lite и перенести на мобильное устройство под управлением android.
Описывается личный опыт автора, поэтому нет претензий на всеохватывающее руководство.
Нейросеть до конвертации.
Для старта возьмем не слишком сложную нейросеть, код которой приведен ниже:
Краткое пояснение по коду. После импорта пакетов tensorflow,numpy мы формируем модель нейросети. Модель представляет из себя только один слой и только один нейрон.
Сама структура модели представляет из себя два набора данных, в которых:
Данные наборы «укладываются» в формулу Y = 2X – 1. Таким образом, для каждого Y из набора прослеживается зависимость.
После формирования модели производится ее компиляция с оптимизатором sgd и функцией потерь mean_squared_error.
Далее в модель попадают наборы данных и производится обучение на протяжении 500 эпох
(model.fit(xs, ys, epochs=500).
*Нейросеть лучше обучать на железе помощнее либо в Google colab для ускорения процесса, так как 500 эпох могут занять до 2-3 часов времени.
И, наконец, модель проверяется путем подачи ей на вход числа 10.0. То есть мы пытаемся выяснить с помощью модели значение Y при X=10.0. В идеале, согласно формуле, Y должен быть 19.0. Но в итоге будет число, сильно приближенное по значению к 19.0.
Так работает созданная нейросеть. Именно ее мы и будем конвертировать и переносить на android устройство.
Конвертация нейросети.
Для целей переноса модели на мобильное устройство воспользуемся tensorflow-lite. Сам по себе tensorflow-lite представляется из себя набор утилит, преследующий две основные цели. Первая из которых — сделать из нейросети модель, приемлемую для мобильного устройства. Обычно под этим подразумевается уменьшение размера и сложности сети, что, в свою очередь, приводит к небольшому падению точности работы. Тем не менее это необходимый компромисс между аккуратностью работы нейросети и ее размерами на мобильном устройстве. Вторая цель — создание среды выполнения для различных мобильных платформ, включая android, ios, микроконтроллеры.
Важной чертой tensorflow-lite является то, что с ее помощью невозможно тренировать модель. Нейросеть должна быть сначала обучена с помощью tensorflow и далее конвертирована в формат tensorflow-lite.
Зачем вообще переносить нейросеть на мобильное устройство?
Вопрос риторический, но из аргументов «за» — приватность используемых данных и отсутствие необходимости использования сетей связи при работе, например, с облачными решениями.
Говоря о конвертации в приемлемый tensorflow-lite формат, вернемся к коду нейросети из предыдущего блока.
Необходимо сперва сохранить готовую модель:
В результате получится файл «model.pb».
Теперь очередь конвертации:
Готовую model.tflite модель можно использовать в различных окружениях, например, android или ios.
Как работает модель в tensorflow-lite
Загрузка модели, выделение тензоров
Загрузим модель в интерпретатор, выделим тензоры, которые будут использоваться для ввода данных в модель для прогнозирования, а затем прочитаем то, что выводит модель.
Здесь проявляется главное отличие tensorflow-lite от Tensorflow. Если во втором случае возможно просто использовать model.predict(что-то) и сразу получить результат, то в tensorflow-lite необходимо поработать с сходными и выходными тензорами, приводя свои данные для соответствия их формату.
Посмотрим как это выглядит:
В результате вывод будет следующим:
В выводе input_details необходимо обратить внимание на shape(размерность) — массив 1,1 и класс данных — numpy.float32. Эти параметры будут определять входные данные и их формат.
Используя данную информацию, определим Y для X=10.0:
В выводе output_details формат данных схож, поэтому ответ нейросети будет в виде [[y]], также как и [[x]]:
Прогнозирование, использование модели
Чтобы заставить интерпретатор выполнить прогнозирование, необходимо задать входной тензор со значением для прогнозирования:
Так как у нас очень простая модель, в которой есть только один параметр ввода, поэтому это input_details[0], к нему мы и обращаемся в индексе.
Затем мы вызываем интерпретатор с помощью метода invoke.
Теперь мы осуществим прогнозирование с помощью модели, используя выражение get_tensor:
Опять же, существует только один выходной тензор, поэтому он будет выглядеть как output_details[0].
В целом код выглядит следующим образом:
Где 10 — это входное значение или X, а 18.97 — предсказанная величина, близкая к 19 (формула нейросети та же Y=2X – 1).
Перенос модели на android устройство (мобильный телефон)
После создания модели нейросети и ее конвертации в формат tensorflow-lite,
создадим приложение для Android.
Скачивание и установка Android Studio может занять время, поэтому, если с этим возникнут сложности, лучше обратиться к сторонним мануалам. Язык, который будет использоваться при создании нашего приложения — Kotlin.
Приложение, которое будет перенесено на android — это простая нейросеть, которая была создана и конвертирована выше по тексту. При вводе значения Х пользователем, нейросеть будет предсказывать Y, выводя результат на экране смартфона.
Создаем новый проект в Android Studio
Цепочка действий после запуска Android Studio следующая:
File → New → New Project→ Empty Activity
Далее заполним поля проекта, не забыв указать язык — Kotlin:
После нажатия Finish, Android Studio создаст проект.
*На картинке уже готовый проект, при создании дизайн выглядит иначе.
Заменим код, который там приведен на
Это сформирует внешний вид приложения.
Добавим зависимости Tensorflow lite
Нам нужны build.gradle файлы. Их в проекте два, и нужен тот, который содержит app в названии и расположен в директории app:
В этом же файле также необходимо добавить:
Полностью файл build.gradle будет выглядеть так:
Теперь добавим в проект саму модель нейросети tf-lite
В папке main создадим папку assets и перенесем туда ранее сконвертированную модель —
Привяжем модель нейросети к android приложению
Откроем файл MainActivity.kt:
После этого, можно протестировать готовое приложение, нажав на кнопку Run ‘app’
Тестирование проведем в эмуляторе android устройства:
После ввода X, приложение выдаст значение Y, приближенное к расчетному значению по формуле Y=2X-1, то есть нейросеть работает.
\app\build\outputs\apk\debug и, подключив смартфон к ПК, перенести на смартфон.
В принципе, все, теперь простая нейросеть живет на смартфоне, занимая всего 10Мб.