Pull to refresh
43
0
Send message

Морфологическая обработка изображений. Лекции от Яндекса

Reading time 13 min
Views 34K
Мы продолжаем публиковать лекции Натальи Васильевой, старшего научного сотрудника HP Labs и руководителя HP Labs Russia. Наталья Сергеевна читала курс, посвящённый анализу изображений, в петербургском Computer Science Center, который создан по совместной инициативе Школы анализа данных Яндекса, JetBrains и CS-клуба.



Всего в программе девять лекций. Первая и вторая уже были опубликованы. В предыдущем рассказе речь шла об основах пространственной и частотной обработки изображений. Третья лекция посвящена основным операциям морфологической обработки изображений. Под катом — слайды, план лекции и её дословная расшифровка.
Читать дальше →
Total votes 39: ↑38 and ↓1 +37
Comments 7

Лекции Технопарка. 1 семестр. С/С++

Reading time 6 min
Views 110K
Мы продолжаем наши еженедельные публикации учебных материалов Технопарка. Предыдущие лекции были посвящены web-технологиям в целом, а также алгоритмам и структурам данных. В третьем блоке лекций рассказывается о языках С и С++.

Лекция 1. Язык С. Основы организации и использования оперативной и сверхоперативной памяти


Лекция начинается с введения в язык С: рассказывается об истории его появления, особенностях, преимуществах и недостатках, о сферах применения. Описываются основы препроцессорной обработки, рассматриваются вопросы управления памятью (модели управления памятью, области видимости объектов хранения) и производительность программ на языке С. Обсуждается связывание объектов хранения и их инициализация. Затем рассказывается о классах памяти в языке С. Следующая часть лекции посвящена проблематике указателей, а также работе с одномерными массивами. В заключение рассматривается стандарт POSIX и вопросы переносимости.


Читать дальше →
Total votes 72: ↑70 and ↓2 +68
Comments 83

16 месяцев функционального программирования

Reading time 16 min
Views 67K
Предлагаю читателям «Хабрахабра» перевод статьи «16 Months of Functional Programming». Все мои замечания будут выделены курсивом.

В этой статье я хочу поделиться с вами моим опытом в функциональном программировании. Я чувствую, что в целом за прошедшие 16 месяцев стал лучше разбираться в информатике и компьютерах, чем за предыдущие 10 лет и всё это благодаря моему погружению в Scala и мир функционального программирования. Причина по которой функциональное программирование побуждает вас к постоянному развитию заключается в том, что каждую задачу необходимо переосмысливать заново. Порой невозможно поверить в то, что большинство стандартных задач могут быть решены иным путём и — бум! — функциональный подход предлагает лучшее решение и это шокирует.
Читать дальше →
Total votes 57: ↑56 and ↓1 +55
Comments 97

Обзор наиболее интересных материалов по анализу данных и машинному обучению №9 (11 — 18 августа 2014)

Reading time 5 min
Views 10K

Представляю вашему вниманию очередной выпуск обзора наиболее интересных материалов, посвященных теме анализа данных и машинного обучения. В данном выпуске достаточно много интересных видеоматериалов. Некоторые количество материалов посвящено теме Data Engineering. В данном выпуске достаточно много практических примеров кода на языках программирования R и Python. Как обычно много материалов посвящено алгоритмам машинного обучения.

Читать дальше →
Total votes 28: ↑27 and ↓1 +26
Comments 2

Аннотация к «Effective Modern C++» Скотта Майерса

Reading time 11 min
Views 55K
Пару месяцев назд Скотт Майерс (Scott Meyers) выпустил новую книгу Effective Modern C++. Последние годы он безусловно является писателем №1 «про это», кроме того он блестящий лектор и каждая его новая книга просто обречена быть прочитана пишущими на С++. Более того, именно такую книгу я ждал давно, вышел стандарт С++11, за ним С++14, уже виднеется впереди С++17, язык стремительно меняется, однако нигде так и не были описаны все изменения в целом, взаимосвязи между ними, опасные места и рекомендуемые паттерны.

Тем не менее, регулярно просматривая Хабр, я так и не нашел публикации о новой книге, похоже придется писать самому. На полноценный перевод меня конечно не хватит, поэтому я решил сделать краткую выжимку, скромно назвав ее аннотацией. Еще я взял на себя смелость перегруппировать материал, мне кажется для короткого пересказа такой порядок подходит лучше. Все примеры кода взяты прямо из книги, изредка с моими дополнениями.
Читать дальше →
Total votes 52: ↑52 and ↓0 +52
Comments 42

