Обновить
0
Святослав Панкратов@AquaXP

Пользователь

3
Подписчики
Отправить сообщение

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

Время на прочтение3 мин
Охват и читатели40K

Аннотация


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

Осторожно, собеседование!

Время на прочтение3 мин
Охват и читатели7.3K

Введение


Все работники периодически сталкиваются с собеседованиями. Некоторые называют их — интервью. Целью прохождения собеседования, обычно, является поиск новой работы (работника). Некоторые люди ходят на собеседования ради интереса, проверить свой уровень знаний, и чтобы не отставать от тенденций отрасли.

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

О градиенте изображения

Время на прочтение2 мин
Охват и читатели28K

Аннотация


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

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

Время на прочтение4 мин
Охват и читатели181K
В свете недавних статей об обработке изображений я хотел бы немного рассказать об алгоритмах выделения контуров: методы Робертса, Превитта и Собеля (эти методы взяты для рассмотрения как самые известные и часто используемые).

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

Детектирование округлостей на изображении (на примере микрофотографий)

Время на прочтение3 мин
Охват и читатели18K
Всем привет! По своей профессии (строго говоря- будущей профессии) я вообще-то химик. Относительно недавно появилась интересная работа и объявилась необходимость много работать с цифровым микроскопом, делать большое количество фотографий и определённым образом их обрабатывать. А именно: находить линейные размеры частиц (чаще круглой формы и изначально- на глаз) и скрупулёзно заносить их в лабораторный журнал.
Неудивительно, что после первой же сотни изображений я крепко задумался о хоть какой-нибудь автоматизации этого процесса, но была одна загвоздка: я прекрасно знал, что «объектно-ориентированное программирование — это очень хорошо», но… Но я на тот момент владел только школьным TurboPascal, университетским VB и быдлокодингом на PHP в процедурном варианте. Потыкавшись по форумам, и учтя факт, что за день я успеваю поработать как минимум на двух ОС (Mac/Windows/Ubuntu существуют в эйфорическом симбиозе), я особо не задумывался и решил писать на Java.
Опуская подробности примерно недельной, в свободное от работы время, долбёжки своей головы об объектно-ориентированную парадигму программирования и бессонных ночей с мыслями наподобие «да как же, блин, это работает», я постараюсь максимально вкратце рассказать о том простом и быстром «алгоритме», который у меня родился. Стоит сразу сказать, что он годится только для достаточно четких изображений.
А вот, кстати, и типичный представитель (вернее, его примерно десятая часть), которого нужно обработать:


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

Про C++ алиасинг, ловкие оптимизации и подлые баги

Время на прочтение6 мин
Охват и читатели47K
С удивлением обнаружил, что про явление алиасинга (aliasing) здесь постов нет. Ситуацию нужно исправить, тк. алиасинг в любой сколько-то сложной C++ программе обязательно хоть где-нибудь, да есть. Это может быть хорошо, давая возможность ловких оптимизаций, а может быть плохо, внося повышенной паршивости баги. Под катом вкратце про оба случая (ну и неизменное «компилятор бьет спина», конечно; для разнообразия сегодня это gcc).
Читать дальше →

Жесткий диск и фактор риска

Время на прочтение3 мин
Охват и читатели4.9K
Очень часто наши клиенты просят совета, жесткий диск какой фирмы им лучше приобретать. Руководствуются они в адресации вопроса именно нам тем, что мы владеем информацией о наиболее частой поломке жестких дисков определенной фирмы. Спешим разочаровать наших клиентов, так как присутствие в ремонте большего количества дисков той или иной фирмы, не может служить показателем того, что именно эта фирма выпускает ненадежные диски.



Вот он, наш самый главный фактор риска.
Фото из фотобанка Лори.

Слишком много факторов влияют на показатели статистики. Бывает такое положение, когда винчестеры какого либо одного производителя заполонили рынок в определенный временной период, и, как следствие, наличие у каждого второго пользователя именно этого винчестера, приводит к тому, что и в ремонт они попадают чаще. Логичен вывод, что надежность конкретной модели можно было бы оценить, сопоставляя количество дисков проданных и количество сломавшихся. Правда, такие выводы будут тоже не совсем верны, так как существует великое множество дополнительных факторов.
Например, в какую статистику может уложиться следующий случай?
Читать дальше →

