nick_marcevich2: (01)
Программирование:
http://herbsutter.com - блог Герба Саттера
http://stroustrup.com - сайт Бьярна Строуструпа
http://www.aristeia.com - сайт Скотта Мейерса
http://erdani.com - сайт Андрея Александреску
http://www.drdobbs.com - Доктор Доббс
http://habrahabr.ru - Хабра, без комментариев
http://stackoverflow.com - куча ответов на кучу вопросов
http://www.careercup.com - куча вопросов с собеседований, с ответами и без.
http://cppcon.org/ - just C++ conference. ^_^
http://channel9.msdn.com/Events/GoingNative - конференция по С++, проводимая мелкомягкими. Куча полезных видео

C++ links:
ACCU Overload
Alex Stepanov's Papers
Bjarne Stroustrup's homepage
Boost Library Incubator
Boost's homepage
C++ Annotations
C++ FAQ @ isocpp.org
C++ Standards Committee — LWG
Flaming Dangerzone
FPComplete
Guru Of The week
Howard Hinnant's page
ISO C++ Standard – Discussion
ISO C++ Standard – Future Proposals
Matthew Wilson's work
Standard C++ Foundation
STL Programmer's Guide
The C++ Standards Committee
Thomas Becker's

Алгоритмы и математика:
http://e-maxx.ru - куча статей по алгоритмам
http://www.mathnet.ru/php/presentation.phtml - летняя школа в Дубне, видеотека лекций по математике
http://www.intuit.ru - электронный университет
https://www.coursera.org - куча электронных курсов ведущих специалистов мира на самые разные темы
http://aplusclick.wordpress.com/ - задачки на смекалку;
http://acm.timus.ru/problemset.aspx?space=1&page=all - много задач;
http://www.machinelearning.ru/ - материалы и лекции о распознавании, есть на русском языке
http://www.mlconf.com/ - machine learning conference, USA
http://www.cvpapers.com/rr.html#! - куча ссылок на ресурсы по техническому зрению
http://live.ece.utexas.edu - laboratory of image & video engineering, очень много ссылок на материалы и исследования
http://www.kdnuggets.com - сайт с материалами по machine learning & data mining
http://www.intechopen.com/ - электронные книги и журналы, есть в свободном доступе
http://dorbarber.webs.com/ - коллекция ссылок на ресурсы по техническому зрению
http://vikasing.github.io/nnfaq/FAQ.html - факью по нейронным сетям
http://ml.posthaven.com - блог, посвящённый ML.

Новостные ленты:
http://www.datascienceweekly.org/newsletters/
http://www.kdnuggets.com/YYYY/MM/publications.html - подборка публикаций по data mining & machine learning за MM месяц YYYY года (необходимо выбрать дату, прежде чем воспользоваться ссылкой :))

Интересные книжки прочая электронная макулатура, которую полезно иметь под рукой:
http://www.scimagojr.com/journalrank.php?category=1707#! - международный рейтинг журналов по тематике "Компьютерное зрение и распознавание образов";
http://www.sciencedirect.com/ - поиск научных статей по различным тематикам;
http://codingforinterviews.com/practice - рекомендуемые материалы к прочтению для программистов
http://www.efytimes.com/e1/fullnews.asp?edid=119715 - математика для программистов, книги в свободном доступе
http://ciml.info - онлайн-курс по машинному обучению
64 new external resources and articles about data science, big data - December 24
200 machine learning and data science resources
More Free Data Mining, Data Science Books and Resources
Best Data Science online courses

_______________________________

Будет обновляться. Помощь приветствуется. ;-)
nick_marcevich2: (Red Eyes)
На сей раз пишет Кунгуров:

------------
Короче, об оптике я кое-какое представление имею. Снимки поверхности Земли, которые мы видим на фейке, выполнены с очень большой высоты объективом с очень большим фокусным расстоянием. В противном случае состыковать их в цельное «полотно» не получится из-за колоссальных искажений (аберраций) в любой части снимка, кроме центральной, потому что они уйдут в перспективу. Большое расстояние – это порядка 800 км. Именно такую орбиту имеют те спутники, с которых делаются Гугл-снимки.
------------

