Search
Write a publication
Pull to refresh
0
0
Fenya @Fenya

User

Send message

Все о Лазерах

Reading time7 min
Views296K
Вы все любите лазеры. Я то знаю, я от них тащусь больше вашего. А если кто не любит – то он просто не видел танец сверкающих пылинок или как ослепи- тельный крошечный огонек прогрызает фанеру

А началось все со статьи из Юного техника за 91-й год о создании лазера на красителях – тогда повторить конструкцию для простого школьника было просто нереально… Сейчас к счастью с лазерами ситуация проще – их можно доставать из сломанной техники, их можно покупать готовые, их можно собирать из деталей… О наиболее приближенных к реальности лазерах и пойдет сегодня речь, а также о способах их применения. Но в первую очередь о безопасности и опасности.
Читать дальше →

Опубликован код алгоритма Predator

Reading time1 min
Views11K
Хотя сам Зденек Катал был против, но исходные коды его алгоритма отслеживания объектов в видеопотоке Tracking-Learning-Detection (aka Predator) всё-таки попали в открытый доступ. Судя по всему, они были какое-то время выложены на сайте автора и кто-то успел сделать копию. А поскольку код публиковался под лицензией GPL 2.0, то не осталось никаких препятствий для его дальнейшего распространения.

Проект TLD на github: 1, 2, 3, 4, 5

Основная часть сделана на Matlab и его относительно легко можно транслировать в C за пару дней.

Сам трекинг осуществляется методом Лукаса-Канаде и с помощью OpenCV.

Железный пароль от посторонних или замена кнопке питания

Reading time2 min
Views7K
Привет хабр! Это моя первая статья. По жизни я люблю пайку и программинг.
Собственно сейчас хочу представить вашему вниманию найденную мной схему в просторах инета и переделанную именно под компьютер.
Примочка эта работает по технологии RFID(радиочастотная идентификация).
Читать дальше →

Делаем качественный переплёт для любимой книги

Reading time7 min
Views208K

Вступление


Приветствую всех.

Люди любят читать. Но не все, и не всё. А то, что любят, не всегда можно найти в магазинах. А если и можно найти, то не всегда это по карману. Из этого следует один элементарный факт: что-то с этим надо делать. Конечно, можно читать с экрана монитора/ноутбука/телефона. Или распечатать и читать в разрозненных, пусть и упорядоченных, листочках. Кроме того (это более затратный вариант, но для любителя чтения он лучше), можно купить специализированную читалку на электронных чернилах. Да, она решает проблему, но… Спустя какое-то время начинаешь скучать по весу настоящей книги, по шелесту перелистывания бумажных страниц, и по кипе других подобных маловажных, но таких приятных сердцу мелочей.
И из этой неприятности тоже есть свой выход. Просто-напросто надо самому сделать нужную книгу.
Осторожно, под катом очень много фотографий.
Читать дальше →

IOS. Версии, лицензии и что делать в РФ

Reading time4 min
Views86K
У начинающих cisco-водов много вопросов вызывают различные варианты линеек IOS их отличия и функционал. Дополнительную сумятицу внесло появление новых маршрутизаторов ISR G2 и новой линейки IOS версии 15. Попробуем разобраться на пальцах.

Будем обсуждать IOS для самых распространенных маршрутизаторов – Integrated Services Router (ISR) первой и второй «волны» (G1 и G2). Я не буду вдаваться совсем уж в историю и начну с IOS 12 версии. Более ранние, конечно, бывают, но встречаются сейчас крайне редко. Мало того, даже для самого древнего железа уже как правило хотя бы 12.0 версия есть.

Начиная с этой линейки у cisco появилось понятие «стабильный» или «основной» образ (main deployment, MD), «ранние версии» (early deployment, ED), всякие экспериментальные версии (обычно содержат несколько новых фич) и целая «продвинутая» технологическая линейка (обозначается буквой Т в названии IOS). Общая идеология такая: все, что обкатали в экспериментальных и технологических линейках предыдущих версий, появляется как основная фича в следующей версии основной линейки. Например, то, что было в 12.3Т и прошло успешные испытания, зафиксировано в 12.4 MD. Понятно, что возможностей у Т-линейки больше, функционал менее оттестирован и статистически менее надежен.
Читать дальше →