Ликбез: методы ресайза изображений

Reading time 7 min
Views 124K
Почему изображение, масштабированное с бикубической интерполяцией, выглядит не как в Фотошопе. Почему одна программа ресайзит быстро, а другая — нет, хотя результат одинаковый. Какой метод ресайза лучше для увеличения, а какой для уменьшения. Что делают фильтры и чем они отличаются.

Вообще, это было вступлением к другой статье, но оно затянулось и вылилось в отдельный материал.


Этот человек сидит среди ромашек, чтобы привлечь ваше внимание к статье.
Читать дальше →
Total votes 99: ↑93 and ↓6 +87
Comments 72

Codeship.io: бесплатный CI сервер для приватного репозитория Github/Bitbucket

Reading time 3 min
Views 28K

Сразу заинтригую: в результате мы получим связку бесплатного приватного git репозитория на Bitbucket и бесплатный* Continious Integration сервер (SAAS), который будет собирать проект и прогонять все тесты после каждого пуша.
* — бесплатная подписка дает возможность тестировать 5 приватных репозиториев и максимум 100 билдов в месяц.

Мне этого для личного проекта достаточно.

Приведу пример для PHP, проект на Symfony2, но данный сервис поддерживает ещё и Ruby, Node.js, Python.

Читать дальше →
Total votes 28: ↑22 and ↓6 +16
Comments 19

Скидки на гаджеты в день Отца на Амазон

Reading time 1 min
Views 27K
Совсем недавно, месяц назад, Амазон порадовал скидками на различные устройства в честь дня Матери. А 15 июня в США вновь тематический праздник. На этот раз — день Отца, в третье воскресенье (15) июня. И снова скидки! Знаете, что многие мужчины хотят иметь сыновей в расчете на то, чтобы играться в их игрушки? Поэтому аудитории Хабра стоит обратить свое внимание на радиоуправляемые:

Квадрокоптеры
image

WL V262 Quadcopter
$109.99
4 Channel 6 Axis with Camera
Value Pack — Extra battery
Вертолеты


Blade 120 SR RTF
$ 130
4 канала управления.
Видео полета.
Самолеты
image
Hobby Zone Champ Champ RTF
$89.99
3 канала управления,
идеальная модель для начинающего.


Скидки распространяются и на огромный ассортимент запчастей к радиоуправляемым моделям. Все остальные скидки можно найти на стартовой странице акции.
Читать дальше →
Total votes 33: ↑20 and ↓13 +7
Comments 9

Спать мало, но правильно?

Reading time 7 min
Views 896K
Навеяно этим постом от юзера case. Пост не новый, и на главную он не попал.
Но я вот наткнулся на него сегодня и решил написать кое-что о сне. Уверен, что это будет полезно многим хабравчанам, да и случайным читателям тоже.
Читать дальше →
Total votes 713: ↑670 and ↓43 +627
Comments 420

25 сервисов для продуктивной работы с Gmail

Reading time 8 min
Views 68K


Gmail был запущен в 2004 году и предлагал пользователям 1 Гб для электронной почты. Это было неслыханно по тем временам, к примеру, крупнейший сервис электронной почты Hotmail предлагал лишь несколько мегабайт. В настоящее время Gmail предлагает 7 Гб, Hotmail — 5 Гб, а Yahoo — не ограничивает размер ящика.

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

Я составил подборку 25 лучших сервисов, которые сделают более эффективной вашу работы с лучшей почтовой службой от Google и вы сами заметите как увеличится ваша продуктивность работы с Gmail.

Читать дальше →
Total votes 118: ↑85 and ↓33 +52
Comments 70

Помнить все: Evernote и Anki

Reading time 12 min
Views 257K


Решил написать о системе, которую я использую, чтобы помнить практически все, что хочется, при минимальных затратах времени и других ресурсов. Под словом “помнить” имеется в виду любой способ найти нужную информацию — в личной памяти или в памяти компьютера, в зависимости от ситуации и от самой информации; основные требования при этом — экономия времени и контроль того, что мы запоминаем.

