RU2700246C1 - Способ и система захвата объекта с помощью роботизированного устройства - Google Patents

Способ и система захвата объекта с помощью роботизированного устройства Download PDF

Info

Publication number
RU2700246C1
RU2700246C1 RU2019108223A RU2019108223A RU2700246C1 RU 2700246 C1 RU2700246 C1 RU 2700246C1 RU 2019108223 A RU2019108223 A RU 2019108223A RU 2019108223 A RU2019108223 A RU 2019108223A RU 2700246 C1 RU2700246 C1 RU 2700246C1
Authority
RU
Russia
Prior art keywords
capture
robotic device
point
robotic
points
Prior art date
Application number
RU2019108223A
Other languages
English (en)
Inventor
Альберт Рувимович Ефимов
Александр Николаевич Сёмочкин
Святослав Дмитриевич Морошкин
Сейедхассан Забихифар
Original Assignee
Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) filed Critical Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк)
Priority to PCT/RU2019/000178 priority Critical patent/WO2020190166A1/ru
Priority to RU2019108223A priority patent/RU2700246C1/ru
Priority to EA201990572A priority patent/EA038279B1/ru
Application granted granted Critical
Publication of RU2700246C1 publication Critical patent/RU2700246C1/ru

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Automation & Control Theory (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Fuzzy Systems (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Image Analysis (AREA)
  • Manipulator (AREA)

Abstract

Изобретение относится к области робототехнических устройств. Технический результат заключается в повышении точности распознавания области захвата объекта роботизированным устройством. Способ захвата объекта с помощью роботизированного устройства, в котором обучают роботизированное устройство с помощью алгоритма машинного обучения для распознавания и запоминания точек захвата объектов, причем обучение выполняется на данных, характеризующих фотографические изображения объектов и соответствующие 3D модели объектов в различных ракурсах; формируют по меньшей мере одну точку захвата объекта, представленного на графическом изображении объекта; получают фотографическое изображение объекта с помощью камеры роботизированного устройства и определяют ракурс, отображающий сформированную точку захвата объекта; получают трехмерное облако точек объекта в ракурсе с помощью сенсора глубины роботизированного устройства; определяют по полученному облаку точек месторасположение точки захвата объекта; определяют ориентацию и положение захватного устройства роботизированного устройства в точке захвата с помощью вычисления матриц поворотов роботизированного устройства; осуществляют захват объекта с помощью роботизированного устройства на основании вычисления усредненной матрицы поворотов для заданной точки захвата. 2 н. и 15 з.п. ф-лы, 9 ил.

Description

ОБЛАСТЬ ТЕХНИКИ
[0001] Заявленное техническое решение в общем относится к области робототехнических устройств, а в частности, к способам и системам для обеспечения захвата различных объектов с помощью роботизированных устройств.
УРОВЕНЬ ТЕХНИКИ
[0002] Использование роботизированных устройств для обеспечения манипуляций с различными объектами широко известно из существующего уровня техники и находит широкое применение в сфере промышленных роботов в различных отраслях производства.
[0003] Основной сложностью в процессе применения роботизированных устройств при манипуляциях с различными типами объектов является необходимость сложного процесса обучения, который заключается в создании графических образов объектов с их точными геометрическими параметрами и последующую отладку роботизированных манипуляторов для взаимодействия с ними.
[0004] В настоящее время для процесса обучения захвата объектов предлагаются различные подходы на базе алгоритмов и моделей машинного обучения, в частности с использованием нейронных сетей, с помощью которых выполняется обучение роботизированных манипуляторов для захватов объектов по обученным заранее точкам захвата. Такой подход раскрывается в работе Dense Object Nets: Learning Dense Visual Object Descriptors By and For Robotic Manipulation (Peter R. Florence et al., CSAIL, Massachusetts Institute of Technology, 07.09.2018). Известное решение предлагает использовать облака точек объектов в процессе обучения роботизированных устройств, для того чтобы сформировать дескрипторы объектов на основании фотографических и 3D моделей таких объектов для целей последующего указания точек захвата и взаимодействия с объектами в указанных точках.
[0005] Основной недостаток известного решения заключается в ограничении возможности захвата различных типов объектов, что обусловлено отсутствием анализа поворота захватного устройства робота. С учетом того, что объект может находится в различном положении при работе роботизированного устройства, необходимо оценивать «идеальное» положение захватного устройства для более точного и правильного взаимодействия с объектом.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
[0006] Решаемой технической задачей или технической проблемой является обеспечение нового процесса взаимодействия с объектами с помощью их захвата роботизированными устройствами.
[0007] Техническим результатом, достигающимся при решении вышеуказанной технической проблемы, является повышение точности распознавания области захвата объекта роботизированным устройством, за счет определения ориентации захватного устройства на основании расчета матрицы поворотов для цели захвата объекта в требуемой точке захвата.
[0008] Заявленный технический результат достигается за счет способа захвата объекта с помощью роботизированного устройства, содержащего этапы, на которых: обучают роботизированное устройство с помощью по меньшей мере алгоритма машинного обучения для распознавания и запоминания точек захвата объектов, причем обучение выполняется на данных, характеризующих фотографические изображения объектов и соответствующие 3D модели объектов в различных ракурсах; формируют по меньшей мере одну точку захвата объекта, представленного на графическом изображении объекта;
получают фотографическое изображение объекта с помощью камеры роботизированного устройства и определяют ракурс, отображающий сформированную точку захвата объекта; получают трехмерное облако точек объекта в выявленном ракурсе с помощью сенсора глубины роботизированного устройства;
определяют по полученному облаку точек месторасположение точки захвата объекта; определяют ориентацию и положение захватного устройства роботизированного устройства в обнаруженной точке захвата, причем определение осуществляется с помощью вычисления матриц поворотов роботизированного устройства;
осуществляют захват объекта с помощью роботизированного устройства на основании вычисления усредненной матрицы поворотов для заданной точки захвата.
[0009] В частном варианте осуществления способа роботизированное устройство представляет собой роботизированный манипулятор или роботизированную руку.
[0010] В другом частном варианте осуществления способа на этапе обучения дополнительно указываются две и более точек захвата объекта на соответствующей 3D модели объекта.
[0011] В другом частном варианте осуществления способа на этапе обучения дополнительно указывают и запоминают расположение роботизированного устройства в точке захвата в зависимости от расположения объекта.
[0012] В другом частном варианте осуществления способа определение месторасположения точки захвата на изображении осуществляется с помощью модели машинного обучения.
[0013] В другом частном варианте осуществления способа дополнительно определяется принцип захвата объекта в зависимости от типа захватного устройства и/или типа объекта.
[0014] В другом частном варианте осуществления способа для нескольких точек захвата объекта указывается оптимальная точка захвата объекта на основании ее взаимного расположения относительно других точек захвата и относительно захватного устройства в момент осуществления захвата.
[0015] В другом частном варианте осуществления способа роботизированный манипулятор калибруется по поверхности взаимодействия с объектом.
[0016] В другом частном варианте осуществления способа калибровка осуществляется с помощью нанесения на поверхность графических кодов дополненной реальности.
[0017] Заявленный технический результат достигается также за счет системы захвата объекта с помощью роботизированного устройства, которая содержит:
роботизированное устройство, содержащее по меньшей мере одну камеру, по меньшей мере один сенсор глубины и захватное устройство;
вычислительное устройство, соединенное с роботизированным устройством, причем вычислительное устройство взаимодействует с моделью машинного обучения, которая обучена на фотографических изображениях объектов и соответствующих 3D моделей объектов в различных ракурсах для распознавания и запоминания точек захвата объектов; формировать по меньшей мере одну точку захвата объекта, представленного на графическом изображении объекта;
получать фотографическое изображение объекта от камеры роботизированного устройства и определять ракурс, отображающий сформированную точку захвата объекта; получать трехмерное облако точек объекта в выявленном ракурсе с помощью сенсора глубины роботизированного устройства;
определять по полученному облаку точек месторасположение точки захвата объекта; определять ориентацию и положение захватного устройства в обнаруженной точке захвата, причем определение осуществляется с помощью вычисления матриц поворотов роботизированного устройства;
формировать команду для захвата объекта с помощью роботизированного устройства на основании вычисления усредненной матрицы поворотов для заданной точки захвата.
[0018] В частном варианте реализации системы роботизированное устройство представляет собой роботизированный манипулятор или роботизированную руку.
[0019] В другом частном варианте реализации системы вычислительное устройство представляет собой компьютер, систему на кристалле (SoC), или сервер.
[0020] В другом частном варианте реализации системы вычислительное устройство соединено проводным ил беспроводным способом с роботизированным устройством.
[0021] В другом частном варианте реализации системы модель машинного обучения представляет собой по меньшей мере одну нейронную сеть.
[0022] В другом частном варианте реализации системы модель машинного обучения выполнена с возможностью автоматического переобучения на основании новых данных об объектах.
[0023] В другом частном варианте реализации системы новые данные об объектах передаются от облачного сервера.
[0024] В другом частном варианте реализации системы нейронная сеть расположена на облачном сервере.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0025] Признаки и преимущества настоящего технического решения станут очевидными из приводимого ниже подробного описания и прилагаемых чертежей, на которых:
[0026] Фиг. 1 иллюстрирует общий вид заявленной системы.
[0027] Фиг. 2 иллюстрирует схематичный вид манипулятора роботизированного устройства.
[0028] Фиг. 3 иллюстрирует блок-схему общей процедуры обучения роботизированного устройства.
[0029] Фиг. 4 иллюстрирует пример обучения роботизированного устройства с помощью изображений и 3Д-моделей объекта.
[0030] Фиг. 5 иллюстрирует пример обучения роботизированного устройства с помощью нескольких точек захвата на объекте.
[0031] Фиг. 6 иллюстрирует блок-схему выполнения заявленного способа.
[0032] Фиг. 7 иллюстрирует пример центрирования захватного устройства для определения требуемой точки захвата на объекте.
[0033] Фиг. 8 иллюстрирует пример системы с получением изображений в реальном времени.
[0034] Фиг. 9 иллюстрирует пример вычислительной системы.
ДЕТАЛЬНОЕ ОПИСАНИЕ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
[0035] Данное техническое решение может быть реализовано на компьютере, в виде автоматизированной информационной системы (АИС) или машиночитаемого носителя, содержащего инструкции для выполнения вышеупомянутого способа.
[0036] Техническое решение может быть реализовано в виде распределенной компьютерной системы, которая может быть установлена на централизованном сервере (наборе серверов). Доступ пользователей к системе возможен как из сети Интернет, так и из внутренней сети предприятия/организации посредством мобильного устройства связи, на котором установлено программное обеспечение с соответствующим графическим интерфейсом пользователя, или персонального компьютера с доступом к веб-версии системы с соответствующим графическим интерфейсом пользователя.
[0037] Ниже будут описаны термины и понятия, необходимые для реализации настоящего технического решения.
[0038] В данном решении под системой подразумевается компьютерная система, ЭВМ (электронно-вычислительная машина), ЧПУ (числовое программное управление), ПЛК (программируемый логический контроллер), компьютеризированные системы управления и любые другие устройства, способные выполнять заданную, четко определенную последовательность вычислительных операций (действий, инструкций).
[0039] Под устройством обработки команд подразумевается электронный блок либо интегральная схема (микропроцессор), исполняющая машинные инструкции (программы).
[0040] Устройство обработки команд считывает и выполняет машинные инструкции (программы) с одного или более устройства хранения данных. В роли устройства хранения данных могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD), оптические приводы.
[0041] Программа - последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины или устройством обработки команд.
[0042] Как представлено на Фиг. 1, система (100) для реализации заявленного решения содержит вычислительное устройство (110), обеспечивающее необходимые процессы вычислительной обработки алгоритма для функционирования роботизированного устройства (200), канал передачи данных (130), обеспечивающий процессы приема/передачи данных между элементами системы (100), а также удаленное вычислительное устройство (120), например, облачный сервер для специализированного выполнения задач.
[0043] В качестве вычислительного устройства (110), с которым взаимодействует пользователь (10), может использоваться, например, персональный компьютер, ноутбук, планшет, сервер, смартфон, серверный кластер, мейнфрейм, суперкомпьютер, тонкий клиент, система на кристалле (англ. «System on а Chip», сокр. SoC) и т.п. Конкретная аппаратная реализация вычислительного устройства (110) зависит от предъявляемых требований и должна обеспечивать необходимые процессы вычислительной обработки цифровой информации для обеспечения должного функционирования устройства (110) в составе системы (100).
[0044] В качестве канала передачи данных (130) может применяться различный вид связи, например, проводного и/или беспроводного типа, в частности: LAN, WAN, WLAN, Bluetooth, Wi-Fi, GSM/GPRS/LTE/5G, Ethernet, USB, RS232, RJ45 и т.п.
[0045] Удаленное вычислительное устройство (120), как правило, представляет собой облачное хранилище данных или сервер для решения специализированных задач или программной логики. Описание работы устройства (120) будет раскрыто далее в настоящем описании.
[0046] В качестве роботизированного устройства (200) может применяться как стационарный роботизированный манипулятор промышленного или коллаборативного назначения, например, Universal Robotics™, KUKA™, Fanuc™, ABB™ и т.п., так и роботизированные манипуляторы, устанавливаемые на подвижные автономные роботизированные устройства, в качестве конечностей, в частности роботизированные руки.
[0047] На Фиг. 2 представлено схематическое изображение примера роботизированного устройства (200) в виде манипулятора, снабженного захватным устройством (210) и модулем, содержащим RGB камеру (211) и камеру с сенсором глубины (212) (также называемую камерой глубины или RGB-D камерой). С помощью RGB камеры (211) выполняется получения двумерных графических изображений объекта (20), с которым предполагается взаимодействие с помощью роботизированного устройства (200). Камера глубины (212) применяется для получения 3D моделей объекта (20), а также центрированию захватного устройства (210) и определения расстояния до объекта (20).
[0048] В качестве захватного устройства (210) могут применяться различные типы схватов, например, в виде клешней, антропоморфных кистей рук и т.п.Захватное устройство, как правило, обеспечивает 6-степеней свободы для выполнения процесса манипуляций с объектом.
[0049] Как показано на Фиг. 1, объект (20), с которым осуществляется взаимодействие роботизированного устройства (200), может размещаться на поверхности, на которую наносятся маркеры дополненной реальности (201), применяемые для калибровки роботизированного устройства (200) для целей формирования области его действия (205), в которой объект (20) может быть захвачен. Маркеры дополненной реальности (201) представляют собой графические коды дополненной реальности, также называемые AR-кодами (англ. Augmented reality codes), которые используются для ограничения поверхности взаимодействия с объектом (20). Объект (20) может представлять собой широкий спектр изделий, имеющих мягкую (деформируемую) или твердую форму.
[0050] На Фиг. 3 представлен процесс обучения (300) роботизированного устройства (200). Для обучения применяется подход из указанной выше научной публикации. На первом шаге (301) осуществляется съемка объекта (20) с помощью RGB камеры (211). Съемка осуществляется с различных ракурсов. Далее с помощью камеры глубины (212) на каждом из полученных ракурсов создается соответствующее ракурсу облако точек (302).
[0051] По сформированным на этапе (302) облаками точек осуществляется построение 3D модели объекта (20) за счет объединения полученных облаков точек для каждого из ракурсов съемки на этапе (301). Полученное множество позиций камеры (211), соотнесенных с изображениями объекта, полученных на соответствующих ракурсах на этапе (301), а также итоговая 3D модель объекта (20), полученная на этапе (303), используются для автоматической подготовки обучающей выборки для тренировки модели машинного обучения на этапе (304), в частности сверточной нейронной сети (СНС).
[0052] На Фиг. 4 представлен пример получения ракурсов (PI) - (Р4) изображений объекта (20). По каждому ракурсу (P1) - (Р4) с помощью камеры глубины (212) строится соответствующая модель (M1) - (М4) на основании получаемого облака точек. Все облака точек (M1) - (М4), слитые в единое целое, образуют 3D модель объекта (21). В итоге по полученным моделям ракурсов (M1) - (М4) создается итоговая 3D модель объекта (21), с помощью слияния всех полученных облаков точек (M1) - (М4) по ракурсам (P1) - (Р4) изображений объекта. Необходимо отметить, что количество ракурсов изображений объекта (20) может быть любым и не ограничиваться приведенным примером количества ракурсов. Данный подход позволяет по выбранной точке на изображении объекта, например, фотографии или трехмерной модели, найти соответствующую ей 3D точку на поверхности модели объекта для его захвата.
[0053] С помощью модели машинного обучения выполняется отображение из множества изображений заданного размера в множество дескрипторов, подобранных во время обучения таким образом, что для двух точек из двух разных изображений расстояние между соответствующими им дескрипторами будет меньше определенного значения, если эти точки являются проекциями одной и той же точки на поверхности 3D модели объекта (21). Данная операция производится несколько раз для разных положений объекта (20) в области досягаемости (205) роботизированного устройства (200).
[0054] При построении обучающей выборки для модели машинного обучения для каждой фотографии объекта (20) с соответствующего ракурса выбирается по одной точке, для каждой из которых имеется соответствующая 3D точка с поверхности модели объекта, полученная из облака точек соответствующего ракурса съемки объекта (20). В качестве примера можно рассмотреть пары фотографий одного объекта (20) с соответствующими точками. Если пара 3D точек на соответствующих 2D изображениях принадлежат одному и тому же вокселю/вертексу 3D модели объекта (21), то считается, что эти точки являются «соответствующими» (совпадающими), иначе «несоответствующими» (несовпадающими). Таким образом, из всех фотографий можно получить миллионы пар пикселов как совпадающих, так и несовпадающих. На основании данной информации строится обучающая выборка для тренировки нейронной сети.
[0055] В режиме эксплуатации на вход нейронной сети подаются фотографии объекта (20), состоящие из пикселов, на выходе каждому пикселю соответствует дескриптор (последовательность чисел одинаковой длины n, или точка в n-мерном пространстве, на котором задана метрика - функция вычисления расстояния между точками этого пространства). Нейронную сеть тренируют на множестве пар пикселов из обучающей выборки так, чтобы для совпадающих пикселов, расстояние между соответствующими им дескрипторами было меньше определенного порога, а для несовпадающих - больше.
[0056] На Фиг. 5 представлен пример обучения позициям захвата объекта (20), с помощью указания нескольких точек захвата (25, 26) объекта (20) с помощью захватного устройства (210). При обучении роботизированного устройства (200) взаимодействию с объектами (20), по точкам захвата (25, 26) формируется взаимная ориентация отрезков (22) между выделенными точками захвата (25, 26) и ориентацией захватного устройства (210). Далее для пар отрезков (22) между точками захвата на исходных данных и соответствующих найденных точках захвата (25, 26) на объекте (20) при его съемке с помощью RGB камеры (211) и камеры глубины (212) вычисляются матрицы поворотов. По всем парам отрезков (22) вычисляется усредненная матрица поворота, которая применяется к сохраненной конфигурации, соответствующей ранее заданной точке захвата и захватное устройство (210) приводится в движение для захвата объекта в выбранной точке.
[0057] На этапе обучения (300) роботизированного устройства (200) дополнительно захватное устройство (210) тренируется по взаимодействию с объектами (20) в зависимости от их формы и степени деформации, а также в зависимости от конфигурации захватного устройства (210). Конфигурация и принцип захвата устройства (210) играют важную роль при анализе позиции и возможности взаимодействия с объектом (20) в зависимости от его расположения в области досягаемости (205) устройства (200). В случае работы с мягкими или легкодеформируемыми объектами (20), например, плюшевыми игрушками, пакетами, тканевыми упаковками и т.п., принцип захвата может являться допустимым для работы с объектом (20) с помощью его захвата любым возможным способом в указанной точке захвата (25).
[0058] Если взаимодействие осуществляется с твердым объектом (20), например, книга, телефон, коробка и т.п., то захватное устройство (210) тренируется для взаимодействия с допустимой частью объекта (20) (в целях исключения нарушения его целостности или недопустимой деформации), а также в зависимости от конфигурации установленного захватного устройства (210). Например, антропоморфные захваты (210) в виде роботизированной руки имеют большую степень возможности для взаимодействия с требуемой точкой захвата (25) объекта (20) по сравнению с «клешневидным» схватом, представленным на Фиг. 2.
[0059] Процесс обучения роботизированного устройства (200) может также выполняться с помощью внешнего контроллера, например, перчатки-контроллера, позволяющего запоминать принцип взаимодействия с объектом (20) с помощью манипуляции движений оператора (10).
[0060] На Фиг. 6 представлен процесс выполнения способа (400) осуществления захвата объекта (20) роботизированным устройством (200). Описание процесса работы (400) роботизированного устройства (200) также будет описано с отсылкой к Фиг. 7.
[0061] После прохождения вышеописанного процесса обучения (300) роботизированного устройства (200), его функционирование может осуществляться в автоматизированном режиме. Оператор (10) с помощью вычислительного устройства (110) осуществляет формирование (этап 401) точки захвата (25), например, с помощью указания на изображении объекта (23) с помощью графического интерфейса пользователя (GUI). Таким образом, на изображении (23) отмечается пиксель или группа пикселей, соответствующий точке захвата (25) или окрестности нахождения данной точки (25) на объекте (20).
[0062] По полученной информации о точке захвата (25) роботизированное устройство (200) осуществляет обзор и фотографирование (этап 402) с помощью RGB камеры (211) объекта захвата (20). Роботизированное устройство (200) делает серию фотографий (не более 10 снимков) с нескольких различных позиций (ракурсов) камеры (211). С помощью модели машинного обучения, в частности обученной СНС, из серии полученных с камеры (211) фотографий выбирается одна с наиболее вероятными координатами расположения заданной точки интереса (25), после чего роботизированное устройство (200) размещает камеру (211) в позицию, с которой была сделана данная фотография (этап 403).
[0063] На основании обработки получаемых фотографий объекта (20), для каждой фотографии из этой серии СНС вычисляет дескрипторы, среди которых осуществляется поиск и нахождения дескриптора, расстояние от которого до координаты пикселя точки захвата (25) является минимальным.
[0064] Далее осуществляется локализация точки интереса (этап 404) на поверхности 3D модели объекта (21) с помощью облака точек, получаемого с камеры глубины (212), как представлено на Фиг. 7. Для точной локализации точки захвата (25) (этап 405) интегрируются несколько облаков точек за определенный промежуток времени, и находится точка в полученном облаке точек, ближайшая к прямой, проведенной из оптического центра (27) камеры (212) и проходящей через плоскость изображения камеры в проекции точки интереса (25).
[0065] Далее на этапе (406) выполняется расчет матриц поворотов для осуществления захвата объекта (20) и по вычислению усредненной матрицы поворотов захватного устройства (210) анализируется позиция и траектория движения устройства (210) для осуществления захвата (этап 407) объекта (20).
[0066] Как было показано на Фиг. 5, в процессе обучения вариантов захвата устройством (210) на объекте (20) задают несколько точек (25, 26), относительно которых запоминают положение и ориентацию захватного устройства (210). В случае захвата объекта (20), находящегося в произвольном положении, на объекте (20) распознаются заданные точки (25, 26) и матрицы поворотов захватного устройства (210) вычисляются таким образом, чтобы взаимная ориентация точек захвата (25, 26) и захватного устройства (210) соответствовали сохраненным значениям во время обучения.
[0067] В случае, когда используются захватные устройства (210) с большим количеством степеней свободы, при формировании захвата в заданной точке на этапе обучения запоминается серия позиций, ориентаций и конфигураций захватного устройства (210). После вычисления матриц поворотов захватного устройства (210) для каждого элемента этой серии с помощью алгоритмов инверсной кинематики роботизированное устройство (200) приводится в соответствующее положение. При планировании траектории движения роботизированного устройства (200) соответствующим алгоритмом учитываются возможные коллизии как между узлами самого устройства (200), так и с окружающими предметами.
[0068] Указанная модель машинного обучения может содержаться как непосредственно на устройстве (110), связанным с роботизированным устройством (200), так и находится на удаленном устройстве (120), например, сервере, и осуществлять обработку данных по запросу, формируемому от вычислительного устройства (110) на основании данных, получаемых от роботизированного устройства (200).
[0069] Как представлено на Фиг. 8, в частном примере реализации системы (100) может использоваться несколько вычислительных устройств, каждое из которых предназначено для реализации требуемого функционала. Например, в качестве исходного изображения (23) для формирования точки захвата (25), может применяться изображение, полученное с камеры смартфона (110). После получения изображения (23) пользователь (10) указывается требуемую точку захвата (25) для соответствующего объекта (20), с которым взаимодействует роботизированное устройство (200). Устройство (200) может осуществлять обращение к серверу (120) для инициирования процесса обработки данных о схожем типе объекта (20), который находится в области работы роботизированного устройства (205).
[0070] Обработка данных для распознавания объекта (20) и выявлению требуемой точки захвата (25) выполняется с помощью обученной нейронной сети, которая может располагаться на сервере (120) и обновляться по мере поступления новых данных о соответствующих типах объектов (121) и вариантов взаимодействия с ними.
[0071] Библиотека моделей (121) может хранится непосредственно на сервере (120) или стороннем ресурсе. При этом, при поступлении новой информации о моделях объектов, СНС может автоматически переобучаться для расширения вариантов классификации и повышения процесса автономной работы роботизированного устройства (200). Данный процесс может дополнительно улучшить взаимодействия роботизированного устройства (200) с заданными типами объектов, что позволит расширить его применение в заданных отраслях промышленности.
[0072] Роботизированное устройство (200) может быть также сконфигурировано для автоматической работы с заданным типом объектов с помощью тренировки захвата за определенную часть объекта (20). Как показано на Фиг. 8, в качестве объекта взаимодействия (20) может применяться кружка. В зависимости от типа установленного захватного устройства (210) роботизированное устройство (200) может при появлении объекта (20) в области его работы (205) автоматически распознавать местоположение зоны захвата объекта (20), например, ручки или корпуса. В зависимости от типа установленного захватного устройства (210) определяются возможные модели и позиции для осуществления процедуры захвата объекта (20).
[0073] На Фиг. 9 представлена общий вид вычислительной системы (500). На базе представленной системы (500) может реализовываться различный спектр вычислительных устройств, например, устройство (110), сервер (120) и т.п. В общем виде система (500) содержит объединенные общей шиной информационного обмена один или несколько процессоров (501), средства памяти, такие как ОЗУ (502) и ПЗУ (503), интерфейсы ввода/вывода (504), устройства ввода/вывода (505), и устройство для сетевого взаимодействия (506).
[0074] Процессор (501) (или несколько процессоров, многоядерный процессор и т.п.) может выбираться из ассортимента устройств, широко применяемых в настоящее время, например, таких производителей, как: Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™ и т.п. Под процессором или одним из используемых процессоров в системе (500) также необходимо учитывать графический процессор, например, GPU NVIDIA или Graphcore, тип которых также является пригодным для полного или частичного выполнения способов (300, 400), а также может применяться для обучения и применения моделей машинного обучения в различных информационных системах.
[0075] ОЗУ (502) представляет собой оперативную память и предназначено для хранения исполняемых процессором (501) машиночитаемых инструкций для выполнение необходимых операций по логической обработке данных. ОЗУ (502), как правило, содержит исполняемые инструкции операционной системы и соответствующих программных компонент (приложения, программные модули и т.п.). При этом, в качестве ОЗУ (502) может выступать доступный объем памяти графической карты или графического процессора.
[0076] ПЗУ (503) представляет собой одно или более средств для постоянного хранения данных, например, жесткий диск (HDD), твердотельный накопитель данных (SSD), флэш-память (EEPROM, NAND и т.п.), оптические носители информации (CD-R/RW, DVD-R/RW, BlueRay Disc, MD) и др.
[0077] Для организации работы компонентов системы (500) и организации работы внешних подключаемых устройств применяются различные виды интерфейсов В/В (504). Выбор соответствующих интерфейсов зависит от конкретного исполнения вычислительного устройства, которые могут представлять собой, не ограничиваясь: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232 и т.п.
[0078] Для обеспечения взаимодействия пользователя с вычислительной системой (500) применяются различные средства (505) В/В информации, например, клавиатура, дисплей (монитор), сенсорный дисплей, тач-пад, джойстик, манипулятор мышь, световое перо, стилус, сенсорная панель, трекбол, динамики, микрофон, средства дополненной реальности, оптические сенсоры, планшет, световые индикаторы, проектор, камера, средства биометрической идентификации (сканер сетчатки глаза, сканер отпечатков пальцев, модуль распознавания голоса) и т.п.
[0079] Средство сетевого взаимодействия (506) обеспечивает передачу данных посредством внутренней или внешней вычислительной сети, например, Интранет, Интернет, ЛВС и т.п. В качестве одного или более средств (506) может использоваться, но не ограничиваться: Ethernet карта, GSM модем, GPRS модем, LTE модем, 5G модем, модуль спутниковой связи, NFC модуль, Bluetooth и/или BLE модуль, Wi-Fi модуль и др.
[0080] Дополнительно могут применяться также средства спутниковой навигации в составе системы (500), например, GPS, ГЛОНАСС, BeiDou, Galileo.
[0081] Конкретный выбор элементов системы (500) для реализации различных программно-аппаратных архитектурных решений может варьироваться с сохранением обеспечиваемого требуемого функционала от того или иного типа устройства.
[0082] Представленные материалы заявки раскрывают предпочтительные примеры реализации технического решения и не должны трактоваться как ограничивающие иные, частные примеры его воплощения, не выходящие за пределы испрашиваемой правовой охраны, которые являются очевидными для специалистов соответствующей области техники.