Подсчёт объектов на изображении

Время на прочтение2 мин
Охват и читатели15K
Сегодня я расскажу о двух алгоритмах подсчёта количества объектов на изображении. Этот топик предназначен в первую очередь для тех, кто только начинает заниматься обработкой изображений. Для профессионалов ничего нового я не скажу.
Читать дальше →

Рисуем волну .wav-файла

Время на прочтение5 мин
Охват и читатели88K

Некоторое время назад я решил посвятить себя решению экзотической задачи — нарисовать волну wave-файла, как это делают аудио- и видеоредакторы, используя для этого Питон. В результате у меня получился небольшой скрипт, который вполне с этим справляется. Так, картинка выше сгенерирована им из песни «Under Pressure» группы Queen. Для сравнения — вид волны в аудиоредакторе:

Для разбора звука я использовал библиотеку numpy, а для построения графика — matplotlib. Под катом я изложу основы работы с wav-файлами и алгоритм скрипта.
Читать дальше →

Том Дженнингс учит детей взламывать машины

Время на прочтение1 мин
Охват и читатели5.5K


В рамках образовательного проекта Machine Project в Лос-Анджелесе прошёл очередной мастер-класс для школьников. На этот раз их учили, как взламывать автомобиль, выбираться из захлопнутого багажника и включать зажигание без ключа.

Уроки являются частью программы «Хорошие дети делают плохие вещи» и должны стимулировать у детей интерес к технике. Проектом руководит Том Дженнингс, создатель FidoNet, на фото слева.
Читать дальше →

Полулегальное воровство печеньками

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели56K
Часть хабралюдей честные и бескорыстные и привлекают их всякие техническия штучкэ. Но кое-кто кое-где у нас порой и не столь бескорыстен. Честно жить не хочет. Я расскажу вам о том, как можно по сути воровать, но при этом не выходя за рамки уголовного кодекса. Эдак с $15,000,000.
Читать дальше →

Последствия использования технологии Copy-Paste при программировании на Си++ и как с этим быть

Время на прочтение8 мин
Охват и читатели7.4K
Copy-Paste, Ctrl-C, Ctrl-V
Я занимаюсь созданием анализатора PVS-Studio, выявляющего ошибки в исходном коде приложений на языке C/C++/C++0x. В связи с этим мне приходится просматривать большой объем исходного кода различных приложений, где с помощью PVS-Studio были обнаружены подозрительные участки кода. У меня накопилось достаточно примеров, в которых хорошо видно, когда ошибка появилась на свет из-за копирования участка кода и его модификации. Конечно, это не новая идея, что использовать Copy-Paste при программировании плохо. Однако попробуем не отделываться рекомендацией «не копируйте код» и подойдем к этой теме более внимательно.
Читать дальше →

Зачем на самом деле нужен мозг

Время на прочтение10 мин
Охват и читатели53K
В продолжение предыдущего топика "Как на самом деле работает мозг". На написание данного поста меня побудила, с одной стороны, замечательная книга «Grooming, Gossip, and the Evolution of Language» Робина Данбара (Robin Dunbar), а с другой — очередная порция «полезных» и «умных» советов в GTD и других блогах.

Для затравки — небольшая логическая задачка. Дан набор карточек; на каждой из них на одной стороне написана буква, на другой — цифра.
На столе лежат четыре карточки: «А», «Д», «5» и «6». Вам говорят: если на карточке (из числа лежащих на столе) на одной стороне гласная, то на обороте — чётная цифра. Какие из карточек достаточно перевернуть, чтобы однозначно подтвердить или опровергнуть это утверждение?

Подумайте немного, запишите ответ на бумажке и добро пожаловать под кат.

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

Как увеличить точность внутренних часов и начать лучше понимать время