Я хочу достичь следующих целей при использовании системы:

  • помнить все термины и слова, которые когда-либо решил запомнить;
  • свободно использовать факты в разговорах и дискуссиях;
  • сохранять накопленный опыт: иметь информацию обо всех текущих и законченных проектах, о важных встречах и разговорах, об изученных темах;
  • моментально находить любые статьи, которые когда-либо показались интересными;
  • держать сознание свободным от любой текучки;
  • тратить на это все не более 20 минут в день.

Ниже я напишу о методах и правилах, которые составляют данную систему. Статья будет состоять из нескольких разделов:

  • Мой опыт по описанному вопросу
  • Проблемы запоминания
  • Теоретическое разрешение проблем
  • Практическое разрешение проблем с Evernote
  • Практическое разрешение проблем с Anki
Читать дальше →
Total votes 83: ↑78 and ↓5 +73
Comments 65

Lock-free структуры данных. 1 — Начало

Reading time 12 min
Views 144K

Я надеюсь, что эта статья станет началом цикла заметок о lock-free структурах данных. Я хочу поделиться с хабрасообществом своим опытом, наблюдениям и размышлениями о том, что такое lock-free структуры данных, как их реализовывать, подходят ли концепции контейнеров стандартной библиотеки STL к lock-free контейнерам, и когда стоит (и стоит ли вообще) применять lock-free структуры данных.

Читать дальше →
Total votes 165: ↑161 and ↓4 +157
Comments 39

Взлом старой каптчи сайта Хабрахабр

Reading time 9 min
Views 47K

Введение



В данной статье кратко рассказывается о процессе взлома captcha используемой ранее при входе на сайт Хабрахабр.
Целью работы является применение знаний на практике и проверка сложности каптчи.
При разработке алгоритма использован Matlab.

Читать дальше →
Total votes 177: ↑173 and ↓4 +169
Comments 118

Путешествия во времени и программирование 2: парадоксы

Reading time 26 min
Views 215K


Эпоха путешествий во времени еще не наступила, а человечество уже давно пытается разрешить сопутствующие им парадоксы. Мы поговорим о самом очевидном из них: что же все-таки произойдет при вмешательстве в ход истории? Существует несколько вариантов того, как поток времени реагирует на действия путешественника из будущего. Эти модели можно увидеть в фантастических фильмах, о них все больше начинают говорить ученые, но какая модель ближе к истине — единого мнения пока нет. Мы только начинаем проникать в тайны времени, и еще не обладаем возможностью экспериментировать с перемещениями в прошлое. Что же можно прояснить в данном вопросе уже сейчас? Под катом нас ждет экскурсия по основам механики времени, мы порассуждаем о парадоксах, и проведем небольшой эксперимент. Да, это будет испытание виртуальной машины времени, построенной на основе алгоритма «Жизнь»!
Читать дальше →
Total votes 371: ↑351 and ↓20 +331
Comments 440

Предобучение нейронной сети с использованием ограниченной машины Больцмана

Reading time 9 min
Views 54K
Привет. Как и планировалось в прошлом посте об ограниченных машинах Больцмана, в этом будет рассмотрено применение RBM для предобучения обыкновенной многослойной сети прямого распространения. Такая сеть обычно обучается алгоритмом обратного распространения ошибки, который зависит от многих параметров, и пока не существует точного алгоритма выбора этих самых параметров обучения, как и оптимальной архитектуры сети. Разработано множество эвристик, позволяющих сократить пространство поиска, а также методик оценки качества выбранных параметров (например, кросс-валидация). Мало того, оказывается, и сам алгоритм обратного распространения не так уж хорош. Хотя Румельхарт, Хинтон и Вильямс показали сходимость алгоритма обратного распространения (тут еще более математическое доказательство сходимости), но есть небольшой нюанс: алгоритм сходится при бесконечно малых изменениях весов (т.е. при скорости обучения, стремящейся к нулю). И даже это не все. Как правило, этим алгоритмом обучают небольшие сети с одним или двумя скрытыми слоями из-за того, что эффект обучения не доходит до дальних слоев. Далее мы поговорим подробнее о том, почему же не доходит, и применим технику инициализации весов с помощью обученной RBM, которую разработал Джеффри Хинтон.

Читать дальше →
Total votes 38: ↑37 and ↓1 +36
Comments 11

Сжатие изображений с использованием вейвлет

Reading time 11 min
Views 27K
Вейвлетное сжатие — общее название класса методов кодирования изображений, использующих двумерное вейвлет-разложение кодируемого изображения. Обычно подразумевается сжатие с потерей качества. В статье не будет приведено сложных математических формул, всю теорию можно почитать по ссылкам внизу статьи. Здесь только практика!