Claims (32)

1. Способ захвата объекта с помощью роботизированного устройства, содержащий этапы, на которых:
- обучают роботизированное устройство с помощью по меньшей мере одного алгоритма машинного обучения для распознавания и запоминания точек захвата объектов, причем обучение выполняется на данных, характеризующих фотографические изображения объектов и соответствующие 3D модели объектов в различных ракурсах;
- формируют по меньшей мере одну точку захвата объекта, представленного на графическом изображении объекта;
- получают фотографическое изображение объекта с помощью камеры роботизированного устройства и определяют ракурс, отображающий сформированную точку захвата объекта;
- получают трехмерное облако точек объекта в выявленном ракурсе с помощью сенсора глубины роботизированного устройства;
- определяют по полученному облаку точек месторасположение точки захвата объекта;
- определяют ориентацию и положение захватного устройства роботизированного устройства в обнаруженной точке захвата, причем определение осуществляется с помощью вычисления матриц поворотов роботизированного устройства;
- осуществляют захват объекта с помощью роботизированного устройства на основании вычисления усредненной матрицы поворотов для заданной точки захвата.
2. Способ по п. 1, характеризующийся тем, что роботизированное устройство представляет собой роботизированный манипулятор или роботизированную руку.
3. Способ по п. 1, характеризующийся тем, что на этапе обучения дополнительно указываются две и более точек захвата объекта на соответствующей 3D модели объекта.
4. Способ по п. 1, характеризующийся тем, что на этапе обучения дополнительно указывают и запоминают расположение роботизированного устройства в точке захвата в зависимости от расположения объекта.
5. Способ по п. 1, характеризующийся тем, что определение месторасположения точки захвата на изображении осуществляется с помощью модели машинного обучения.
6. Способ по п. 5, характеризующийся тем, что дополнительно определяется принцип захвата объекта в зависимости от типа захватного устройства и/или типа объекта.
7. Способ по п. 3, характеризующийся тем, что для нескольких точек захвата объекта указывается оптимальная точка захвата объекта на основании ее взаимного расположения относительно других точек захвата и относительно захватного устройства в момент осуществления захвата.
8. Способ по п. 2, характеризующийся тем, что роботизированный манипулятор калибруется по поверхности взаимодействия с объектом.
9. Способ по п. 8, характеризующийся тем, что калибровка осуществляется с помощью нанесения на поверхность графических кодов дополненной реальности.
10. Система захвата объекта с помощью роботизированного устройства, содержащая:
• роботизированное устройство, содержащее по меньшей мере одну камеру, по меньшей мере один сенсор глубины и захватное устройство;
• вычислительное устройство, соединенное с роботизированным устройством, причем вычислительное устройство взаимодействует с моделью машинного обучения, которая обучена на фотографических изображениях объектов и соответствующих 3D моделей объектов в различных ракурсах для распознавания и запоминания точек захвата объектов, выполненное с возможностью:
Figure 00000001
формировать по меньшей мере одну точку захвата объекта, представленного на графическом изображении объекта;
Figure 00000001
получать фотографическое изображение объекта от камеры роботизированного устройства и определять ракурс, отображающий сформированную точку захвата объекта;
Figure 00000001
получать трехмерное облако точек объекта в выявленном ракурсе с помощью сенсора глубины роботизированного устройства;
Figure 00000001
определять по полученному облаку точек месторасположение точки захвата объекта;
Figure 00000001
определять ориентацию и положение захватного устройства в обнаруженной точке захвата, причем определение осуществляется с помощью вычисления матриц поворотов роботизированного устройства;
Figure 00000001
формировать команду для захвата объекта с помощью роботизированного устройства на основании вычисления усредненной матрицы поворотов для заданной точки захвата.
11. Система по п. 10, характеризующаяся тем, что роботизированное устройство представляет собой роботизированный манипулятор или роботизированную руку.
12. Система по п. 10, характеризующаяся тем, что вычислительное устройство представляет собой компьютер, систему на кристалле (SoC), или сервер.
13. Система по п. 12, характеризующаяся тем, что вычислительное устройство соединено проводным или беспроводным способом с роботизированным устройством.
14. Система по п. 10, характеризующаяся тем, что модель машинного обучения представляет собой по меньшей мере одну нейронную сеть.
15. Система по п. 14, характеризующаяся тем, что модель машинного обучения выполнена с возможностью автоматического переобучения на основании новых данных об объектах.
16. Система по п. 15, характеризующаяся тем, что новые данные об объектах передаются от облачного сервера.
17. Система по п. 14, характеризующаяся тем, что нейронная сеть расположена на облачном сервере.
RU2019108223A 2019-03-21 2019-03-21 Способ и система захвата объекта с помощью роботизированного устройства RU2700246C1 (ru)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/RU2019/000178 WO2020190166A1 (ru) 2019-03-21 2019-03-21 Способ и система захвата объекта с помощью роботизированного устройства
RU2019108223A RU2700246C1 (ru) 2019-03-21 2019-03-21 Способ и система захвата объекта с помощью роботизированного устройства
EA201990572A EA038279B1 (ru) 2019-03-21 2019-03-22 Способ и система захвата объекта с помощью роботизированного устройства

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2019108223A RU2700246C1 (ru) 2019-03-21 2019-03-21 Способ и система захвата объекта с помощью роботизированного устройства