Я уж не знаю, какое представление он имеет об оптике, но я сам лично занимался склейкой - "состыкованием кадров в цельное полотно", и могу точно сказать, что искажения зависят только от свойств объектива (аберраций, угла съёмки, фокусного расстояния, дисторсии линз) и ни разу не зависят от расстояния до объекта. Кроме того, все эти искажения убираемы алгоритмически. Я лично клеил съёмку с вертолёта, летящего на высоте около километра - получилось очень даже ничего. Проблемы появляются, когда у камеры наблюдаются сильные высокочастотные (с частотой, сравнимой с частотой съёмки, до одного порядка) паразитные движения, особенно угловые. Всё остальное - не так существенно.

Ещё с точки зрения совмещения изображений, высота должна быть достаточной для того, чтоб можно было пренебречь разницей высот снимаемой области (чтоб при движении те же дома не сильно изменялись в проекции на кадр). Но для этой цели (если, конечно, не Бурдж-Дубай какой-нить снимаем), и пары километров вполне достаточно, а десяти - более чем.
nick_marcevich2: (01)






И много других на канале http://beesandbombs.tumblr.com .
nick_marcevich2: (01)


Как говорится, жду продолжения банкета. :)
nick_marcevich2: (01)
Спички — подходящий объект для игр и развлечений. Особенно, если требуются одинаковые предметы, причём в большом количестве. Так, с помощью коробка спичек можно решить несколько интересных головоломок, описанных ниже. И поиграть в комбинаторные игры. :)