Отличие от JPEG


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

Пример


Для примера сильно сожмем одно и тоже изображение приблизительно до одного размера:

В начале с использованием JPEG:
7959 байт
(7959 байт)

затем алгоритмом вейвлетного сжатия JPEG 2000:
7813 байт
(7813 байт)

Читать дальше →
Total votes 155: ↑133 and ↓22 +111
Comments 77

Вейвлет-сжатие «на пальцах»

Reading time 10 min
Views 175K


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

Попробуем на простых примерах разобраться, откуда же вообще берутся вейвлеты и как их можно использовать при сжатии. Предполагается, что читатель знаком с основами линейной алгебры, не боится слов вектор и матрица, а также умеет их перемножать. (А во второй части даже попробуем что-то запрограммировать.)

Читать дальше →
Total votes 169: ↑168 and ↓1 +167
Comments 58

Руководство новичка по эксплуатации компоновщика

Reading time 32 min
Views 202K
David Drysdale, Beginner's guide to linkers (http://www.lurklurk.org/linkers/linkers.html).

Цель данной статьи — помочь C и C++ программистам понять сущность того, чем занимается компоновщик. За последние несколько лет я объяснил это большому количеству коллег и наконец решил, что настало время перенести этот материал на бумагу, чтоб он стал более доступным (и чтоб мне не пришлось объяснять его снова). [Обновление в марте 2009: добавлена дополнительная информация об особенностях компоновки в Windows, а также более подробно расписано правило одного определения (one-definition rule).

Типичным примером того, почему ко мне обращались за помощью, служит следующая ошибка компоновки:
g++ -o test1 test1a.o test1b.o
test1a.o(.text+0x18): In function `main':
: undefined reference to `findmax(int, int)'
collect2: ld returned 1 exit status

Если Ваша реакция — 'наверняка забыл extern «C»', то Вы скорее всего знаете всё, что приведено в этой статье.
Читать дальше →
Total votes 194: ↑193 and ↓1 +192
Comments 38

[ANN]ounce книг 11'2012

Reading time 5 min
Views 19K
Подобные анонсы книг выходят у меня не так и часто, но от этого они не становятся менее полезными. Как обычно, я подготовил список новинок компьютерной или околокомпьютерной литераторы на русском и английском языках, которые вышли недавно в свет, или же появятся в какое-то ближайшее время.
Это не список рецензий, а всего лишь перечень книг, которые я сам с удовольствием прочитаю в ближайшее время. Так что мое мнение основано скорее на имени автора и какого-то «средневзвешенного» мнения народа в наших с вами интернетах, и оно вполне может измениться после более близкого знакомство с этими творениями. Тем не менее, все они, как минимум, заслуживают нашего с вами внимания и достойны добавиться в бесконечный список книг на полке “to-read”.


Читать дальше →
Total votes 33: ↑26 and ↓7 +19
Comments 14

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

Reading time 5 min
Views 68K


Друзья, всех нас объединяет тяга к новому, интересному и увлекательному. Мы обмениваемся заметками, статьями, фото, видео, графикой и даже программным кодом. В этом нам уже который год «помогают» социальные сети и сервисы.

Но, чем больше информации сваливается на нас, тем больше времени мы тратим, чтобы найти что-то действительно полезное. Насколько продуктивно мы проводим это время? На все 100%? Скорее всего, нет. Нас постоянно отвлекает реклама, рекомендательные блоки и другой информационный шум. Внимание рассеивается и приходится тратить все больше сил на его концентрацию. Одним словом – XXI век. Век информационной перегрузки.

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

Этот вопрос частично закрывают сервисы для фильтрации, организации и рекомендаций контента или одним словом его «курирования». Сontent curation сервисов существует немало. Все они строятся на разных принципах, но суть одна – повышение эффективности вашего присутствия в Сети.

Далее я приведу ряд аналогов, отобранных с прицелом на полезные, но не самые известные сервисы. Таких монстров как Delicious или StumbleUpon в списке не будет. Цель обзора не только показать специфичные инструменты, но и поднять тему того, что «content curation» – это заметный мировой тренд, который, почему-то, не нашел должной поддержки в России.
Читать дальше →
Total votes 36: ↑33 and ↓3 +30
Comments 36

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Date of birth
Registered
Activity