Пишем LR(0)-анализатор. Простыми словами о сложном

Reading time10 min
Views28K

Введение



Добрый день.
Не нашел простого и внятного описания данного алгоритма на русском языке. Решил восполнить сей пробел. Прежде всего что это такое? LR(0)-анализатор в первую очередь это синтаксический анализатор. Цель синтаксического анализатора обработать входной поток лексем(базовые элементы языка, которые производит лексический анализатор на основе входного потока символов, примеры лексем — число, запятая, символ) и сопоставить его с описанием языка заданного в определенном формате. Сопоставление заключается в построении определенной структуры данных, чаще всего — дерева. Дальше эта структура пойдет на следующий этап — семантический анализ, где уже компилятор пытается понять смысл, заключенный в дереве.

Существует 2 класса синтаксических анализаторов — восходящие анализаторы и нисходящие. Первые строят дерево начиная с листьев, которые являются входными лексемами, вторые соответственно наоборот начинают с корня дерева. Собственно LR и значит то, что анализатор будет читать поток слева направо (L — 'Left') и строить дерево снизу вверх (пусть не смущает буква R, которая значит Right, объяснения даны чуть ниже). Индекс 0 обозначает то что мы не предпросматриваем следующие лексемы, а работаем только с текущей. Какие же плюсы даёт нам выбор этого типа анализаторов?
  • Он быстр.
  • Покрывает множество языков. То есть если вы придумали язык и описали его, то с большой долей вероятности LR-анализатор его сможет обработать.
  • Синтаксические ошибки обнаруживаются так быстро как это возможно. Сразу же как встречается символ, который не соответствует предыдущему входному потоку, мы можем вывести ошибку об этом.

Есть и недостатки:
  • Относительная сложность построения.
  • Можно вогнать анализатор в ступор неоднозначностью описания языка.


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

Алгоритмы заливки изображений, популярно и с видео

Reading time6 min
Views48K

Аннотация


image
Заливка изображений — часто нужная на практике задача, суть которой — заполнить некоторую область изображения, ограниченную контуром, заданным цветом. И казалось бы все просто, однако часто медленно и криво. В данной статье рассказывается об известных алгоритмах заливки на основе стека и приводится реализация на псевдокоде MatLab. Я постарался наполнить столь скучную тему интересными видео роликами, и описал процесс их получения, опять же с использованием MatLab. В этой статье мы будем заливать Карлсона который живет на крыше, так как хабралоготипа для этих целей в нормальном разрешении я не нашел. А так же несколько строк кода о том как читать и работать с картинками в MatLab.
Читать дальше →

Связь биллинга и Cisco Catalyst 2960 через SNMP. Изменение скорости портов, подсчет трафика

Reading time4 min
Views16K
Как и обещали, после приветствия, начинаем немножко раскрывать технические подробности.

Задача


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

Железо


В каждой стойке стоит как минимум один свич Cisco Catalyst 2960. Конкретная модель — WS-C2960G-48TC-L with LANBASE SPF. На вход к нему идет 4x SFP, а к серверам обращены 48 гигабитных Ethernet портов. При живой нагрузке в несколько гигабит никаких проблем не возникало. На фото различные представители семейства 2960.
image
Читать дальше →

VLC как служба Windows

Reading time3 min
Views26K
После долгого блуждания в гугло-мире я все же нашел решение своей проблемы. Проблема состояла в следующем — компания (вернее непосредственно начальство) узнала о существовании IP-камер, и в срочном порядке приняла решение купить и установить их в офис. Выбор пал на D-link DCS 2102-2121 так как больше ничего не нашли (дорогущие axis — одна стоила как 3 таких). Все бы не плохо, но было одно условие вывести картинку с них в великую сеть.
Читать дальше →

Мониторинг балансов сотовых телефонов, провайдеров — или как никогда больше не забывать вовремя заплатить за телефон и интернет