Publications (1)

Publication Number Publication Date
RU2700246C1 true RU2700246C1 (ru) 2019-09-20

Family

ID=67990035

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2019108223A RU2700246C1 (ru) 2019-03-21 2019-03-21 Способ и система захвата объекта с помощью роботизированного устройства

Country Status (3)

Country Link
EA (1) EA038279B1 (ru)
RU (1) RU2700246C1 (ru)
WO (1) WO2020190166A1 (ru)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2745380C1 (ru) * 2020-09-03 2021-03-24 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Способ и система захвата объектов с помощью роботизированного устройства
CN113012800A (zh) * 2021-04-19 2021-06-22 联仁健康医疗大数据科技股份有限公司 多用途夹取方法、系统、医疗机器人及存储介质
RU2756437C1 (ru) * 2020-09-03 2021-09-30 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Способ и система планирования движения робота-манипулятора путем коррекции опорных траекторий
CN116197886A (zh) * 2021-11-28 2023-06-02 梅卡曼德(北京)机器人科技有限公司 图像数据处理方法、装置、电子设备和存储介质
RU2800443C1 (ru) * 2019-12-23 2023-07-21 федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (национальный исследовательский университет)" Способ выполнения манипуляции с объектом

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112884825B (zh) * 2021-03-19 2022-11-04 清华大学 基于深度学习模型的抓取方法及装置
CN113753562B (zh) * 2021-08-24 2023-07-25 深圳市长荣科机电设备有限公司 一种基于直线电机的搬运方法、系统、装置及存储介质
CN114125416B (zh) * 2021-10-13 2024-03-19 厦门微图软件科技有限公司 一种基于机器学习与深度学习的三维检测平台软件及装置
EP4177013A1 (de) * 2021-11-04 2023-05-10 Vathos GmbH Ansteuerung eines industrieroboters für eine greifaufgabe
CN114474108B (zh) * 2022-01-13 2024-01-16 湖南中南智能装备有限公司 一种usb控制手柄联动控制机器人的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9002098B1 (en) * 2012-01-25 2015-04-07 Hrl Laboratories, Llc Robotic visual perception system
US20170028561A1 (en) * 2015-07-29 2017-02-02 Canon Kabushiki Kaisha Information processing apparatus, information processing method, robot control apparatus, and robot system
RU2674326C2 (ru) * 2017-02-20 2018-12-06 Автономная некоммерческая образовательная организация высшего образования "Сколковский институт науки и технологий" Способ формирования архитектуры нейросети для классификации объекта, заданного в виде облака точек, способ ее применения для обучения нейросети и поиска семантически схожих облаков точек

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006007390A (ja) * 2004-06-29 2006-01-12 Sharp Corp 撮像装置、撮像方法、撮像プログラム、撮像プログラムを記録したコンピュータ読取可能な記録媒体
FI20105732A0 (fi) * 2010-06-24 2010-06-24 Zenrobotics Oy Menetelmä fyysisten kappaleiden valitsemiseksi robottijärjestelmässä
FI20106387A (fi) * 2010-12-30 2012-07-01 Zenrobotics Oy Menetelmä, tietokoneohjelma ja laite tartuntakohdan määrittämiseksi

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9002098B1 (en) * 2012-01-25 2015-04-07 Hrl Laboratories, Llc Robotic visual perception system
US20170028561A1 (en) * 2015-07-29 2017-02-02 Canon Kabushiki Kaisha Information processing apparatus, information processing method, robot control apparatus, and robot system
RU2674326C2 (ru) * 2017-02-20 2018-12-06 Автономная некоммерческая образовательная организация высшего образования "Сколковский институт науки и технологий" Способ формирования архитектуры нейросети для классификации объекта, заданного в виде облака точек, способ ее применения для обучения нейросети и поиска семантически схожих облаков точек

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LUCAS MANUELLI et al. "kPAM: KeyPoint Affordances for Category-Level Robotic Manipulation", 1903.06684v1, опубл. 15.03.2019 на 10 страницах [найдено 18.06.2019], размещено в Интернет по адресу URL:https://arxiv.org/abs/1903.06684. *
PETER R. FLORENCE et al. "Dense Object Nets: Learning Dense Visual Object Descriptors By and For Robotic Manipulation", 1806.08756v2, опубл. 07.09.2018 на 12 страницах [найдено 18.06.2019], размещено в Интернет по адресу URL:https://arxiv.org/abs/1806.08756v2. *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2800443C1 (ru) * 2019-12-23 2023-07-21 федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (национальный исследовательский университет)" Способ выполнения манипуляции с объектом
RU2745380C1 (ru) * 2020-09-03 2021-03-24 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Способ и система захвата объектов с помощью роботизированного устройства
RU2756437C1 (ru) * 2020-09-03 2021-09-30 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Способ и система планирования движения робота-манипулятора путем коррекции опорных траекторий
CN113012800A (zh) * 2021-04-19 2021-06-22 联仁健康医疗大数据科技股份有限公司 多用途夹取方法、系统、医疗机器人及存储介质
CN116197886A (zh) * 2021-11-28 2023-06-02 梅卡曼德(北京)机器人科技有限公司 图像数据处理方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
EA038279B1 (ru) 2021-08-04
WO2020190166A1 (ru) 2020-09-24
EA201990572A1 (ru) 2020-09-30