Что такое комбинаторная игра.
Это игра, в которой имеется:
(1) два игрока;
(2) множество возможных позиций игры, обычно конечное;
(3) правила игры, определяющие для каждой позиции и каждого игрока,
какие ходы разрешены.
Далее,
(4) игроки ходят по очереди;
(5) оба игрока знают все ходы, сделанные в игре;
(6) игра заканчивается, когда достигнута позиция, в которой нет возможных ходов для игрока, чья очередь ходить — во всех таких позициях определено, кто из игроков становится победителем.
Следующие правила применяются, но не всегда:
(7) выигрывает игрок, сделавший последний ход;
(8) игра заканчивается за конечное число ходов.
Множество позиций игры обычно конечное. Правила игры точно определяют, какие ходы может сделать тот или иной игрок в каждой позиции. Ходы представляют собой переходы из одной позиции в другую. Те позиции, в которые можно перейти из данной позиции, называются опциями данной позиции.
Относительно последних трех условий, (4)–(6). Эти условия исключают игры со случайными ходами (игры в кости или карточные игры). Не разрешаются в комбинаторных играх одновременные ходы (камень–ножницы–бумага) и тайные ходы (морской бой). Не допускается и ничья за конечное число ходов (крестики-нолики).
Согласно определению, комбинаторная игра — это игра с совершенной информацией: каждый игрок полностью владеет всей информацией о текущей позиции игры, о всех предыдущих позициях, о всех сделанных ходах.
Если считается, что
(7) выигрывает игрок, сделавший последний ход,
то говорят, что это нормальная (или стандартная) игра, т.е. игра с нормальным правилом определения победителя; в такой игре игрок, у которого нет ходов, проигрывает. Если игрок, сделавший последний ход, считается проигравшим, то говорят, что в игре используется правило мизер (mis`ere); будем называть подобную игру мизерной игрой, или мизерной версией игры.
Если игра никогда не заканчивается, фиксируется ничья. Это возможно, если ходы повторяются, игра входит в бесконечный цикл, или же если в игре существует бесконечная цепочка различных ходов (и позиций). Однако мы принимаем следующее условие окончания игры, исключающее подобные ситуации:
(8) игра заканчивается за конечное число ходов.


Игра ним.
Ним — одна из старейших комбинаторных игр; кроме того, ним — фундамент, на котором воздвигается математическая теория комбинаторных игр. Название «ним» и исчерпывающую теорию этой игры дал Чарльз Л. Баутон (C.L. Bouton), математик из Гарвардского университета, более 100 лет назад. Два игрока поочередно берут предметы (карты, спички, камешки, монеты — словом, фишки) из кучек (рядов, коробок). Число кучек и число предметов может быть произвольным, и выкладываются они заранее, до начала игры. Взять разрешается любое число предметов из любой кучки: даже всю кучку целиком, но хотя бы один предмет взять обязательно, и брать предметы можно только из одной кучки. Игрок, взявший последний предмет, выигрывает игру.
Позиция в ниме записывается путем перечисления размеров имеющихся кучек, например, (a; b; c) — позиция, в которой есть три кучки, в первой a предметов, во второй b, а в третьей — c.
Назовем позицию выигрышной, если в ней очередь хода принадлежит игроку, который может довести игру до выигрыша, играя наилучшим образом. Любую другую позицию назовем проигрышной. Какой бы ход игрок в проигрышной позиции ни сделал, его противник сможет выиграть, если будет делать рациональные ходы. Рациональный (т.е. наилучший) ход в выигрышной позиции состоит в том, что игрок должен оставить своему противнику проигрышную позицию.
Классический вариант игры ним с одной кучкой: двое по очереди берут из неё одну, две или три спички. Побеждает тот, кто возьмёт последнюю спичку.
Результат игры просчитать легко. Если число спичек равно 4, 8, 12, 16... то есть кратно 4, выигрывает второй игрок, в противном случае — первый, начинающий. Действительно, если на столе 4 спички и первый ход ваш, как бы вы ни пошли, ответным ходом соперник заберёт оставшиеся спички. Соответственно, если на столе 8 спичек, на любой ваш ход соперник оставит вам 4 спички и т. д. Наоборот, если число спичек не делится на 4, вы берёте из кучки спичек столько, чтобы осталось 4, 8, 12... и в конце концов «прижимаете противника к стенке».


Баше
В этой игре, как и в ниме, спички берут из одной кучки, но не больше заранее оговорённого числа. Иными словами, ним — частный случай игры баше. Однако, поняв тонкости нима, вы легко найдёте правильную стратегию и в игре баше.
Задача 1.
а) На столе 30 спичек, и каждый из игроков может брать не больше 6. Выигрывает тот, кто берёт последнюю спичку. На чьей стороне победа?
б) На столе 31 спичка, и каждый игрок может брать не более 5. На сей раз тот, кто берёт последнюю спичку, проигрывает. Как действовать второму игроку, чтобы обеспечить себе победу?
Ещё два примера.
В двух коробках по 15 конфет. Двое по очереди съедают любое количество из любой, но только одной коробки. Побеждает тот, кто съест последнюю конфету. Кто это — первый или второй игрок?
Верх берёт второй сладкоежка. Каждым своим «ходом» он уравнивает количество конфет в коробках, то есть копирует действия противника (пользуется идеей симметрии).
В одной коробке 15 конфет, а в другой — 20. И снова двое по очереди съедают любое количество конфет из одной коробки. Побеждает съевший последнюю.
А здесь выигрывает первый. Он съедает 5 конфет из коробки, где их больше, а затем, как мы знаем, каждым ходом уравнивает количество конфет в коробках.


Цзяньшицзы.
Игра Цзяньшинцзы (выбирание камней) разыгрывается с двумя кучами предметов по следующим правилам. Двое игроков по очереди берут либо произвольное число предметов из одной кучи (хоть все сразу), либо одинаковое число предметов из каждой кучи (в обоих случаях не менее одного предмета). Выигрывает игрок, забирающий при своем ходе все оставшиеся предметы (что соответствует нормальному правилу окончания).
Данная игра называется также игрой Витгоффа (Wythoff’s game) по имени голландского математика, опубликовавшего в 1907 г. полный анализ игры. Позиция игры — пара неотрицательных целых чисел (m,n). Ход заключается в том, что можно
a) вычесть из одного числа положительное целое;
b) вычесть из обоих чисел одно и то же положительное целое.
Несложно показать, что эта игра эквивалентна игре “ раненый ферзь”: на прямоугольной доске произвольного фиксированного размера стоит ферзь — шахматная фигура, которая в данной игре может ходить по вертикали вниз, по горизонтали влево или по диагонали вниз-влево, на любое число клеток, но хотя бы на одну. Ходы игроков чередуются, и проигрывает игрок, который не может сделать ход.


Нимби
В этой игре три кучки спичек, например по 3, 4 и 5 штук. Для каждой 13 из них легко провести анализ и установить, кто берёт верх.
На столе три кучки спичек — по 5, 9 и 13 штук. На каждом ходу можно брать любое количество спичек, но только из одной кучки. Кто выигрывает, то есть берёт последнюю спичку? Чтобы разобраться в этой игре, надо перевести все три числа в двоичную систему счисления и записать одно под другим:
5 — 101

9 — 1001
13 — 1101
В результате получается таблица, состоящая из единиц и нулей. В трёх первых столбцах число единиц чётное (две или ни одной), а в четвёртом — нечётное (три). Начинающий своим ходом берёт одну спичку из любой кучки, после чего чётным становится число единиц в каждом столбце. Любой ход второго игрока нарушает это свойство, а первый без труда его восстанавливает. В конце концов он и выигрывает, забирая последнюю спичку (во всех кучках в этот момент не останется ничего — 0 спичек, соответственно нет единиц ни в одном столбце).
Игра нимби обобщается на любое количество кучек и любое число спичек в них. Переведя заданные числа в двоичную систему, легко определить, какой из сторон гарантирована победа.


Мариенбад
В сюрреалистическом фильме «В прошлом году в Мариенбаде» один персонаж (мистер M) объясняет окружающим (в том числе некоему мистеру X) правила одной простой игры. M раскладывает на столе карты в четыре ряда в треугольном порядке:
I

I I I
I I I I I

I I I I I I I
Правила таковы: игроки (их двое) по очереди берут любое ненулевое количество карт, но обязательно из одного только ряда. Тот, кто берет последнюю карту, проигрывает. M по-джентльменски уступает право первого хода X, но выигрывает. То же повторяется и во второй раз (со спичками вместо карт). В третий раз M ходит первым, но все равно выигрывает.
Задача 2. Кто побеждает в игре Мариенбад?

Задача 3. Имеется пять кучек с числом спичек 6, 7, 10, 12 и 15. Брать можно любое количество, но обязательно из одной кучки. Снова выигрывает тот, кто берёт последнюю спичку. Какой это игрок: начинающий или второй?


Via http://www.nkj.ru/archive/articles/24641/ и И.Фролов "Введение в теорию комбинаторных игр"

Ещё интересное по теме, больше подобных головоломок и теории:
http://tesera.ru/article/iik33/
http://dariks.narod.ru/games_nim.html
http://e-maxx.ru/algo/sprague_grundy
nick_marcevich2: (01)
1. Опенсорсная С++ библиотека, реализующая алгоритмы machine learning.
Ссылка на kdnuggets: http://www.kdnuggets.com/2014/06/dlib-library-machine-learning.html
Ссылка на сайт библиотеки: http://dlib.net/, библиотека ml: http://dlib.net/ml.html





У них есть ещё раздел image processing, но тут, имхо, openCV вне конкуренции. ;-)

2. О распознавании вообще и в частности face recognition:
http://www.kdnuggets.com/2014/06/new-beginnings-facial-recognition.html

Любопытно:

In Ray Kurzweil’s book How to Create a Mind, it is argued that the human brain contains approximately 300 million ‘general pattern recognizers’ arranged in a hierarchical pattern. Input signals feed through various layers, and concepts are learned in an increasingly abstract sense until a new pattern is learned or an existing pattern recognized.

The closest parallel to this in machine learning are artificial neural networks (ANNs). ANNs use mind-inspired mechanics including simulated neurons and layering to learn concepts from experience (exposure to data). ANNs have been applied to a number of problems in pattern discovery including facial recognition but until recently have had limited success in real-world facial recognition systems.

This is now changing with the use of Deep Learning; a set of algorithms in machine learning that attempt to model high-level abstractions using an approach more closely aligned with how our minds recognize patterns. Using a large number of layers, so called Deep Neural Networks (DNNs) can mimic human learning by adjusting the strength of connections between simulated neurons within many layers, just as the human mind is believed to strengthen our understanding of a concept. Each layer can model an increasingly abstract concept built from the more basic concepts learned at earlier layers.

Интересно, обоснованна ли там эта цифра - 300 миллионов паттернов распознавания? :) А что алгоритмы уже приближаются по точности к распознаванию "вручную", а где-то и превосходят - это да.
nick_marcevich2: (01)
...и как эту систему можно обмануть. :)

Новая статья на Хабре в тему: http://habrahabr.ru/company/recognitor/blog/228195/

Есть даже ссылка на сырцы. Можно свои предположения потестить самостоятельно. ;)
nick_marcevich2: (01)
Новая книга про анализ движения в кадрах:
http://www.kdnuggets.com/2014/04/book-visual-analytics-movement.html

Viz — Новый модуль 3D визуализации в библиотеке OpenCV
http://habrahabr.ru/company/itseez/blog/217021/

Signed Distance Field или как сделать из растра вектор
http://habrahabr.ru/post/215905/

The Cache and Multithreading. Об использовании библиотеки OpenMP для оптимизации матричных вычислений
http://austingwalters.com/the-cache-and-multithreading/
nick_marcevich2: (01)
Только что начался курс по python. https://class.coursera.org/interactivepython-004
Скоро начнётся курс Fundamentals of Digital Image and Video Processing: https://www.coursera.org/course/digital
Кому интересна скала - курс начнётся через месяц, но можно уже записываться: https://www.coursera.org/course/progfun
И Эндрю Нг снова читает machine learning... https://class.coursera.org/ml-005

DeepFace

Mar. 19th, 2014 07:08 pm
nick_marcevich2: (01)
Фейсбук разработал алгоритм для распознавания лиц DeepFace. В основе лежит нейросеть, которая строит 3D-модель головы человека по фотографиям. Эта модель может поворачиваться в соответствие с нужным ракурсом для лучшего распознавания. Тренировали нейросеть на 4 миллионах изображениях 4000 лиц; тестировали вот на этих изображениях: http://vis-www.cs.umass.edu/lfw/

Результат составил более 97%.

(1)

Статья: https://www.facebook.com/download/388286407980383/deepface.pdf
nick_marcevich2: (01)
Ролики про мою любимую OpenCV




И статья с Хабра: http://habrahabr.ru/company/itseez/blog/215923/

Вторая статья на Хабре, тоже про openCV: Как мы спасали глаза с OpenCV

Интересный вариант на gismodo - использовать распознавание уровня гнева и стресса для предупреждения водителя и предотвращения возможной аварии.



Ссылка на статью, кому интересно (ну и себе, любимому, на память): http://gizmodo.com/in-car-facial-recognition-detects-angry-drivers-to-prev-1543709793
nick_marcevich2: (01)


Более подробно - можно посмотреть книжку:


Кликабельно

Profile

nick_marcevich2

February 2016

S M T W T F S
  123456
78910111213
14151617181920
21222324252627
2829     

Syndicate

RSS Atom

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 26th, 2017 07:59 pm
Powered by Dreamwidth Studios