Reading time4 min
Views21K

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

Но как быть, когда сервер и сервис — не свои собственные, а чужие? Ведь такая ситуация случается сплошь и рядом. Типовая небольшая организация: один-два сайта на хостинге (за которые надо вовремя платить, а зачастую еще и следить за тем, не изменились ли тарифы), пачка доменных имен (которые тоже надо вовремя проплачивать, а то и потерять можно), какое-то количество сотовых телефонов (за балансом которых нужно бы следить), договоры (и, соответственно, учет и взаиморасчеты) с поставщиками городской телефонии, с VOIP-провайдером, да в конце концов — просто с интернет-провайдером для офиса.

Сисадмин обычно за всё это платит не сам, но письма-напоминалки пополнить баланс получает в основном он и именно он будет крайним, если забудет напомнить тем, кто платит. Кто из нас хоть раз в жизни не забывал оплатить что-нибудь такое (например, потому что письмо-напоминалка попала в спам) и оставался без связи, без сайта, без домена, без премии, без зарплаты, без работы и т.д. и клятвенно обещал себе, что вот уж в следующий-то раз будет аккуратнее.

Если интересно, как можно обуздать такую стихию - добро пожаловать под кат

Backdoor в Active Directory

Reading time4 min
Views10K
В свое время, менее года назад, на хабре мелькала публикация с аналогичным заголовком [1]. В ней автор предлагал способ по сокрытию привилегий администратора домена путем использования в качестве контейнера, для размещения «скрытой» учетной записи, служебное хранилище «Program data», в совокупностью с агрессивным разграничением прав с целью предотвращения доступа к «спрятанной» учетной записи. Однако, несмотря на заверения автора, обнаружение «скрытой» учетной записи и ее последующее удаление можно было выполнить всего в несколько кликов.
Читать дальше →

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

Reading time3 min
Views39K

Аннотация


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

Трансляция мастер-класса компании «Opera»

Reading time1 min
Views468
21 февраля (в понедельник), в актовом зале главного здания Московском государственном институте электроники и математики, пройдет образовательный мастер-класс ИТ-компании Opera Software. От Opera Software на мероприятии будет присутствовать Илья Шпаньков, менеджер по развитию в России.

Время начала — 16:45.

Трансляция уже началась!


Ожидается обсуждение следующих тем:
  • история и позиционирование компании;
  • веб-стандарты следующего поколения (HTML5, CSS3);
  • перспективы современных веб-технологий;
  • рынки браузеров;
  • универсальность как будущее браузеров;
  • бизнес компании, особенности российского рынка;
  • Opera и МИЭМ.

Видеотрансляция мероприятия будет доступна в интернете на сайте http://viditory.net.

TOP'ай сюда

Reading time5 min
Views184K
Обзор практически всех *top утилит под linux (atop, iotop, htop, foobartop и т.д.).

top

Все мы знаем top — самую простую и самую распространённую утилиту из этого списка. Показывает примерно то же, что утилита vmstat, плюс рейтинг процессов по потреблению памяти или процессора. Совсем ничего не знает про загрузку сети или дисков. Позволяет минимальный набор операций с процессом: renice, kill (в смысле отправки сигнала, убийство — частный случай). По имени top суффикс "-top" получили и все остальные подобные утилиты в этом обзоре.

atop


Atop имеет два режима работы — сбор статистики и наблюдение за системой в реальном времени. В режиме сбора статистики atop запускается как демон и раз в N времени (обычно 10 мин) скидывает состояние в двоичный журнал. Потом по этому журналу atop'ом же (ключ -r и имя лог-файла) можно бегать вперёд-назад кнопками T и t, наблюдая показания atop'а с усреднением за 10 минут в любой интересный момент времени.

В отличие от top отлично знает про существование блочных устройств и сетевых интерфейса, способен показывать их загрузку в процентах (на 10G, правда, процентов не получается, но хотя бы показывается количество мегабит).