Similar Documents

Publication Publication Date Title
RU2700246C1 (ru) Способ и система захвата объекта с помощью роботизированного устройства
US10372228B2 (en) Method and system for 3D hand skeleton tracking
US20190283245A1 (en) Deep machine learning methods and apparatus for robotic grasping
CN109101966B (zh) 基于深度学习的工件识别定位和姿态估计系统和方法
WO2019080228A1 (zh) 控制机器人抓取物体的方法和装置
JP2016109669A (ja) 情報処理装置、情報処理方法、プログラム
Labbé et al. Single-view robot pose and joint angle estimation via render & compare
WO2021218542A1 (zh) 基于视觉感知设备的机器人本体坐标系的空间标定方法、装置和存储介质
JP6907206B2 (ja) 運動計画の方法、運動計画のための装置及び非一時的コンピュータ可読記録媒体
WO2022021156A1 (zh) 用于机器人抓取三维物体的方法和装置
JP2018169660A (ja) オブジェクト姿勢検出装置、制御装置、ロボットおよびロボットシステム
WO2019061690A1 (zh) 机械臂逆运动学求解方法误差的确定及校正方法和装置
TW202238449A (zh) 室內定位系統及室內定位方法
US20200151906A1 (en) Non-transitory computer-readable storage medium for storing position detection program, position detection method, and position detection apparatus
CN113504063B (zh) 一种基于多轴机械臂的立体空间触屏设备可视化测试方法
Veres et al. An integrated simulator and dataset that combines grasping and vision for deep learning
US20230158679A1 (en) Task-oriented 3d reconstruction for autonomous robotic operations
Sahu et al. Shape features for image-based servo-control using image moments
CN115049744A (zh) 机器人手眼坐标转换方法、装置、计算机设备和存储介质
Iversen et al. Optimizing sensor placement: A mixture model framework using stable poses and sparsely precomputed pose uncertainty predictions
CN117769724A (zh) 使用深度学习的对象检测和分类的合成数据集创建
RU2745380C1 (ru) Способ и система захвата объектов с помощью роботизированного устройства
JP7249221B2 (ja) センサ位置姿勢キャリブレーション装置及びセンサ位置姿勢キャリブレーション方法
RU2756437C1 (ru) Способ и система планирования движения робота-манипулятора путем коррекции опорных траекторий
US11607809B2 (en) Robot motion planning accounting for object pose estimation accuracy

Legal Events

Date Code Title Description
RH4A Copy of patent granted that was duplicated for the russian federation

Effective date: 20191113