Время на прочтение4 мин
Охват и читатели5.8K


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

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

Психологи Джейн Бурка и Ленора Юэн предлагают в своей книге Procrastination: Why You Do It, What to Do About It NOW ряд конкретных упражнений по совершенствованию управления собственным временем.
Читать дальше →

Обертка для вызова функций по их адресу

Время на прочтение5 мин
Охват и читатели7.9K
Доброго времени суток!
Было дело — делал я интерфейс для работы с модулями для USB от FTDI. Пришлось изрядно повозиться с подключением DLL-интерфейса. Разочаровавшись в возможностях автоматической линковки Microsoft Visual Studio 2008 (UPD: потом я разобрался с этой темой), я решил это делать вручную. По ходу дела задолбался очень надоело вручную подключать несколько десятков функций. И тогда я обратился к Google, C++ и шаблонам. И если подключение DLL в стиле C++ вопросов не вызвало, то удобный вызов подключенных функций в стиле «Error = FT_Open (Num, &_Handler)», где FT_Open- объект, удался не сразу. Итог (для таких вот функций) — под катом. Если вкратце — я сделал обертку вокруг указателя на функцию.
Читать дальше →

Пример Makefile

Время на прочтение7 мин
Охват и читатели78K
Написание makefile иногда становится головной болью. Однако, если разобраться, все становится на свои места, и написать мощнейший makefile длиной в 40 строк для сколь угодно большого проекта получается быстро и элегантно.

Внимание! Предполагаются базовые знания утилиты GNU make.
Читать дальше →

Еще одна шпаргалка

Время на прочтение2 мин
Охват и читатели16K
VIM содержит сотни команд, выучить их все невозможно, да и по правде говоря «зазубривание» — дело неблагодарное. Читая различные факи и туториалы я взял за правило заносить новые для меня команды в отдельный файл, сопровождая их кратким описанием. В процессе работы с редактором я часто заглядываю в этот файл и с течением времени многие команды из него пополняют мой стандартный набор. Своим файлом-шпаргалкой я и хочу с вами поделиться.
Читать дальше →

Анаглифная 3D-фотография своими руками

Время на прочтение1 мин
Охват и читатели13K
Дорогие хабражители и хабрагости, хочу поделиться с вами своим новым увлечением — 3D-фотографией.
Нет, я не являюсь владельцем 3D-говномыльницы, у меня обычная зеркалка от Sony и далее в этой статье я расскажу о том, как сделать вот такую анаглифную фотографию без специальной техники и за 5 минут времени:
image
Читать дальше →

Основы Linux от основателя Gentoo. Часть 2 (2/5): Назначения папок, поиск файлов

Время на прочтение9 мин
Охват и читатели85K
В данном отрывке рассказано о стандарте иерархии файловой системы (FHS), почему директории так называются и для чего они нужны. Упомянута переменная окружения PATH и разобраны основные команды для поиска файлов в системе, такие как whereis, find и locate (slocate).



Навигация по основам Linux от основателя Gentoo:

Часть I
  1. BASH: основы навигации (вступление)
  2. Управление файлами и директориями
  3. Ссылки, а также удаление файлов и директорий
  4. Glob-подстановки (итоги и ссылки)

Часть II
  1. Регулярные выражения (вступление)
  2. Назначения папок, поиск файлов
  3. Управление процессами
  4. Обработка текста и перенаправления
  5. Модули ядра (итоги и ссылки)


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

Kismet

Время на прочтение7 мин
Охват и читатели94K
Kismet — это многофункциональная бесплатная утилита для работы с беспроводными сетями Wi-Fi. Пользователям она знакома в основном по статьям на тему взлома, где программа используется для обнаружения скрытых сетей или захвата пакетов. Взламывать чужие сети — плохо, а между тем Kismet — это гораздо больше чем отмычка в руках злоумышленника. В арсенале инженера информационной безопасности эта программа становится прекрасным инструментом для наблюдения и анализа эфира 802.11.
Читать дальше →
12 ...
80

Информация

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