Незаменимое средство для поиска источников лагов на сервере, так как сохраняет не только статистику загрузки системы, но и показатели каждого процесса — то есть «долистав» до нужного момента времени можно увидеть, кто этот счастливый момент с LA > 30 создал. И что именно было причиной — IO программ, своп (нехватка памяти), процесор или что-то ещё. Помимо большего количества информации ещё способен двумя цветами подсказывать, какие параметры выходят за разумные пределы.
Читать дальше →

Частный опыт установки и настройки Asterisk с нуля

Reading time17 min
Views345K
Во-первых, дисклаймер

Настройке Asterisk посвящены сайты, форумы и целые порталы типа voip-info.org. Но всегда есть люди, для которых эта тема – дремучий лес, а запустить продукт надо «вчера». Ещё полтора месяца назад я про Asterisk знал только то что он есть. Данный труд призван лишь несколько облегчить жизнь тем, кто окажется в такой же ситуации после меня. В нём могут быть ошибки любой степени «чайниковости». Если вы гуру настройки Asterisk – укажите на ошибку, я поправлю, потомки будут вам благодарны.
Читать дальше →

Набор инструментов для построения графиков, блок-схем и диаграмм

Reading time3 min
Views180K


Есть много разных сервисов, облегчающих жизнь веб-разработчику или дизайнеру, в том числе создающих разные графики, диаграммы, блок-схемы и т.д. Ниже представлена небольшая подборка.
(Осторожно, много изображений)
Читать дальше →

Двадцать вопросов, которые помогают разработать алгоритм

Reading time5 min
Views8.4K
Как разработать алгоритм, решающий сложную задачу? Многие считают, что для этого нужно «испытать озарение», что процесс этот не вполне рационален и зависит от творческой силы или таланта.

На самом деле решение любой задачи сводится к сбору информации о наблюдаемом объекте. Причем этот принцип применим как для решения самых сложных научно-исследовательских задач, так и для решения прикладных задач. Работа изобретателя напоминает не столько работу волшебника, сколько путешествие первооткрывателя по неизведанной территории. Главное качество хорошего изобретателя – умение собирать информацию.

Если вы хотите решить сложную задачу, собирайте информацию в самых разных направлениях. Ответив на следующие 20 вопросов, вы легко выстроите план работы над задачей.
Читать дальше →

DHCP по VLAN на коммутаторах Cisco

Reading time3 min
Views143K
В данной статье хочу рассказать об очень удобной, по моему мнению, схеме IP-адресации в сети с и использованием VLAN.
В примере конфигурации будем использовать следующую схему:
image
Читать дальше →

Динамическое программирование. Классические задачи

Reading time8 min
Views332K
Здравствуй, Хабрахабр. В настоящий момент я работаю над учебным пособием по олимпиадному программированию, один из параграфов которого посвящен динамическому программированию. Ниже приведена выдержка из данного параграфа. Пытаясь объяснить данную тему как можно проще, я постарался сложные моменты сопроводить иллюстрациями. Мне интересно ваше мнение о том, насколько понятным получился данный материал. Также буду рад советам, какие еще задачи стоит включить в данный раздел.

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

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

Такие задачи решают методом динамического программирования, а под самим динамическим программированием понимают сведение задачи к подзадачам.
Читать дальше →

Машинка управляемая через Bluetooth

Reading time3 min
Views15K
Давно хотел приобщить к программированию своего сына, но как это сделать?
Прошли те времена, когда учились на бейсиках и паскалях. Пытался показать ему TurboPascal — даже кое-что вроде бы начало получаться, но как-то дальше не пошло…

Решил сделать следующую попытку, когда познакомился с детским языком-конструктором Scratch. Это даже не язык — это средство создания скриптов путем перетаскивания на экране «блоков» и соединения их друг с другом. Теперь дело пошло получше. Ребенок смог сделать даже какую-то простую игру. Но ведь нужно двигаться дальше?



Что бы как-то разнообразить «программирование» я придумал сделать машинку, но что бы ее поведением можно было управлять с компьютера программой на Scratch. То есть что бы ребенок смог бы как-то программировать логику поведения машинки.
Читать дальше →

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity