🧩 Говорят, что научили робота собирать незнакомые вещи с успехом в 86% случаев. Для обучения придумали остроумную вещь: сначала заставили робота разбирать вещи, что довольно просто реализовать (детали просто кладутся в случайные места), а потом обучали на прокурученных назад записях.
https://www.youtube.com/watch?v=O8l4Kn-j-5M
https://www.youtube.com/watch?v=O8l4Kn-j-5M
YouTube
This Robot Arm Learned To Assemble Objects It Hasn’t Seen Before
❤️ Check out Lambda here and sign up for their GPU Cloud: https://lambdalabs.com/papers
📝 The paper "Form2Fit: Learning Shape Priors for Generalizable Assembly from Disassembly" is available here:
https://form2fit.github.io/
❤️ Watch these videos in early…
📝 The paper "Form2Fit: Learning Shape Priors for Generalizable Assembly from Disassembly" is available here:
https://form2fit.github.io/
❤️ Watch these videos in early…
Тут подогнали новый state of the art алгоритм сегментации объектов на изображении:
https://arxiv.org/pdf/2001.00309.pdf
https://arxiv.org/pdf/2001.00309.pdf
🏛 Как же детектировали объекты на изображениях древние? (70е - 80е)
🏢 Шаблоном по скользящему окну.
1. Выделяем границы, например, детектором Canny. (Композиция гауссовой свертки и дифференцирования + пороговая функция + некоторый способ сохранения связности линий)
2. Берем наш шаблон в виде какого-то контура и начинаем идти по изображению скользящим окном.
3. Используем Distance Transform, чтобы ускорить следующую операцию.
4. Используем одну из метрик: Chamfer Distance, Hausdorff Distance. (Суммируем или вычисляем максимум расстояния от нашего шаблона до выделенных краев на изображении)
Вообще про древних - это конечно была шутка, часто и сейчас можно пользоваться алгоритмами без машинного обучения.
Обычно их используют когда у вас не очень изменчивая среда и сам объект, где не очень необходимо выделять какую-то
семантику.
⚙️ Например, вам нужно определять правильной ли формы у вас детали на конвейере в какой-то момент.
Конечно, у себя на заводе вы часто можете фиксировать освещение, фон, да и правильные детали всегда одной формы.
✈️ 🛰 🗺 Или например их можно использовать для более интересных, военных целей.
Представьте себе снимок со спутника, нормаль поверхности практически всегда смотрит в камеру, количество разновидностей,
например, самолетов не такое уж и большое. Размер одинаковых объектов не меняется из-за одинаковой высоты.
🏢 Шаблоном по скользящему окну.
1. Выделяем границы, например, детектором Canny. (Композиция гауссовой свертки и дифференцирования + пороговая функция + некоторый способ сохранения связности линий)
2. Берем наш шаблон в виде какого-то контура и начинаем идти по изображению скользящим окном.
3. Используем Distance Transform, чтобы ускорить следующую операцию.
4. Используем одну из метрик: Chamfer Distance, Hausdorff Distance. (Суммируем или вычисляем максимум расстояния от нашего шаблона до выделенных краев на изображении)
Вообще про древних - это конечно была шутка, часто и сейчас можно пользоваться алгоритмами без машинного обучения.
Обычно их используют когда у вас не очень изменчивая среда и сам объект, где не очень необходимо выделять какую-то
семантику.
⚙️ Например, вам нужно определять правильной ли формы у вас детали на конвейере в какой-то момент.
Конечно, у себя на заводе вы часто можете фиксировать освещение, фон, да и правильные детали всегда одной формы.
✈️ 🛰 🗺 Или например их можно использовать для более интересных, военных целей.
Представьте себе снимок со спутника, нормаль поверхности практически всегда смотрит в камеру, количество разновидностей,
например, самолетов не такое уж и большое. Размер одинаковых объектов не меняется из-за одинаковой высоты.
🤖 Kornia и tensorflow.image - альтернативы для OpenCV с фокусом на работе с GPU
Kornia под собой использует PyTorch, а tensorflow.image соответственно tensorflow.
В них реализованы основные классические методы обработки изображений и еще их удобно встраивать в пайплайны ML.
https://kornia.github.io/
https://www.tensorflow.org/api_docs/python/tf/image
Kornia под собой использует PyTorch, а tensorflow.image соответственно tensorflow.
В них реализованы основные классические методы обработки изображений и еще их удобно встраивать в пайплайны ML.
https://kornia.github.io/
https://www.tensorflow.org/api_docs/python/tf/image
This media is not supported in your browser
VIEW IN TELEGRAM
Обзор алгоритмов градиентного спуска https://ruder.io/optimizing-gradient-descent/
◀️ ⏺ ☁︎ От уголков, кружков и пятен к AR
👁Как работают алгоритмы фотограмметрии и позиционирования камеры в AR?
Для того, чтобы, вычленить какое-то трехмерное представление из серии двухмерных картинок,
нам нужно понять, как изменилось положение камеры (например сотового телефона) при переходе от одной картинки к другой.
Именно по этому все AR приложения обычно просят немного поводить камерой туда сюда для определения своего положения.
Чтобы понять, как изменился угол обзора, нам нужно найти точки, соответствующие одной и той же точке в пространстве на двух изображениях. Найти самые характерные точки, желательно чтобы они были инвариантны к масштабу, освещению и тд.
Если мы найдем много таких точек, то мы сможем компенсировать то, что некоторые из них потеряются или перестанут быть инвариантаными.
👁Как работают алгоритмы фотограмметрии и позиционирования камеры в AR?
Для того, чтобы, вычленить какое-то трехмерное представление из серии двухмерных картинок,
нам нужно понять, как изменилось положение камеры (например сотового телефона) при переходе от одной картинки к другой.
Именно по этому все AR приложения обычно просят немного поводить камерой туда сюда для определения своего положения.
Чтобы понять, как изменился угол обзора, нам нужно найти точки, соответствующие одной и той же точке в пространстве на двух изображениях. Найти самые характерные точки, желательно чтобы они были инвариантны к масштабу, освещению и тд.
Если мы найдем много таких точек, то мы сможем компенсировать то, что некоторые из них потеряются или перестанут быть инвариантаными.
После сопоставления этих характерных точек, можно попробовать понять, какое геометрическое преобразование привело к такому изменению расположения характерных точек, и даже понять какую трехмерную форму имеют объекты. + конечно же нам может помочь акселерометр.
🧠 Что мы можем считать характерными точками?
Вот здесь нам и помогут алгоритмы распознавания некоторых особенностей в изображении.
⁃ Первое, что мы можем рассмотреть - это углы на изображении. Еще бы хорошо нам уметь определять, что эти углы примерно равны, и примерно равны в масштабе.
⁃ Вторыми характерными признаками могут оказаться круги разного размера!
⁃ И наконец иногда могут помочь характерные пятна.
Алгоритмы для определения углов:
⁃ Harris (Frostner)
⁃ Harris-Laplace
Круги:
⁃ LoG
⁃ DoG
Пятна:
⁃ IBR
⁃ MSER
Не стоит забывать, что это все необходимо делать в реальном времени, что конечно усложняет нам задачу.
Чуть позже мы разберём эти алгоритмы подробнее.
🧠 Что мы можем считать характерными точками?
Вот здесь нам и помогут алгоритмы распознавания некоторых особенностей в изображении.
⁃ Первое, что мы можем рассмотреть - это углы на изображении. Еще бы хорошо нам уметь определять, что эти углы примерно равны, и примерно равны в масштабе.
⁃ Вторыми характерными признаками могут оказаться круги разного размера!
⁃ И наконец иногда могут помочь характерные пятна.
Алгоритмы для определения углов:
⁃ Harris (Frostner)
⁃ Harris-Laplace
Круги:
⁃ LoG
⁃ DoG
Пятна:
⁃ IBR
⁃ MSER
Не стоит забывать, что это все необходимо делать в реальном времени, что конечно усложняет нам задачу.
Чуть позже мы разберём эти алгоритмы подробнее.
Google добавил фич в свой поисковик датасетов
https://blog.google/products/search/discovering-millions-datasets-web/
https://blog.google/products/search/discovering-millions-datasets-web/
Google
Discovering millions of datasets on the web
Dataset Search launches publicly with an index of 25 million datasets, helping scientists, journalists, students, data geeks to find data.
Полиция Лондона объявила о том, что они начали внедрять распозначание лиц в реальном времени. Как заявляется, для обнаружения местоположения конкретных людей попавших в розыск.
https://news.met.police.uk/news/met-begins-operational-use-of-live-facial-recognition-lfr-technology-392451
https://news.met.police.uk/news/met-begins-operational-use-of-live-facial-recognition-lfr-technology-392451
Boston Dynamics опубликовала свою SDK для управления роботом Spot. Там можно получать карты глубин со стереокамер на роботе, данные о поверхности и тд.
Надеюсь рост популярности этого робота даст нам ещё очень много датасетов с использованием их сенсоров. Ведь они могут снимать и сохранять данные практически постоянно.
https://nplus1.ru/news/2020/01/24/spot-sdk
Надеюсь рост популярности этого робота даст нам ещё очень много датасетов с использованием их сенсоров. Ведь они могут снимать и сохранять данные практически постоянно.
https://nplus1.ru/news/2020/01/24/spot-sdk
nplus1.ru
Boston Dynamics открыла четвероногого робота Spot для сторонних разработчиков
Компания Boston Dynamics опубликовала на GitHub набор средств разработки (SDK), позволяющий любому разработчику создавать приложения для четвероногого робота Spot или адаптировать для него дополнительное оборудование. Кроме того, она объявила, что в мае проведет…
Задача:
На видео появляются подобные артефакты, см. изображение. Внутри красных окружностей.
Можете ли вы объяснить природу их появления?
#задача
На видео появляются подобные артефакты, см. изображение. Внутри красных окружностей.
Можете ли вы объяснить природу их появления?
#задача
Участвую в биологическо / computer vision / робото проекте в University of Sheffield.
Вот видео системы автоматической фокусировки микроскопа.
https://twitter.com/CalcNeuro/status/1222118221614059520
Подписывайтесь на твиттер, будем постить всякое интересное:
https://twitter.com/CalcNeuro
Блог проекта:
https://neurocalc.blog/
Вот видео системы автоматической фокусировки микроскопа.
https://twitter.com/CalcNeuro/status/1222118221614059520
Подписывайтесь на твиттер, будем постить всякое интересное:
https://twitter.com/CalcNeuro
Блог проекта:
https://neurocalc.blog/
Twitter
NeuroCalc
Our version of motorised Z-stage with (future) perfect focusing system. In collaboration with @KatuninP https://t.co/aqamjUlhJv
📔Обзор журнала Computer Vision News - Январь 2020
https://www.rsipvision.com/ComputerVisionNews-2020January/
🔦 Стр. 4. Статья топящая за PyTorch.
По мнению автора эволюция прошла так:
TensorFlow -> Keras -> PyTorch (как самый крутой)
Показывается пример решения задачи стилизации изображения, где подгружается предтренированная VGG нейронка.
Демонстрируется как просто на PyTorch делегировать какие-то вычисления GPU.
🔬 Стр. 8. Небольшой рассказ про чувака по имени Bernhard Kainz - который преподает в Imperial College London.
Он специализируется на задачах связанных с медицинскими снимками.
Ученый вкладывает свои надежды в domain adaptation method for feature disentanglement.
Вкратце - это возможность адаптировать одни модели, хорошо работающие с одной предметной областью к другой.
Например, модель которая работает с МРТ адаптируется для работы с КТ.
И это не только transfer learning который первым приходит на ум. Для этого используются CycleGAN и тд.
Быстрый гуглинг дал пару статей на эту тему:
https://arxiv.org/pdf/1907.13590.pdf
https://arxiv.org/pdf/1904.12347.pdf
🕸 Стр. 14. Обзор статьи On Exact Computation with an Infinitely Wide Neural Net.
Теоретическая статья, котороя доводит идею DL до крайности.
Что будет если глубина нейронной сети будет стремиться к бесконечности?
Для моделирования такой сети используют Neural tangent kernel (NTK)
https://rajatvd.github.io/NTK/
Вот сама оригинальная статья. Рекомендую, читать интересно.
https://arxiv.org/pdf/1904.11955.pdf
🏅Стр. 18. Освещаются актуальные сейчас прикладные задачи по которым объявлены конкурсы:
⁃ EndoVis 2019
⁃ Depth estimation from stereo camera
⁃ Surgical Workflow analysis and Skill Assessment
⁃ Recognizing families in the wild
https://www.rsipvision.com/challenges-ai-solutions-endoscopy/
https://web.northeastern.edu/smilelab/rfiw2020/
Дерзайте!
#computervisionnews #обзор #nntheory #pytorch #challenge
https://www.rsipvision.com/ComputerVisionNews-2020January/
🔦 Стр. 4. Статья топящая за PyTorch.
По мнению автора эволюция прошла так:
TensorFlow -> Keras -> PyTorch (как самый крутой)
Показывается пример решения задачи стилизации изображения, где подгружается предтренированная VGG нейронка.
Демонстрируется как просто на PyTorch делегировать какие-то вычисления GPU.
🔬 Стр. 8. Небольшой рассказ про чувака по имени Bernhard Kainz - который преподает в Imperial College London.
Он специализируется на задачах связанных с медицинскими снимками.
Ученый вкладывает свои надежды в domain adaptation method for feature disentanglement.
Вкратце - это возможность адаптировать одни модели, хорошо работающие с одной предметной областью к другой.
Например, модель которая работает с МРТ адаптируется для работы с КТ.
И это не только transfer learning который первым приходит на ум. Для этого используются CycleGAN и тд.
Быстрый гуглинг дал пару статей на эту тему:
https://arxiv.org/pdf/1907.13590.pdf
https://arxiv.org/pdf/1904.12347.pdf
🕸 Стр. 14. Обзор статьи On Exact Computation with an Infinitely Wide Neural Net.
Теоретическая статья, котороя доводит идею DL до крайности.
Что будет если глубина нейронной сети будет стремиться к бесконечности?
Для моделирования такой сети используют Neural tangent kernel (NTK)
https://rajatvd.github.io/NTK/
Вот сама оригинальная статья. Рекомендую, читать интересно.
https://arxiv.org/pdf/1904.11955.pdf
🏅Стр. 18. Освещаются актуальные сейчас прикладные задачи по которым объявлены конкурсы:
⁃ EndoVis 2019
⁃ Depth estimation from stereo camera
⁃ Surgical Workflow analysis and Skill Assessment
⁃ Recognizing families in the wild
https://www.rsipvision.com/challenges-ai-solutions-endoscopy/
https://web.northeastern.edu/smilelab/rfiw2020/
Дерзайте!
#computervisionnews #обзор #nntheory #pytorch #challenge
Rsipvision
Computer Vision News - January 2020
The magazine of the algorithm community
🎻 Пара ресурсов по Classical Computer Vision (не ML)
Многие задачи мы можем решать, не подходя к ним статистически, а подходя к ним эвристически.
Такой подход к решению CV задач предшествовал бурному развитию ML и DL, и обычно не включает в себя этапы обучения модели.
Так же, в курсы типа “Введение в компьютерное зрение” входят такие критические понятия как:
⁃ Фурье анализ
⁃ Модели представления цветов
⁃ Физика света и тд
Мое субъективное мнение, что путь обучения CV должен быть таким:
0️⃣ Математика (О ней мы говорили в одном из предыдущих постов) ->
1️⃣ Классический CV ->
2️⃣ ML + DL
Пара ресурсов:
Введение в компьютерное зрение. Курс лекций от Антона Конушина.
Ставим на скорость воспроизведение 1.25x и изучаем.
https://www.lektorium.tv/course/22847
Книга A practical introduction to Computer Vision with OpenCV.
https://www.amazon.co.uk/Practical-Introduction-Computer-Imaging-Technology/dp/1118848454
Можно параллельно и смотреть курс и читать книгу.
#education #courses #classicalcv #cv #opencv
Многие задачи мы можем решать, не подходя к ним статистически, а подходя к ним эвристически.
Такой подход к решению CV задач предшествовал бурному развитию ML и DL, и обычно не включает в себя этапы обучения модели.
Так же, в курсы типа “Введение в компьютерное зрение” входят такие критические понятия как:
⁃ Фурье анализ
⁃ Модели представления цветов
⁃ Физика света и тд
Мое субъективное мнение, что путь обучения CV должен быть таким:
0️⃣ Математика (О ней мы говорили в одном из предыдущих постов) ->
1️⃣ Классический CV ->
2️⃣ ML + DL
Пара ресурсов:
Введение в компьютерное зрение. Курс лекций от Антона Конушина.
Ставим на скорость воспроизведение 1.25x и изучаем.
https://www.lektorium.tv/course/22847
Книга A practical introduction to Computer Vision with OpenCV.
https://www.amazon.co.uk/Practical-Introduction-Computer-Imaging-Technology/dp/1118848454
Можно параллельно и смотреть курс и читать книгу.
#education #courses #classicalcv #cv #opencv
www.lektorium.tv
Введение в компьютерное зрение | Лекториум
В курсе рассматриваются как базовые понятния компьютерного зрения, так и ряд современных алгоритмов, позволяющих решать практические задачи. Отдельно отмечается связь методов компьютерного зрения с обработкой зрительной информации в мозгу человека. Курс подготовлен…
This media is not supported in your browser
VIEW IN TELEGRAM
Какая красивая штука. Пока не нашел информацию как конкретно сделали.
Про субъективность оценки качества фотографий
https://www.youtube.com/watch?v=Rh18DV5IGIA
https://www.youtube.com/watch?v=Rh18DV5IGIA
YouTube
ЛУЧШЕЙ КАМЕРЫ НЕ СУЩЕСТВУЕТ | РАССЛЕДОВАНИЕ
В этом обзоре лучшие камерофоны последнего времени: Pixel 4, iPhone 11 Pro Max, Galaxy Note 10 Plus, Huawei Mate 30 Pro, Xiaomi Note 10. Мы решили провести слепой тест камеры, но по ходу дела обнаружили куда более важные закономерности. Расследование о том…
🔎 Как работает автофокус? На примере микроскопа.
Для того, чтобы определить в какой момент нам стоит прекратить изменять расстояние от образца до объектива, нам нужно придумать метрику сфокусированности изображения.
Интуитивно мы понимаем, что самая сфокусированная фотография - та на которой больше контраста,
больше четких линий, больше высоких частот.
То есть нам нужно понять на каком изображении больше контрастных границ.
🕸 В этом нам поможет умение определять границы на фотографии:
Мы уже обсуждали это в предыдущих постах (Оператор Собеля, оператор Кенни)
Простой и эффективной мерой сфокусированности является TENG:
https://github.com/vismantic-ohtuprojekti/qualipy/blob/master/qualipy/utils/focus_measure.py
Мы берем оператор Собеля и считаем среднее от каждого пикселя
mean(sobelX^2 + sobelY^2)
Вы можете увидеть график с этой мерой внизу видео (🔬 20*20 X препарат с насекомым)
Теперь остается только посмотреть пики на графике и остановиться на вершине (см красные круги)
📱 Примерно так и работает фокусировка в вашем смартфоне. Только в этом случае двигается не образец или объектив микроскопа, а двигается взад-вперед объектив камеры.
Я даже читал в какой-то статье, что там используются моторчики-степперы, страшно представить какого маленького размера они должны быть. Но может это далеко не у всех так.
#autofocus #sobel #canny #focus #TENG #microscope
Для того, чтобы определить в какой момент нам стоит прекратить изменять расстояние от образца до объектива, нам нужно придумать метрику сфокусированности изображения.
Интуитивно мы понимаем, что самая сфокусированная фотография - та на которой больше контраста,
больше четких линий, больше высоких частот.
То есть нам нужно понять на каком изображении больше контрастных границ.
🕸 В этом нам поможет умение определять границы на фотографии:
Мы уже обсуждали это в предыдущих постах (Оператор Собеля, оператор Кенни)
Простой и эффективной мерой сфокусированности является TENG:
https://github.com/vismantic-ohtuprojekti/qualipy/blob/master/qualipy/utils/focus_measure.py
Мы берем оператор Собеля и считаем среднее от каждого пикселя
mean(sobelX^2 + sobelY^2)
Вы можете увидеть график с этой мерой внизу видео (🔬 20*20 X препарат с насекомым)
Теперь остается только посмотреть пики на графике и остановиться на вершине (см красные круги)
📱 Примерно так и работает фокусировка в вашем смартфоне. Только в этом случае двигается не образец или объектив микроскопа, а двигается взад-вперед объектив камеры.
Я даже читал в какой-то статье, что там используются моторчики-степперы, страшно представить какого маленького размера они должны быть. Но может это далеко не у всех так.
#autofocus #sobel #canny #focus #TENG #microscope
GitHub
qualipy/qualipy/utils/focus_measure.py at master · vismantic-ohtuprojekti/qualipy
Software engineering lab. Contribute to vismantic-ohtuprojekti/qualipy development by creating an account on GitHub.