Область техники, к которой относится изобретение
[0001] Настоящая технология относится в целом к лазерным системам обнаружения и измерения дальности (лидарным системам) и, в частности, к способу и системе для определения степени ухудшения лидарных данных.
Уровень техники
[0002] Лидарные (LIDAR, Light Detection and Ranging) датчики (также называемые лидарами) широко используются в беспилотных (автономных) транспортных средствах. Лидарные датчики позволяют измерять расстояния между системой и внешними объектами путем излучения света в окружающее пространство и сбора света, отраженного от одного или нескольких объектов (таких как другие транспортные средства, пешеходы, дорожные указатели и т.п.) в окружающем пространстве.
[0003] В типичном лидарном датчике источник света испускает узкие лазерные лучи, сканирующие пространство в поле обзора. Свет, отраженный и/или рассеянный от объекта в поле обзора, принимается блоком обнаружения лидарного датчика для определения положения этого объекта. Например, в лидарных системах с измерением времени пролета расстояние до объекта определяется путем измерения интервала времени между (1) моментом излучения светового луча и (2) моментом обнаружения отраженного и/или рассеянного светового луча.
[0004] Отраженные лучи, принятые лидарным датчиком, обрабатываются для формирования центральным компьютером точек данных, каждой из которых соответствует один импульс луча, в результате чего формируются данные изображения от лидара, например облако точек, представляющее окружающее пространство в виде трехмерной карты. Точность и детализация трехмерной карты зависят от плотности и частоты обновления облака точек, при этом, в целом, чем выше частота дискретизации в поле обзора, тем более детальной и точной является трехмерная карта.
[0005] Другим примером является лидарный датчик, который может использоваться в беспилотном автомобиле (SDC, Self-Driving Car) для обнаружения в реальном времени объектов, присутствующих в окружающем пространстве беспилотного автомобиля, по заранее созданной трехмерной карте. Измеряя расстояния до объектов с помощью лидарного датчика, центральный компьютер беспилотного автомобиля способен определять траекторию движения беспилотного автомобиля или корректировать его текущую траекторию.
[0006] При этом по тем или иным причинам, например, в силу метеоусловий, таких как снег, дождь или чрезмерная облачность, видимость в поле обзора лидарного датчика может быть по меньшей мере частично ограниченной. Кроме того, поле обзора лидарного датчика может быть сужено и/или перекрыто из-за загрязнения выходного окна лидарного датчика, например, грязью, пылью или другими посторонними элементами. Это может приводить к ухудшению данных лидарного изображения, представляющих окружающее пространство беспилотного автомобиля, в результате снижения способности лидарного датчика излучать световой луч по меньшей мере в часть окружающего пространства беспилотного автомобиля и/или обнаруживать отраженный оттуда свет. Как следствие, точность трехмерной карты или траектории движения беспилотного автомобиля, сформированной на основе данных изображения от лидара более низкого качества, оказывается недостаточной, что может приводить, например, к дорожно-транспортным происшествиям, вызванных столкновениями беспилотного автомобиля во время движения с одним или несколькими объектами.
[0007] В известных технических решениях был предложен ряд способов для решения вышеуказанной технической проблемы.
[0008] В патентной заявке US20200309923A1 «Identifying and/or removing false positive detections from LiDAR sensor output», опубликованной 01.10.2020 и принадлежащей Zoox Inc., раскрыта модель машинного обучения, позволяющая выявлять в данных о глубине (например, лидарных данных или радиолокационных данных) ложные результаты, обусловленные каким-либо веществом в виде частиц, таким как пыль, пар, дым, дождь и т.п. Модель машинного обучения можно обучать, по меньшей мере частично, используя данные моделирования глубины, полученные с помощью гидродинамической модели и/или путем сбора данных о глубине во время работы устройства (например, автономного транспортного средства). В некоторых примерах автономное транспортное средство может выявлять данные о глубине, связанные с веществом в виде частиц, используя, по меньшей мере частично, резко выделяющуюся область на тепловом изображении. Например, резко выделяющаяся область может быть связана с паром.
[0009] В патентной заявке WO20200159638A1 «System and method for unsupervised domain adaptation via sliced-wasserstein distance», опубликованной 08.08.2020 и принадлежащей HRL Laboratories, LLC, раскрыта система для доменной адаптации без учителя в самообучающемся агенте. Эта система адаптирует обученную модель с помощью набора неразмеченных данных из целевого домена, обеспечивая получение адаптированной модели. Обученная модель предварительно обучена для выполнения задачи с использованием набора размеченных данных из исходного домена. Набор размеченных данных характеризуется первым распределением входных данных, а набор неразмеченных целевых данных - вторым распределением входных данных, которое отличается от первого распределения входных данных. Адаптированная модель реализуется в автономном обучающемся агенте, в результате чего этот агент выполняет задачу в целевом домене.
[0010] В патенте US9555740B1 «Cross-validating sensors of an autonomous vehicle», выданном 31.01.2017 и принадлежащем Google LLC, раскрыты способы и системы для перекрестной проверки второго датчика с помощью первого датчика. Перекрестная проверка второго датчика может включать в себя получение показаний первого датчика и их сравнение с показаниями второго датчика. В частности, сравнение показаний датчиков может включать в себя сравнение данных о состоянии транспортного средства, собранных первым и вторым датчиками. Сравнение показаний датчиков может предусматривать получение первого изображения от первого датчика, получение второго изображения от второго датчика и последующее сравнение различных характеристик этих изображений. В качестве одной из сравниваемых характеристик могут использоваться метки объектов, нанесенные на транспортное средство и обнаруженные первым и вторым датчиками. Первый и второй датчики могут быть датчиками разных типов.
Раскрытие изобретения
[0011] Таким образом, существует потребность в системах и способах, позволяющих исключать, уменьшать или преодолевать недостатки известных технических решений.
[0012] Разработчиками настоящей технологии были разработаны настоящие способы и системы для определения степени ухудшения данных изображения от лидара с использованием специально обученного алгоритма машинного обучения (MLA, Machine-Learning Algorithm). Здесь степень ухудшения лидарных данных представляет собой меру, характеризующую текущее максимальное расстояние, на котором лидарный датчик способен обнаруживать объекты в заданной части окружающего пространства беспилотного автомобиля с заданным уровнем достоверности. Дополнительно она может характеризовать, например, степень загрязнения выходного окна лидарного датчика.
[0013] Таким образом, чтобы обеспечить обучение алгоритма машинного обучения определению степени ухудшения лидарных данных, настоящие способы предусматривают формирование обучающего набора данных, содержащего статистические данные с определенным охватом для объектов, присутствующих в заданной части окружающего пространства беспилотного автомобиля, с использованием лидарных точек из обучающего облака точек, сформированного лидарным датчиком. В частности, в соответствии с не имеющими ограничительного характера вариантами осуществления способов, описанных в настоящем документе, получение статистических данных об охвате может включать в себя (1) проецирование обучающего облака точек на обучающее изображение, представляющее ту же заданную часть окружающего пространства беспилотного автомобиля и созданное, например, датчиком типа «камера» беспилотного автомобиля в тот же момент времени, когда были сформированы данные изображения с лидара, и (2) определение количества и параметров лидарных точек, попавших в двумерное представление данного обучающего объекта на обучающем изображении датчика типа «камера». Кроме того, для каждого такого смешанного представления окружающего пространства беспилотного автомобиля может быть получена созданная оценщиком метка, которая указывает на охват контрольного обучающего объекта (например, данного обучающего объекта или любого другого обучающего объекта, присутствующего на обучающем изображении), расположенного на заданном расстоянии от беспилотного автомобиля, лидарными точками согласно восприятию человека-оценщика.
[0014] Разработчики также учли, что из-за человеческой ошибки созданные оценщиком метки могут быть неточными и по этой причине могут уточняться с помощью вторичного алгоритма машинного обучения, обученного на основе по меньшей мере части вышеуказанного обучающего набора данных, чтобы формировать вместо созданных оценщиком меток автоматически сформированные метки, например, на основе уровней достоверности прогноза.
[0015] Таким образом, не имеющие ограничительного характера варианты осуществления настоящих способов и систем позволяют повысить точность определения степени ухудшения лидарных данных, формируемых лидарным датчиком во время движения беспилотного автомобиля, что может использоваться для инициирования определенных предупредительных действий, например, таких как очистка выходного окна лидарного датчика, выдача запроса на обслуживание лидарного датчика или торможение беспилотного автомобиля. Соответственно, не имеющие ограничительного характера варианты осуществления настоящих способов и систем содействуют предотвращению дорожно-транспортных происшествий, вызванных столкновениями беспилотного автомобиля с другими объектами в условиях плохой видимости, связанных с состоянием лидарного датчика.
[0016] Таким образом, в соответствии с первым широким аспектом настоящей технологии реализован компьютерный способ определения степени ухудшения данных изображения от лидарного датчика беспилотного автомобиля с использованием алгоритма машинного обучения. Способ реализуется процессором, связанным с лидарным датчиком. Способ на этапе обучения предусматривает обучение алгоритма машинного обучения за счет получения процессором от лидарного датчика обучающих данных измерений, в том числе обучающего облака точек, представляющего заданную часть окружающего пространства беспилотного автомобиля, определения процессором на основе обучающего облака точек множества признаков лидара, относящихся к заданной части окружающего пространства беспилотного автомобиля, получения процессором от датчика типа «камера» беспилотного автомобиля обучающего изображения, представляющего заданную часть окружающего пространства беспилотного автомобиля и сформированного датчиком типа «камера» одновременно с обучающими данными измерений от лидарного датчика, проецирования процессором обучающего облака точек на обучающее изображение для формирования смешанного представления заданной части окружающего пространства беспилотного автомобиля, включающего в себя статистические данные об охвате лидарными точками обучающих объектов, присутствующих на изображении, определения процессором для каждого обучающего объекта, присутствующего в заданной части окружающего пространства беспилотного автомобиля, множества дополняющих признаков на основе статистических данных, получения процессором для смешанного представления заданной части пространства метки, характеризующей степень ухудшения обучающих данных измерений, сформированных лидарным датчиком, формирования процессором обучающего вектора признаков из множества обучающих векторов признаков на основе множества признаков лидара, множества дополняющих признаков, связанных с каждым обучающим объектом, присутствующим в заданной части окружающего пространства, и метки, обучения процессором алгоритма машинного обучения на основе множества обучающих векторов признаков для определения степени ухудшения на этапе использования данных измерений этапа использования от лидарного датчика, представляющих объекты этапа использования в окружающем пространстве беспилотного автомобиля.
[0017] В некоторых вариантах реализации способа множество признаков лидара включает в себя (1) количество лидарных точек в обучающем облаке точек и (2) значения интенсивности света в лидарных точках обучающего облака точек.
[0018] В некоторых вариантах реализации способа определение множества признаков лидара включает в себя определение в горизонтальном поле обзора (HFOV, Horizontal Field Of View) лидарного датчика множества углов горизонтального поля обзора, а также определение множества признаков лидара для лидарных точек в обучающем облаке точек в пределах каждого угла из множества углов горизонтального поля обзора лидарного датчика.
[0019] В некоторых вариантах реализации способа определение множества дополняющих признаков для обучающего объекта в заданной части окружающего пространства беспилотного автомобиля включает в себя формирование процессором ограничивающей рамки, представляющей обучающий объект, а также определение процессором по меньшей мере одного из следующего:
- значение расстояния от беспилотного автомобиля до обучающего объекта;
- количество обучающих объектов в заданной части окружающего пространства;
- площадь поверхности для ограничивающей рамки, связанной с обучающим объектом;
- количество лидарных точек, попавших в ограничивающую рамку;
- плотность лидарных точек, попавших в ограничивающую рамку;
- значения интенсивности света в лидарных точках, попавших в ограничивающую рамку;
- средние значения расстояния от лидарного датчика до лидарных точек, попавших в ограничивающую рамку; и
- уровни энергии в лидарных точках, попавших в ограничивающую рамку.
[0020] В некоторых вариантах реализации способа метка содержит данные, указывающие на то, охватывается ли лидарными точками по меньшей мере один контрольный обучающий объект на соответствующем расстоянии от беспилотного автомобиля.
[0021] В некоторых вариантах реализации способа обучающий объект относится к первому заданному классу объектов, а по меньшей мере один контрольный обучающий объект - ко второму заданному классу объектов, отличному от первого заданного класса объектов.
[0022] В некоторых вариантах реализации способа первый заданный класс объектов представляет собой транспортные средства.
[0023] В некоторых вариантах реализации способа формирование обучающего вектора признаков дополнительно включает в себя определение процессором количества ограничивающих рамок без лидарных точек на основе смешанного представления и определение процессором значений площади поверхности для ограничивающих рамок без лидарных точек.
[0024] В некоторых вариантах реализации способа метка создана человеком-оценщиком, а степень ухудшения обучающих данных измерений определена согласно восприятию человека-оценщика.
[0025] В некоторых вариантах реализации способа формирование обучающего вектора признаков включает в себя уточнение метки с использованием автоматически созданной метки, характеризующей прогнозную степень ухудшения обучающих данных измерений, определенную вторичным алгоритмом машинного обучения, обученным определению прогнозных степеней ухудшения обучающих данных измерений от лидарного датчика, при этом вторичный алгоритм машинного обучения отличается от алгоритма машинного обучения, а уточнение предусматривает замену метки на автоматически созданную метку в обучающем векторе признаков, если (1) прогнозная степень ухудшения обучающих данных измерений, сформированных вторичным алгоритмом машинного обучения, не соответствует степени ухудшения, указанной меткой, (2) прогнозная степень ухудшения обучающих данных измерений превышает эту степень ухудшения, и (3) уровень достоверности, связанный с прогнозной степенью ухудшения, равен заданному пороговому уровню достоверности или превышает его.
[0026] В некоторых вариантах реализации способа вторичный алгоритм машинного обучения обучен на основе по меньшей мере части множества обучающих векторов признаков.
[0027] В некоторых вариантах реализации способа алгоритм машинного обучения и вторичный алгоритм машинного обучения представляют собой алгоритмы машинного обучения на основе деревьев решений.
[0028] В некоторых вариантах реализации способа алгоритм машинного обучения и вторичный алгоритм машинного обучения представляют собой леса деревьев решений.
[0029] В некоторых вариантах реализации способа размерность вторичного алгоритма машинного обучения меньше размерности алгоритма машинного обучения.
[0030] В некоторых вариантах реализации способа алгоритм машинного обучения на основе деревьев решений представляет собой алгоритм машинного обучения на основе деревьев решений CatBoost.
[0031] В некоторых вариантах реализации способа он в случае замены метки на автоматически созданную метку в обучающем векторе признаков дополнительно предусматривает формирование сокращенного обучающего вектора признаков на основе множества признаков лидара и метки и включение сокращенного обучающего вектора признаков во множество обучающих векторов признаков.
[0032] В некоторых вариантах реализации способа он на этапе использования после этапа обучения дополнительно предусматривает применение алгоритма машинного обучения для определения степени ухудшения на этапе использования данных изображения от лидарного датчика беспилотного автомобиля, что включает в себя получение процессором от лидарного датчика данных измерений этапа использования, в том числе облака точек этапа использования, представляющего заданную часть окружающего пространства беспилотного автомобиля, определение процессором на основе облака точек этапа использования множества признаков лидара, относящихся к заданной части окружающего пространства беспилотного автомобиля, получение процессором от датчика типа «камера» беспилотного автомобиля изображения этапа использования, представляющего заданную часть окружающего пространства беспилотного автомобиля и сформированного датчиком типа «камера» одновременно с данными измерений этапа использования от лидарного датчика, проецирование процессором облака точек этапа использования на изображение этапа использования для формирования смешанного представления этапа использования заданной части окружающего пространства беспилотного автомобиля, включающего в себя статистические данные об охвате лидарными точками, входящими в облако точек этапа использования, объектов этапа использования, присутствующих на изображении этапа использования, определение процессором для каждого объекта этапа использования, присутствующего в заданной части окружающего пространства беспилотного автомобиля, множества дополняющих признаков на основе статистических данных, формирование процессором на основе множества признаков лидара и множества дополняющих признаков, связанных с каждым объектом этапа использования, присутствующим в заданной части окружающего пространства, вектора признаков этапа использования, передачу процессором вектора признаков этапа использования в алгоритм машинного обучения для определения степени ухудшения на этапе использования данных измерений этапа использования, сформированных лидарным датчиком, характеризующей текущее расстояние видимости, на котором лидарный датчик способен распознавать объекты этапа использования в заданной части окружающего пространства беспилотного автомобиля, и инициирование процессором выполнения по меньшей мере одного заданного предупредительного действия, если степень ухудшения на этапе использования данных измерений этапа использования превышает заданный порог ухудшения данных изображения.
[0033] В некоторых вариантах реализации способа распознавание объектов этапа использования включает в себя распознавание объектов этапа использования из заданного класса объектов.
[0034] В некоторых вариантах реализации способа по меньшей мере одно заданное предупредительное действие включает в себя инициирование очистки лидарного датчика, выдачу уведомления о необходимости обслуживания лидарного датчика, инициирование торможения беспилотного автомобиля или инициирование остановки беспилотного автомобиля.
[0035] В соответствии со вторым широким аспектом настоящей технологии реализована система для определения степени ухудшения данных изображения от лидарного датчика беспилотного автомобиля с использованием алгоритма машинного обучения. Система содержит процессор, связанный с лидарным датчиком, и физический машиночитаемый носитель для хранения команд. Процессор при выполнении команд способен получать от лидарного датчика обучающие данные измерений, в том числе обучающее облако точек, представляющее заданную часть окружающего пространства беспилотного автомобиля, определять на основе обучающего облака точек множество признаков лидара, относящихся к заданной части окружающего пространства беспилотного автомобиля, получать от датчика типа «камера» беспилотного автомобиля обучающее изображение, представляющее заданную часть окружающего пространства беспилотного автомобиля и сформированное датчиком типа «камера» одновременно с обучающими данными измерений от лидарного датчика, проецировать обучающее облако точек на обучающее изображение для формирования смешанного представления заданной части окружающего пространства беспилотного автомобиля, включающего в себя статистические данные об охвате лидарными точками обучающих объектов, присутствующих на изображении, определять для каждого обучающего объекта, присутствующего в заданной части окружающего пространства беспилотного автомобиля, множество дополняющих признаков на основе статистических данных, получать для смешанного представления заданной части пространства метку, характеризующую степень ухудшения обучающих данных измерений, сформированных лидарным датчиком, формировать обучающий вектор признаков из множества обучающих векторов признаков на основе множества признаков лидара, множества дополняющих признаков, связанных с каждым обучающим объектом, присутствующим в заданной части окружающего пространства, и метки, обучать алгоритм машинного обучения на основе множества обучающих векторов признаков для определения степени ухудшения на этапе использования данных изображения от лидарного датчика, представляющих объекты этапа использования в окружающем пространстве беспилотного автомобиля.
[0036] В контексте данного описания термин «источник света» в широком смысле относится к любому устройству, способному испускать излучение, в частности, сигнал в виде луча, например, среди прочего, светового луча с одной или несколькими длинами волн в спектре электромагнитного излучения. В одном примере источником света может быть лазерный источник. Таким образом, источник света может содержать лазер, например, твердотельный лазер, лазерный диод, лазер высокой мощности, или альтернативный источник света, например, источник света на основе светоизлучающих диодов. Некоторыми (не имеющими ограничительного характера) примерами лазерного источника являются лазерный диод Фабри-Перо, лазер на квантовых ямах, лазер с распределенным брэгговским отражателем (DBR, Distributed Bragg Reflector), лазер с распределенной обратной связью (DFB, Distributed FeedBack), волоконный лазер или поверхностно-излучающий лазер с вертикальным резонатором (VCSEL, Vertical-Cavity Surface-Emitting Laser). Кроме того, лазерный источник может излучать световые лучи в различных форматах, например, в виде световых импульсов, непрерывных колебаний, квазинепрерывных колебаний и т.д. В некоторых не имеющих ограничительного характера примерах лазерный источник может содержать лазерный диод, способный излучать свет с длиной волны в диапазоне приблизительно 650-1150 нм. В альтернативном варианте источник света может содержать лазерный диод, способный излучать световые лучи с длиной волны в диапазоне приблизительно 800-1000 нм, приблизительно 850-950 нм, приблизительно 1300-1600 нм или в любом другом подходящем диапазоне. Если не указано иное, термин «приблизительно» применительно к числовому значению определяется как отклонение, не превышающее 10% указанного значения.
[0037] В контексте настоящего описания термин «выходной луч» может относиться к пучку излучения, например, к лучу света, формируемому источником излучения и направленному в сторону интересующей области. Выходной луч может характеризоваться одним или несколькими параметрами, такими как продолжительность излучения, угловая расходимость луча, длина волны, мгновенная мощность, плотность фотонов на разных расстояниях от источника света, средняя мощность, удельная мощность луча, ширина луча, частота повторения импульсов излучения, последовательность излучаемых импульсов, скважность импульсов, длина волны, фаза и т.д. Выходной луч может быть неполяризованным или случайно поляризованным, может не иметь определенной или постоянной поляризации (например, поляризация может меняться со временем) или может иметь определенную поляризацию (например, линейную, эллиптическую или круговую поляризацию).
[0038] В контексте настоящего описания «входной луч» представляет собой пучок излучения или света, попадающий в систему, как правило, после отражения от одного или нескольких объектов в интересующей области. Входной луч также может называться лучом излучения или световым лучом. Под термином «отраженный» подразумевается, что по меньшей мере часть выходного луча попадает на один или несколько объектов в интересующей области и отражается от них. Входной луч может характеризоваться одним или несколькими параметрами, такими как время пролета (т.е. время от момента излучения до момента обнаружения), мгновенная мощность (например, сигнатура мощности), средняя мощность обратного импульса, распределение фотонов в сигнале по периоду обратного импульса и т.д. В некоторых случаях применения часть излучения или света во входном луче может являться не отраженным выходным лучом, а излучением других источников. Например, по меньшей мере некоторая часть входного луча может представлять сбой световой шум из окружающего пространства (в том числе рассеянный солнечный свет) или от других источников света, внешних по отношению к данной системе.
[0039] В контексте настоящего описания термин «окружающее пространство» транспортного средства относится к области или объему вокруг этого транспортного средства, включая часть его текущей окружающей среды, доступную для сканирования с использованием одного или нескольких датчиков, установленных на этом транспортном средстве, например, для создания трехмерной карты окружающего пространства или для обнаружения в нем объектов.
[0040] В контексте настоящего описания термин «интересующая область» в широком смысле может включать в себя часть наблюдаемого окружающего пространства лидарного датчика, в которой могут быть обнаружены один или несколько объектов. Следует отметить, что на интересующую область лидарного датчика могут влиять различные условия, такие как, среди прочего, ориентация лидарного датчика (например, направление оптической оси лидарного датчика), положение лидарного датчика в окружающем пространстве (например, расстояние над поверхностью земли, а также рельеф местности и препятствия в непосредственной близи от датчика), рабочие параметры лидарного датчика (например, мощность излучения, вычислительные настройки, заданные углы работы) и т.д. Интересующая область лидарного датчика может задаваться, например, плоским или телесным углом. В одном примере интересующая область также может быть задана диапазоном дальности (например, приблизительно до 200 м).
[0041] В контексте настоящего описания «сервер» представляет собой компьютерную программу, выполняемую на соответствующих аппаратных средствах и способную принимать по сети запросы (например, от электронных устройств), а также выполнять эти запросы или инициировать их выполнение. Такие аппаратные средства могут быть реализованы в виде одного физического компьютера или одной физической компьютерной системы, что не имеет существенного значения для настоящей технологии. В данном контексте при употреблении выражения «сервер» не подразумевается, что какая-либо конкретная задача или все задачи (например, принятые команды или запросы) принимаются, выполняются или запускаются одним и тем же сервером (т.е. одними и теми же программными и/или аппаратными средствами), а имеется в виду, что участвовать в приеме/передаче, выполнении или инициировании выполнения каких-либо задач или запросов либо результатов каких-либо задач или запросов может любое количество программных или аппаратных средств и все эти программные и аппаратные средства могут представлять собой один сервер или несколько серверов, причем выражение «по меньшей мере один сервер» охватывает оба этих случая.
[0042] В контексте настоящего описания «электронное устройство» представляет собой любые компьютерные аппаратные средства, способные обеспечивать работу программного обеспечения, подходящего для поставленной задачи. В контексте настоящего описания термин «электронное устройство» подразумевает, что устройство может функционировать в качестве сервера для других электронных устройств, впрочем, это не носит обязательного характера для настоящей технологии. Таким образом, примерами (не имеющими ограничительного характера) электронных устройств являются блок автономного вождения, персональные компьютеры (настольные компьютеры, ноутбуки, нетбуки и т.п.), смартфоны и планшеты, а также сетевое оборудование, например, маршрутизаторы, коммутаторы и шлюзы. Следует понимать, что в данном контексте факт функционирования оборудования в качестве электронного устройства не означает, что оно не может функционировать в качестве сервера для других электронных устройств.
[0043] В контексте данного описания выражение «информация» включает в себя информацию любого рода или вида, допускающую хранение в базе данных. Таким образом, информация включает в себя, среди прочего, визуальные произведения (например, карты), аудиовизуальные произведения (например, изображения, фильмы, звукозаписи, презентации и т.д.), данные (например, данные о местоположении, данные о погоде, данные о трафике, числовые данные и т.д.), текст (например, отзывы, комментарии, вопросы, сообщения и т.д.), документы, электронные таблицы и т.д.
[0044] В контексте данного описания термин «база данных» означает любой структурированный набор данных, независимо от его конкретной структуры, программного обеспечения для управления базой данных и компьютерных аппаратных средств для хранения данных, их применения или обеспечения их использования иным способом. База данных может размещаться в тех же аппаратных средствах, где реализован процесс, обеспечивающий хранение или использование информации, хранящейся в базе данных, либо в отдельных аппаратных средствах, таких как специализированный сервер или группа серверов.
[0045] В контексте настоящего описания числительные «первый», «второй», «третий» и т.д. служат лишь для указания на различия между существительными, к которым они относятся, а не для описания каких-либо определенных взаимосвязей между этими существительными. Кроме того, как встречается в настоящем описании в другом контексте, ссылки на «первый» элемент и «второй» элемент не исключают того, что эти два элемента в действительности могут быть одним и тем же элементом.
[0046] Каждый вариант осуществления настоящей технологии относится к по меньшей мере одной из вышеупомянутых целей и/или к одному из вышеупомянутых аспектов, но не обязательно ко всем ним. Следует понимать, что некоторые аспекты настоящей технологии, связанные с попыткой достижения вышеупомянутой цели, могут не соответствовать этой цели и/или могут соответствовать другим целям, не упомянутым здесь явным образом.
[0047] Дополнительные и/или альтернативные признаки, аспекты и преимущества вариантов осуществления настоящей технологии содержатся в дальнейшем описании, на приложенных чертежах и в формуле изобретения.
Краткое описание чертежей
[0048] Эти и другие признаки, аспекты и преимущества настоящей технологии содержатся в дальнейшем описании, в приложенной формуле изобретения и на следующих чертежах.
[0049] На фиг. 1 схематически представлен пример компьютерной системы, пригодной для реализации некоторых вариантов осуществления систем и/или методов в соответствии с настоящей технологией.
[0050] На фиг. 2 схематически представлена сетевая компьютерная среда, пригодная для использования с некоторыми вариантами осуществления настоящей технологии.
[0051] На фиг. 3 схематически представлена процедура сбора лидарных данных, выполняемая процессором электронного устройства в сетевой компьютерной среде, показанной на фиг. 2, и обеспечивающая получение данных трехмерного облака точек, собранных лидарным датчиком на транспортном средстве, которое входит в состав сетевой компьютерной среды, показанной на фиг. 2, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
[0052] На фиг. 4 схематически представлено транспортное средство, входящее в состав сетевой компьютерной среды, показанной на фиг. 2, и движущееся в пределах заданного участка дороги, представленного данными трехмерного облака точек, которые были получены процессором, выполняющим процедуру сбора данных, представленную на фиг. 3, в сетевой компьютерной среде, показанной на фиг. 2, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
[0053] На фиг. 5 схематически представлена архитектура модели машинного обучения, применяемая для реализации по меньшей мере некоторых не имеющих ограничительного характера вариантов осуществления настоящей технологии.
[0054] На фиг. 6 схематически изображен обучающий участок дороги в восприятии лидарного датчика на транспортном средстве, входящем в состав сетевой компьютерной среды, показанной на фиг. 2, который представлен обучающим трехмерным облаком точек, используемым процессором в сетевой компьютерной среде, показанной на фиг. 2, для определения множества признаков лидара, связанных с заданной обучающей частью, и формирования обучающего набора данных для обучения алгоритма машинного обучения с целью определения степени ухудшения данных трехмерного облака точек, представленных на фиг. 4, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
[0055] На фиг. 7 схематически представлено обучающее трехмерное облако точек, спроецированное на обучающее изображение, сформированное датчиком типа «камера» на транспортном средстве, входящем в состав сетевой компьютерной среды, показанной на фиг. 2, одновременно с обучающим трехмерным облаком точек, используемым процессором в сетевой компьютерной среде, показанной на фиг. 2, для получения статистических данных об охвате обучающих объектов, присутствующих на обучающем изображении, лидарными точками, чтобы сформировать обучающий набор данных для обучения алгоритма машинного обучения с целью определения степени ухудшения данных трехмерного облака точек, представленных на фиг. 4, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
[0056] На фиг. 8 схематически представлена работа процессора в сетевой компьютерной среде, который использует обученный алгоритм машинного обучения для определения степени ухудшения данных трехмерного облака точек, представляющих заданную часть окружающего пространства транспортного средства, изображенного на фиг. 4, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
[0057] На фиг. 9 представлена блок-схема компьютерного способа определения степени ухудшения данных трехмерного облака точек, показанного на фиг. 4, с помощью обученного алгоритма машинного обучения в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
Осуществление изобретения
[0058] Представленные здесь примеры и условный язык предназначены для обеспечения лучшего понимания принципов настоящей технологии, а не для ограничения ее объема до таких специально приведенных примеров и условий. Следует понимать, что специалисты в данной области техники способны разработать различные способы и устройства, которые явно не описаны и не показаны, но реализуют принципы настоящей технологии в пределах ее существа и объема.
[0059] Кроме того, чтобы способствовать лучшему пониманию, последующее описание может содержать упрощенные варианты реализации настоящей технологии. Специалисты в данной области должны понимать, что различные варианты осуществления настоящей технологии могут быть значительно сложнее.
[0060] В некоторых случаях приводятся предположительно полезные примеры модификаций настоящей технологии. Они призваны лишь способствовать пониманию и также не определяют объема или границ настоящей технологии. Представленный перечень модификаций не является исчерпывающим и специалист в данной области может разработать другие модификации в пределах объема настоящей технологии. Кроме того, если в некоторых случаях модификации не описаны, это не означает, что они невозможны и/или что описание содержит единственно возможный вариант реализации того или иного элемента настоящей технологии.
[0061] Описание принципов, аспектов и вариантов реализации настоящей технологии, а также их конкретные примеры предназначены для охвата их структурных и функциональных эквивалентов, независимо от того, известны они в настоящее время или будут разработаны в будущем. Например, специалисты в данной области техники должны понимать, что все приведенные здесь блок-схемы соответствуют концептуальным представлениям иллюстративных принципиальных схем, реализующих принципы настоящей технологии. Также следует понимать, что все блок-схемы, схемы процессов, диаграммы изменения состояния, псевдокоды и т.п. соответствуют различным процессам, которые могут быть представлены на машиночитаемом физическом носителе информации и могут выполняться компьютером или процессором независимо от того, показан такой компьютер или процессор в явном виде или нет.
[0062] Функции различных элементов, показанных на чертежах, включая все функциональные блоки, обозначенные как «процессор», могут быть реализованы с использованием специализированных аппаратных средств, а также аппаратных средств, способных обеспечивать работу соответствующего программного обеспечения. Если используется процессор, эти функции могут выполняться одним выделенным процессором, одним совместно используемым процессором или несколькими отдельными процессорами, некоторые из которых могут использоваться совместно. Кроме того, явное использование термина «процессор» или «контроллер» не должно трактоваться как указание исключительно на аппаратные средства, способные обеспечивать работу программного обеспечения, и может подразумевать, среди прочего, аппаратные средства цифрового сигнального процессора (DSP), сетевой процессор, специализированную интегральную схему (ASIC), программируемую вентильную матрицу (FPGA), ПЗУ для хранения программного обеспечения, ОЗУ и энергонезависимое ЗУ. Также могут подразумеваться другие аппаратные средства, общего назначения и/или заказные.
[0063] Программные модули или просто модули, реализация которых предполагается на базе программных средств, могут быть представлены здесь в виде любого сочетания элементов блок-схемы или других элементов, указывающих на выполнение шагов процесса и/или содержащих текстовое описание. Такие модули могут реализовываться с помощью аппаратных средств, показанных явно или подразумеваемых.
[0064] С учетом вышеизложенных принципов ниже рассмотрены некоторые не имеющие ограничительного характера примеры, иллюстрирующие различные варианты реализации аспектов настоящей технологии.
Компьютерная система
[0065] На фиг. 1 представлена схема компьютерной системы 100, подходящей для использования в некоторых вариантах осуществления настоящей технологии. Компьютерная система 100 содержит различные аппаратные элементы, включая один или несколько одноядерных или многоядерных процессоров, совместно представленных процессором 110, твердотельный накопитель 120 и память 130, которая может быть памятью с произвольным доступом или памятью любого другого вида.
[0066] Связь между элементами компьютерной системы 100 может осуществляться через одну или несколько внутренних и/или внешних шин (не показаны), таких как шина PCI, шина USB, шина FireWire стандарта IEEE 1394, шина SCSI, шина Serial-ATA и т.д., с которыми различные аппаратные элементы соединены электронными средствами. Согласно вариантам осуществления настоящей технологии, твердотельный накопитель 120 хранит программные команды, пригодные для загрузки в память 130 и исполнения процессором 110 с целью определения наличия объекта. Например, программные команды могут входить в состав управляющего приложения транспортного средства, выполняемого процессором 110. Следует отметить, что компьютерная система 100 может содержать дополнительные и/или необязательные элементы (не показаны), например, модули передачи данных по сети, модули определения местоположения и т.д.
Сетевая компьютерная среда
[0067] На фиг. 2 представлена сетевая компьютерная среда 200, пригодная для использования с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии. Сетевая компьютерная среда 200 содержит электронное устройство 210, связанное с транспортным средством 220 и/или с пользователем (не показан), который связан с транспортным средством 220 (в частности, с водителем транспортного средства 220). Среда 200 также содержит сервер 235, соединенный с электронным устройством 210 через сеть 240 связи (например, через сеть Интернет и т.п., как более подробно описано ниже).
[0068] В по меньшей мере некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии электронное устройство 210 связано с системами управления транспортного средства 220. Электронное устройства 210 может управлять различными рабочими системами транспортного средства 220, включая, среди прочего, блок управления двигателем, системы рулевого управления, тормозные системы, а также системы освещения и сигнализации (т.е. фары, стоп-сигналы и/или указатели поворота). В таком варианте осуществления транспортное средство 220 может быть беспилотным.
[0069] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сетевая компьютерная среда 200 может содержать спутник системы GPS (не показан), передающий сигнал GPS электронному устройству 210 и/или принимающий сигнал GPS от него. Следует понимать, что настоящая технология не ограничивается применением системы GPS и может быть реализована на базе любой другой технологии определения местоположения. Следует отметить, что спутник GPS может вовсе отсутствовать.
[0070] Транспортное средство 220, с которым связано электронное устройство 210, может представлять собой любое транспортное средство для отдыха или иных целей, например, автомобиль для индивидуального или коммерческого использования, грузовой автомобиль, мотоцикл и т.д. Несмотря на то, что транспортное средство 220 изображено как наземное транспортное средство, это не обязательно для каждого не имеющего ограничительного характера варианта осуществления настоящей технологии. Например, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии транспортным средством 220 может быть водное транспортное средство, например, лодка, или воздушное транспортное средство, например, беспилотный летательный аппарат.
[0071] Транспортное средство 220 может управляться пользователем или представлять собой беспилотное транспортное средство. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии предполагается, что транспортное средство 220 может быть реализовано в виде беспилотного автомобиля. Следует отметить, что при этом не накладывается ограничений на конкретные параметры транспортного средства 220, к числу которых, например, относятся производитель транспортного средства, модель транспортного средства, год выпуска транспортного средства, масса транспортного средства, размеры транспортного средства, распределение массы транспортного средства, площадь поверхности транспортного средства, высота транспортного средства, вид трансмиссии (например, с приводом на два или четыре колеса), вид шин, тормозная система, топливная система, пробег, идентификационный номер транспортного средства и рабочий объем двигателя.
[0072] Согласно настоящей технологии, на реализацию электронного устройства 210 не накладывается конкретных ограничений. Например, электронное устройство 210 может быть реализовано в виде блока управления двигателем транспортного средства, центрального процессора транспортного средства, навигационного устройства транспортного средства (например, TomTom™, Garmin™), планшета, персонального компьютера, встроенного в транспортное средство 220, и т.д. Следует отметить, что электронное устройство 210 может быть связано или не связано с транспортным средством 220 постоянным образом. Дополнительно или в качестве альтернативы, электронное устройство 210 может быть реализовано в виде устройства беспроводной связи, такого как мобильный телефон (например, смартфон или радиотелефон). В некоторых вариантах осуществления изобретения электронное устройство 210 содержит дисплей 270.
[0073] Электронное устройство 210 может содержать некоторые или все элементы компьютерной системы 100, представленной на фиг. 1, в зависимости от конкретного варианта осуществления. В некоторых вариантах осуществления электронное устройство 210 представляет собой бортовое компьютерное устройство и содержит процессор 110, твердотельный накопитель 120 и память 130. Иными словами, электронное устройство 210 содержит аппаратные средства и/или программное обеспечение и/или микропрограммное обеспечение либо их комбинацию для осуществления обработки данных, как более подробно описано ниже.
[0074] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сеть 240 связи представляет собой сеть Интернет. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии сеть 240 связи может быть реализована как любая подходящая локальная сеть (LAN, Local Area Network), глобальная сеть (WAN, Wide Area Network), частная сеть связи и т.п. Следует понимать, что варианты осуществления сети 240 связи приведены лишь в иллюстративных целях. Между электронным устройством 210 и сетью 240 связи предусмотрена линия связи (отдельно не обозначена), реализация которой зависит, среди прочего, от реализации электронного устройства 210. Лишь для примера можно отметить, что помимо прочего, в тех не имеющих ограничительного характера вариантах осуществления настоящей технологии, где электронное устройство 210 реализовано в виде устройства беспроводной связи, такого как смартфон или навигационное устройство, линия связи может быть реализована в виде беспроводной линии связи. Примерами беспроводных линий связи могут служить, помимо прочего, канал сети связи 3G, канал сети связи 4G и т.п. В сети 240 связи также может использоваться беспроводное соединение с сервером 235.
[0075] В некоторых вариантах осуществления настоящей технологии сервер 235 реализован в виде компьютерного сервера и, таким образом, может содержать некоторые или все элементы компьютерной системы 100, представленной на фиг. 1. В одном не имеющем ограничительного характера примере сервер 235 реализован в виде сервера Dell™ PowerEdge™, работающего под управлением операционной системы Microsoft™ Windows Server™, однако он также может быть реализован на базе любых других подходящих видов аппаратных средств, программного обеспечения и/или микропрограммного обеспечения либо их сочетания. В представленных не имеющих ограничительного характера вариантах осуществления настоящей технологии сервер 235 представляет собой одиночный сервер. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии функции сервера 235 могут быть распределены между несколькими серверами (не показаны).
[0076] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 электронного устройства 210 может быть связан с сервером 235 для получения одного или нескольких обновлений. Такие обновления могут включать в себя, среди прочего, обновления программного обеспечения, обновления карт, обновления маршрутов, обновления погодных данных и т.п. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 также способен отправлять на сервер 235 определенные рабочие данные, например, информацию о пройденных маршрутах, данные о дорожной обстановке, эксплуатационные данные и т.п. Некоторые или все такие данные, передаваемые между транспортным средством 220 и сервером 235, могут быть зашифрованы и/или обезличены.
[0077] Следует отметить, что электронное устройство 210 может использовать разнообразные датчики и системы для сбора информации об окружающем пространстве 250 транспортного средства 220. Как показано на фиг. 2, транспортное средство 220 может быть оборудовано множеством систем 280 датчиков. Следует отметить, что для сбора различных видов данных об окружающем пространстве 250 транспортного средства 220 могут применяться различные системы датчиков из множества систем 280 датчиков.
[0078] В одном примере множество систем 280 датчиков может содержать различные оптические системы, в том числе одну или несколько систем датчиков типа «камера», установленных на транспортном средстве 220 и связанных с процессором 110 электронного устройства 210, таких как датчик 290 типа «камера». В целом, датчик 290 типа «камера» способен собирать данные в виде изображений, например, отдельных изображений или последовательности изображений, о разных частях окружающего пространства 250 транспортного средства 220.
[0079] Например, в отдельных не имеющих ограничительного характера вариантах осуществления настоящей технологии датчик 290 типа «камера» может быть реализован в виде монокамеры с разрешающей способностью, достаточной для обнаружения внешних объектов в окружающем пространстве 250 транспортного средства 220 на расстояниях приблизительно до 80 м (при этом в объем настоящего изобретения входят и системы камер с другими разрешающими способностями и диапазонами дальности). Датчик 290 типа «камера» может быть установлен в верхней части лобового стекла транспортного средства 220 с его внутренней стороны, при этом в объем настоящего изобретения входят и другие места, включая заднее окно, боковые окна, передний капот, крышу, переднюю решетку и передний бампер транспортного средства 220. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии датчик 290 типа «камера» может монтироваться в специальном корпусе (не показан), установленном сверху транспортного средства 220.
[0080] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии датчик 290 типа «камера» способен покрывать заданную часть окружающего пространства 250 транспортного средства 220. В некоторых вариантах осуществления настоящей технологии датчик 290 типа «камера» способен получать данные изображения, которые представляют сектор окружающего пространства 250 транспортного средства 220, составляющий приблизительно 90 градусов по ходу движения транспортного средства 220.
[0081] В других не имеющих ограничительного характера вариантах осуществления настоящей технологии датчик 290 типа «камера» способен получать отдельные изображения (или последовательность изображений), которые представляют сектор окружающего пространства 250 транспортного средства 220, составляющий приблизительно 180 градусов по ходу движения транспортного средства 220. В некоторых других не имеющих ограничительного характера вариантах осуществления настоящей технологии датчик 290 типа «камера» способен получать данные изображения, которые представляют сектор окружающего пространства 250 транспортного средства 220, составляющий приблизительно 360 градусов по ходу движения транспортного средства 220 (иными словами, все окружающее пространство транспортного средства 220).
[0082] В конкретном не имеющем ограничительного характера примере датчик 290 типа «камера» может быть реализован в виде камеры, выпускаемой компанией Flir Integrated Imaging Solutions Inc., 12051 Riverside Way, Richmond, BC, V6W 1K7, Canada (Канада). Должно быть понятно, что датчик 290 типа «камера» может быть реализован на базе любого другого подходящего оборудования.
[0083] В некоторых случаях данные изображения, предоставленные датчиком 290 типа «камера», могут использоваться электронным устройством 210 для выполнения процедур обнаружения объектов. Например, электронное устройство 210 способно передавать данные изображения, предоставленные датчиком 290 типа «камера», в нейронную сеть обнаружения объектов (ODNN, Object Detection Neural Network), обученную выявлению и классификации потенциальных внешних объектов в окружающем пространстве 250 транспортного средства 220.
[0084] В еще одном примере множество систем 280 датчиков может содержать одну или несколько систем датчиков типа «радиолокатор» (не обозначены отдельно), установленных на транспортном средстве 220 и связанных с процессором 110 электронного устройства 210. В целом, одна или несколько систем датчиков типа «радиолокатор» могут использовать радиоволны для сбора данных о разных частях окружающего пространства 250 транспортного средства 220. Например, одна или несколько систем датчиков типа «радиолокатор» могут собирать радиолокационные данные о потенциальных внешних объектах транспортного средства 220 и такие данные могут характеризовать расстояние от системы датчиков типа «радиолокатор» до внешних объектов, ориентацию внешних объектов, абсолютную и/или относительную скорость внешних объектов и т.п.
[0085] Следует отметить, что множество систем 280 датчиков может включать в себя системы датчиков других типов в дополнение к тем, что описаны выше неисчерпывающим образом, в рамках объема настоящей технологии.
[0086] Например, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, как показано на фиг. 2, транспортное средство 220 может быть оборудовано по меньшей мере одной лазерной системой обнаружения и измерения дальности (лидарной системой), например, лидарным датчиком 300, для сбора информации об окружающем пространстве 250 транспортного средства 220. Несмотря на то, что описание здесь приводится в контексте установки на транспортном средстве 220, также предполагается, что лидарный датчик 300 может работать автономно или с подключением к другой системе.
[0087] В соответствии с не имеющими ограничительного характера вариантами осуществления настоящей технологии, лидарный датчик 300 транспортного средства 220 связан с электронным устройством 210. В некоторых не имеющих ограничительного характера вариантах осуществления информация, полученная электронным устройством 210 от лидарного датчика 300, может использоваться, по меньшей мере частично, при управлении транспортным средством 220. Например, в тех вариантах осуществления, где транспортное средство 220 является беспилотным, трехмерные карты, созданные на основе информации, полученной лидарным датчиком 300, могут использоваться электронным устройством 210 для управления, по меньшей мере частичного, транспортным средством 220. В еще одном примере процессор 110 электронного устройства 210 способен использовать информацию, полученную лидарным датчиком 300, для обнаружения в реальном времени внешних объектов, присутствующих в окружающем пространстве 250 транспортного средства 220, с целью построения и/или изменения траектории движения транспортного средства 220.
[0088] В соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, внешний объект может представлять собой движущийся внешний объект и/или неподвижный внешний объект. Например, движущимся внешним объектом может быть, среди прочего, другое транспортное средство, поезд, трамвай, велосипедист или пешеход. Примерами неподвижного внешнего объекта, среди прочего, могут служить светофор, дорожный указатель, уличный фонарь, бордюр, дерево, пожарный гидрант, остановившееся или припаркованное транспортное средство и урна для мусора.
[0089] Предполагается, что специалист в данной области имеет представление о функционировании лидарного датчика 300, тем не менее, целесообразно привести его краткое описание. Источник света (например, лазер, здесь не показан) лидарного датчика 300 способен испускать световые лучи, которые после отражения от одного или нескольких внешних объектов в окружающем пространстве 250 транспортного средства 220 рассеиваются обратно к приемнику (не показан) лидарного датчика 300. Фотоны, возвращающиеся к приемнику, собираются оптическим устройством, а их количество представляется в виде функции времени. В результате процессор 110 электронного устройства 210, используя скорость света (приблизительно 3×108 м/с), может вычислять расстояние, пройденное фотонами (туда и обратно). Фотоны могут рассеиваться в обратном направлении от множества различных объектов вокруг транспортного средства 220, таких как частицы (капли аэрозоля или молекулы) воды, пыли или дыма в атмосфере, другие транспортные средства, неподвижные внешние объекты или возможные препятствия перед транспортным средством 220.
[0090] В зависимости от варианта осуществления, транспортное средство 220 может содержать больше или меньше лидарных датчиков 300, чем показано на чертежах. В зависимости от конкретного варианта осуществления, выбор конкретных систем из множества систем 280 датчиков может зависеть от конкретного варианта осуществления лидарного датчика 300. Лидарный датчик 300 может быть установлен на транспортном средстве 220 изначально или при его модернизации в самых разных местах и/или самых разных конфигурациях.
[0091] Например, в зависимости от исполнения транспортного средства 220 и лидарного датчика 300, лидарный датчик 300 может быть установлен в верхней части лобового стекла транспортного средства 220 с его внутренней стороны. При этом, как показано на фиг. 2, установка лидарного датчика 300 в других местах, включая заднее окно, боковые окна, передний капот, крышу, переднюю решетку, передний бампер и боковину транспортного средства 220, также входит в объем настоящей технологии. В некоторых случаях лидарный датчик 300 может монтироваться в специальном корпусе, установленном сверху транспортного средства 220.
[0092] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии, например, в показанном на фиг. 2, лидарный датчик 300 установлен на крыше транспортного средства 220 и способен вращаться. Например, лидарный датчик 300, установленный на транспортном средстве 220 и способный вращаться, может содержать по меньшей мере некоторые элементы, способные поворачиваться на 360 градусов вокруг оси вращения данного лидарного датчика 300. Лидарный датчик 300, установленный с возможностью вращения, может собирать данные о большей части окружающего пространства 250 транспортного средства 220.
[0093] В других не имеющих ограничительного характера вариантах осуществления настоящей технологии, таких как показанный на фиг. 2, лидарный датчик 300 установлен на боковой стороне или на передней решетке и выполнен, например, без возможности вращения. В частности, лидарный датчик 300, установленный на транспортном средстве 220 без возможности вращения, может содержать по меньшей мере некоторые элементы, не способные поворачиваться на 360 градусов, но способные собирать данные о заданных частях окружающего пространства 250 транспортного средства 220.
[0094] Независимо от конкретного места установки и/или конкретного варианта исполнения, лидарный датчик 300 способен собирать данные об окружающем пространстве 250 транспортного средства 220, например, для построения многомерной карты внешних объектов в окружающем пространстве 250 транспортного средства 220. Ниже приводится описание устройства лидарного датчика 300 с точки зрения сбора данных об окружающем пространстве 250 транспортного средства 220.
[0095] В конкретном не имеющем ограничительного характера примере лидарный датчик 300 может быть реализован в виде лидарного датчика, выпускаемого компанией Velodyne LiDAR, Inc., 5521 Hellyer Avenue, San Jose, CA 95138, USA (США). Должно быть понятно, что лидарный датчик 300 может быть реализован на базе любого другого подходящего оборудования.
[0096] Следует отметить, что в приведенном здесь описании лидарный датчик 300 реализован как «времяпролетная» лидарная система и в связи этим содержит соответствующие элементы, свойственные такой реализации, тем не менее, допускаются и другие варианты осуществления лидарного датчика 300 без отступления от существа и объема настоящей технологии. Например, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии лидарный датчик 300 может быть также реализован как лидарная система с непрерывным частотно-модулированным сигналом (FMCW, Frequency-Modulated Continuous Wave) согласно одному или нескольким вариантам реализации и на основе соответствующих им элементов, которые описаны в патентной заявке US2021373172A1 «LiDAR detection methods and systems» этого же заявителя, опубликованной 02.12.2021, содержание которой полностью включено в настоящий документ посредством ссылки.
[0097] На фиг. 3 схематически представлена процедура 302 сбора лидарных данных, выполняемая процессором 110 электронного устройства 210 для формирования данных 310 трехмерного облака точек, которые представляют внешний объект, присутствующий в окружающем пространстве 250 транспортного средства 220, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
[0098] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процедура 302 сбора лидарных данных для получения данных 310 трехмерного облака точек может выполняться непрерывно. В других вариантах осуществления настоящей технологии процедура 302 сбора лидарных данных для получения данных 310 трехмерного облака точек может выполняться с заданной периодичностью, например, каждые 2 миллисекунды или с любым другим подходящим интервалом времени.
[0099] Для выполнения процедуры 302 сбора лидарных данных во время движения транспортного средства 220 по дороге 304 процессор 110 электронного устройства 210 способен собирать данные 306 датчика, представляющие объекты в окружающем пространстве 250 транспортного средства 220, с помощью лидарного датчика 300. В соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен получать данные 306 датчика, представляющие объекты в окружающем пространстве 250 транспортного средства 220, в разных местах дороги 304 в виде одного или нескольких трехмерных облаков точек, таких как трехмерное облако 312 точек.
[00100] В общем случае трехмерное облако 312 точек представляет собой совокупность лидарных точек в виде трехмерного облака точек, в котором точка 314 лидара является точкой в трехмерном пространстве, характеризующей по меньшей мере часть поверхности внешнего объекта на дороге 304 или рядом с ней. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии трехмерное облако 312 точек может быть разделено на слои, точки каждого из которых образуют эллипс, причем начальные точки всех эллиптических слоев считаются имеющими одинаковую ориентацию.
[0101] Точка 314 лидара в трехмерном облаке 312 точек связана с параметрами 316 лидара (обозначенным на фиг. 3 как L1, L2 и LN). Не имеющими ограничительного характера примерами параметров 316 лидара могут служить расстояние, интенсивность света, угол, а также другие параметры, относящиеся к данным, которые могут собираться лидарным датчиком 300. Лидарный датчик 300 может формировать трехмерное облако точек на каждом временном шаге t во время движения транспортного средства 220, в результате чего образуется совокупность подобных трехмерных облаков точек, содержащих данные 310 трехмерных облаков точек об окружающем пространстве 250 транспортного средства 220.
[0102] Предполагается, что в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 электронного устройства 210 способен дополнять трехмерное облако 312 точек данными изображения, полученными от датчика 290 типа «камера». Для этого процессор 110 способен использовать одно или несколько решений из патентной заявки US2020090352A1 «Methods and systems for computer-based determining of presence of objects» этого же заявителя, опубликованной 19.03.2020, содержание которой полностью включено в настоящий документ посредством ссылки.
[0103] При этом некоторые факторы могут снижать, по меньшей мере частично, способность лидарного датчика 300 формировать трехмерные облака точек требуемого качества во время движения транспортного средства 220 по дороге 304. Например, во время движения транспортного средства 220 по дороге 304 может произойти загрязнение выходного окна (отдельно не показано) лидарного датчика 300, например, грязью или пылью. Еще одним примером может служит перекрытие, по меньшей мере частичное, поля обзора лидарного датчика 300 из-за тех или иных погодных условий, таких как туман, дождь и снег. К другим факторам, которые могут ухудшать обзор для лидарного датчика 300, относятся, среди прочего, дым, фоновое световое излучение, такое как солнечный свет, и т.п.
[0104] В результате лидарный датчик 300 может утратить способность излучать прежнее количество света в окружающее пространство 250 и, соответственно, не иметь возможности формировать прежнее количество лидарных точек, что приводит к ухудшению данных 310 трехмерного облака точек. Если не выполнить предупредительные действия, такие как очистка и/или обслуживание лидарного датчика 300, транспортное средство 220 может перестать получать необходимые данные об окружающем пространстве 250, что может привести, например, к дорожно-транспортному происшествию из-за столкновения с внешними объектами.
[0105] На фиг. 4 схематически представлено транспортное средство 220, движущееся в пределах конкретного участка 402 дороги, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
[0106] Должно быть понятно, что после выезда на перекресток на участке 402 дороги транспортное средство 220 может в соответствии с заданной для него траекторией движения выполнить поворот 404 вправо на пересекающую дорогу. Однако в силу одного из факторов, неисчерпывающим образом перечисленных выше, трехмерное облако 312 точек может не содержать лидарные точки, которые представляют внешние объекты, находящиеся в окружающем пространстве 250 на расстоянии, превышающем первое расстояние 408 от транспортного средства 220, в том числе, приближающееся транспортное средство 420, движущееся по пересекающей дороге в прямом направлении 406.
[0107] Таким образом, из-за снижения качества данных в трехмерном облаке 312 точек транспортное средство 220 может не принять в расчет приближающееся транспортное средство 420 на пересекающей дороге и выполнить поворот 404 вправо, не уступив дорогу приближающемуся транспортному средству 420, что может привести к столкновению с ним.
[0108] Соответственно, разработчиками настоящей технологии были разработаны настоящие способы и системы для определения степени ухудшения лидарных данных, формируемых лидарным датчиком 300, таких как данные 310 трехмерного облака точек, в том числе трехмерного облака 312 точек, представляющего окружающее пространство 250 транспортного средства 220, на основе данных, сформированных другими датчиками, установленными на транспортном средстве 220, такими как датчик 290 типа «камера».
[0109] Здесь степень ухудшения лидарных данных представляет собой меру, характеризующую максимальное расстояние от транспортного средства 220, на котором лидарный датчик 300 способен достоверно обнаруживать внешние объекты, т.е. получать рассеиваемый ими свет в количестве, достаточном для формирования представляющих их лидарных точек. Например, если лидарный датчик 300 в состоянии распознавать внешние объекты в данной части окружающего пространства 250 транспортного средства 220 лишь в диапазоне расстояний от 0 до 30 м, степень ухудшения можно считать высокой. Если лидарный датчик 300 в состоянии распознавать внешние объекты в диапазоне расстояний от 0 до 50 м, степень ухудшения данных 310 трехмерного облака точек можно считать умеренной. Наконец, если лидарный датчик 300 способен распознавать внешние объекты в диапазоне расстояний, например, от 0 до 80 м, степень ухудшения данных 310 трехмерного облака точек можно считать низкой.
[0110] В связи с этим разработчики учли, что степень ухудшения может определяться на основе статистических данных об охвате лидарными точками внешних объектов, присутствующих в заданной части окружающего пространства 250 транспортного средства 220, таких как приближающееся транспортное средство 420 на заданном участке дороги 402. Для этого, как должно быть понятно из приведенного ниже описания, статистические данные об охвате могут получаться путем проецирования трехмерного облака точек, представляющего заданную часть окружающего пространства 250, такого как трехмерное облако 312 точек, представляющее заданный участок дороги 402, на изображение, представляющее ту же часть окружающего пространства 250 и полученное датчиком 290 типа «камера» одновременно с трехмерным облаком 312 точек. Таким образом, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, как более подробно описано ниже, основой для получения статистических данных об охвате могут служить количество и параметры лидарных точек, попавших в соответствующее двумерное представление внешнего объекта, присутствующего на изображении от датчика 290 типа «камера».
[0111] Кроме того, как показано на фиг. 2, настоящие способы дополнительно направлены на обучение алгоритма 260 машинного обучения, реализованного на сервере 235, на основе по меньшей мере полученных вышеуказанным способом статистических данных об охвате внешних объектов с целью определения степени ухудшения.
[0112] В не имеющих ограничительного характера вариантах осуществления настоящей технологии алгоритм 260 машинного обучения может быть реализован на основе нейронных сетей (NN, Neural Network), таких как сверточная нейронная сеть (CNN, Convolutional Neural Network), нейронная сеть на основе модели-трансформера и т.п. При этом в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии алгоритм 260 машинного обучения может быть реализован на основе модели дерева решений.
Архитектура модели машинного обучения
[0113] На фиг. 5 схематически представлена модель 500 дерева решений, которая может использоваться с не имеющими ограничительного характера вариантами осуществления настоящей технологии. Модель 500 дерева решений призвана служить примером общей модели дерева решений, которая может быть изменена в соответствии с требованиями конкретной прогностической модели, такой как алгоритм 260 машинного обучения. К таким изменениям относятся, например, среди прочего, добавление или удаление одного или нескольких уровней дерева, добавление или удаление узлов (т.е. признаков и связанных с ними разбиений), а также добавление или удаление ветвей, соединяющих узлы и/или листья дерева.
[0114] Модель 500 дерева решений может представлять собой обученную модель дерева. В некоторых вариантах осуществления модель 500 дерева решений может уточняться и/или изменяться после ее создания, например, для повышения степени точности и/или для расширения области применения модели машинного обучения. В некоторых вариантах осуществления модель 500 дерева решений может служить основой для определения, например, среди прочего, степени ухудшения данных лидарного датчика 300, как описано ниже. Без отступления от существа и объема настоящей технологии могут быть предусмотрены и другие области применения модели 500 дерева решений.
[0115] Модель 500 дерева решений содержит первый узел 502, связанный с первым признаком f1. Первый узел 502 определяет первый уровень модели 500 дерева решений. Первый узел 502 соединяется ветвями со вторым узлом 504 и третьим узлом 506. Второй узел 504 и третий узел 506 связаны со вторым признаком f2. Второй узел 504 и третий узел 506 определяют второй уровень модели 500 дерева решений. В одном из вариантов реализации первый признак f1 и разбиение для первого признака f1 выбраны из совокупности признаков, расположенных на первом уровне модели 500 дерева, на основе множества обучающих цифровых объектов. Например, такой признак может характеризовать конкретную лидарную точку в обучающем трехмерном облаке точек, сформированном лидарным датчиком 300, как более подробно описано ниже.
[0116] Первый признак f1 задается таким образом, чтобы значение параметра, связанного с первым признаком f1, для данного цифрового объекта определяло, должен цифровой объект быть связан со вторым узлом 504 или с третьим узлом 506. Например, если это значение меньше значения f1, то цифровой объект связывается со вторым узлом 504. В другом примере, если это значение больше значения f1, то цифровой объект связывается с третьим узлом 506.
[0117] Второй узел 504, в свою очередь, связан с четвертым узлом 508, связанным с третьим признаком f3, и пятым узлом 510, связанным с третьим признаком f3. Третий узел 506 связан с шестым узлом 512, связанным с третьим признаком f3, и седьмым узлом 514, связанным с третьим признаком f3. Четвертый узел 508, пятый узел 510, шестой узел 512 и седьмой узел 514 определяют третий уровень модели 500 дерева решений. Как отмечалось выше применительно к первому узлу 502, значение параметра, связанного с вторым признаком f2, для данного цифрового объекта определяет, должен цифровой объект быть связан с четвертым узлом 508 или с пятым узлом 510 (если цифровой объект связан со вторым узлом 504) либо с шестым узлом 512 или седьмым узлом 514 (если цифровой объект связан с третьим узлом 506).
[0118] Каждый из четвертого узла 508, пятого узла 510, шестого узла 512 и седьмого узла 514, в свою очередь, связан с набором прогностических параметров. В примере, показанном на фиг. 5, наборы прогностических параметров включают в себя первый набор 520, второй набор 522, третий набор 524 и четвертый набор 526. В каждый набор прогностических параметров входят три целевых значения, а именно C1, C2 и C3, заданные, например, людьми-оценщиками, как поясняется в приведенном ниже описании.
[0119] Специалистам в данной области техники должно быть понятно, что модель 500 дерева решений служит примером варианта осуществления, в котором тот или иной уровень модели 500 дерева решений связан с одним признаком. В примере, показанном на фиг. 5, первый уровень включает в себя первый узел 502 и связан с первым признаком f1, второй уровень включает в себя второй узел 504 и третий узел 506 и связан со вторым признаком f2, а третий уровень включает в себя четвертый узел 508, пятый узел 510, шестой узел 512 и седьмой узел 514 и связан с третьим признаком f3.
[0120] Иными словами, в варианте осуществления, показанном на фиг. 5, первый уровень связан с первым признаком f1, второй уровень - со вторым признаком f2, а третий уровень - с третьим признаком f3. Впрочем, могут быть предусмотрены и другие варианты осуществления. В частности, возможен альтернативный вариант осуществления, в котором сформированная модель дерева может включать в себя различные признаки на заданном уровне модели дерева. Например, первый уровень такой модели дерева может включать в себя первый узел, связанный с первым признаком f1, а второй уровень - второй узел, связанный со вторым признаком f2, и третий узел, связанный с третьим признаком f3. Специалистам в данной области техники должно быть понятно, что без отступления от существа и объема настоящей технологии могут быть предусмотрены и другие варианты связи признаков с тем или иным уровнем.
[0121] На способ выбора признаков, таких как первый признак f1, второй признак f2 и третий признак f3, для создания модели 500 дерева решений не накладывается ограничений. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии выбор признаков и, соответственно, связанных с ними разбиений в узлах модели 500 дерева решений может предусматривать оптимизацию соответствующей метрики, характеризующей качество того или иного признака, для разделения множества обучающих цифровых объектов вдоль ветвей модели 500 дерева решений по мере ввода каждого из множества обучающих цифровых объектов в модель 500 дерева решений в процессе обучения. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии такой метрикой может быть, среди прочего, оценка корректности положительных результатов, примесь Джини, прирост информации и т.п. В отдельных не имеющих ограничительного характера вариантах осуществления настоящей технологии признаки могут выбираться по критерию обеспечения максимума параметра качества прогноза протодеревьев, составляющих модель 500 дерева решений, как описано, например, в патентной заявке US2019164084A1 «Method of and system for generating prediction quality parameter for a prediction model executed in a machine learning algorithm», опубликованной 30.05.2019, содержание которой полностью включено в настоящий документ посредством ссылки.
[0122] Кроме того, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, алгоритм 260 машинного обучения может включать в себя единственный экземпляр модели 500 дерева решений, в этом случае алгоритм машинного обучения может называться одиночным деревом решений. При этом в других не имеющих ограничительного характера вариантах осуществления настоящей технологии алгоритм 260 машинного обучения может включать в себя ансамбль деревьев решений, реализованных подобно модели 500 дерева решений, тогда алгоритм 260 машинного обучения может называться лесом деревьев решений. В данном случае окончательный прогноз для ансамбля деревьев решений формируется на основе результатов прогноза для каждого дерева решений из ансамбля. На способ построения ансамбля деревьев решений не накладывается ограничений. Для этого, например, может использоваться алгоритм бустинга, такой как алгоритм градиентного бустинга.
[01] В общем случае бустинг представляет собой способ построения ансамбля деревьев решений, в котором деревья строятся пошагово (в отличие, например, от построения случайного леса, при котором деревья могут создаваться параллельно) таким образом, чтобы расхождение между целевыми значениями и результатами прогноза для ансамбля деревьев решений при создании каждого нового дерева решений из ансамбля было минимальным на каждой итерации. Расхождение между целевыми значениями и результатами прогноза для ансамбля деревьев решений может выражаться, например, в виде функции потерь, такой как функция потерь на основе перекрестной энтропии.
[0123] Должно быть понятно, что в не имеющих ограничительного характера вариантах осуществления настоящей технологии возможны и другие варианты реализации функции потерь, которые могут включать в себя, например, среди прочего, функцию потерь на основе среднеквадратической ошибки, функцию потерь Хьюбера, кусочно-линейную функцию потерь и т.д.
[0124] Иными словами, применяя алгоритм бустинга, алгоритм 260 машинного обучения использует деревья решений в качестве слабых учеников, которые последовательно комбинируются алгоритмом 260 машинного обучения таким образом, чтобы каждый новый ученик соответствовал невязкам предыдущей итерации, улучшая совокупный результат для всего ансамбля деревьев решений. Иными словами, каждое дерево решений строится на одном и том же множестве обучающих цифровых объектов, при этом обучающие цифровые объекты, для которых первое дерево решений допустило «ошибки» в прогнозе, являются приоритетными при построении второго дерева решений и т.д. Затем алгоритм 260 машинного обучения объединяет результаты каждой итерации, формируя сильного ученика.
[0125] В отдельных не имеющих ограничительного характера вариантах осуществления настоящей технологии алгоритм 260 машинного обучения может включать в себя ансамбль деревьев решений CatBoost, как описано, например, в статье Dorogush et al. «CatBoost: gradient boosting with categorical features support», опубликованной компанией Yandex Inc., содержание которой полностью включено в настоящий документ посредством ссылки.
[0126] Таким образом, можно утверждать, что в общем случае процессор сервера 235 и/или электронного устройства 210 выполняет два процесса в отношении алгоритма 260 машинного обучения. Первый из этих двух процессов представляет собой процесс обучения, в котором процессор 110, например, сервера 235, обеспечивает обучение алгоритма 260 машинного обучения на основе множества обучающих цифровых объектов (также называемых здесь обучающим набором данных) для определения степени ухудшения данных, формируемых лидарным датчиком 300, таких как трехмерное облако 312 точек заданного участка 402 дороги. Подробное описание процесса обучения приведено ниже со ссылкой на фиг. 6-7.
[0127] Второй процесс представляет собой процесс использования, в котором процессор 110, например, электронного устройства 210, выполняет обученный указанным способом алгоритм 260 машинного обучения для определения степени ухудшения данных трехмерного облака 312 точек в соответствии с не имеющими ограничительного характера вариантами осуществления настоящей технологии. Подробное описание процесса использования приведено ниже со ссылкой на фиг. 8.
[0128] В соответствии с не имеющими ограничительного характера вариантами осуществления настоящей технологии процесс обучения и процесс использования могут выполняться сервером 235 и/или процессором 110 электронного устройства 210 в описанной выше сетевой компьютерной среде 200.
Процесс обучения
[0129] Как указано выше, алгоритм 260 машинного обучения может быть обучен на основе множества обучающих цифровых объектов. В соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, обучающий цифровой объект включает в себя (1) обучающий вектор признаков, содержащий признаки, представляющие заданную часть окружающего пространства 250 транспортного средства 220 (например, обучающий участок 602 дороги, схематически представленный на фиг. 6), и определенный, по меньшей мере частично, на основе данных обучающего трехмерного облака точек, сформированных лидарным датчиком 300, и (2) метку, характеризующую степень ухудшения данных обучающего трехмерного облака точек.
[0130] В соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, обучающий вектор признаков для обучающего участка 602 дороги может содержать применительно к заданной части окружающего пространства 250 (1) множество признаков лидара, связанных с лидарными точками, представляющими эту заданную часть пространства, и (2) признаки, характеризующие статистические данные об охвате лидарными точками обучающих внешних объектов, присутствующих в заданной части окружающего пространства 250. Ниже описано, как могут быть определены оба указанных вида признаков, составляющих обучающий вектор признаков, связанный с обучающим цифровым объектом, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
[0131] На фиг. 6 схематически изображен обучающий участок 602 дороги в восприятии лидарного датчика 300 на транспортном средстве 220, на котором процессор 110 определяет множество признаков лидара для обучающего трехмерного облака 604 точек, представляющего обучающий участок 602 дороги, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
[0132] В соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, множество признаков лидара для обучающего трехмерного облака 604 точек включает в себя, среди прочего, (1) общее количество лидарных точек в обучающем трехмерном облаке 604 точек и (2) значения интенсивности света во всех лидарных точках из обучающего трехмерного облака 604 точек, таких как обучающая лидарная точка 606. При этом следует отметить, что вышеуказанные признаки лидара носят неисчерпывающий характер, а множество признаков лидара для обучающего трехмерного облака 604 точек в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии может включать в себя другие признаки, такие как цвет заданной обучающей точки 606 лидара, расстояние от лидарного датчика 300 до заданной обучающей точки 606 лидара и т.д.
[0133] В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен определять множество признаков лидара для заданной части обучающего трехмерного облака 604 точек. Например, процессор 110 может задавать множество углов 608 горизонтального поля обзора, таких как угол 610 горизонтального поля обзора, в горизонтальном поле 608 обзора, соответствующем ширине обучающего участка 602 дороги. На способ задания процессором 110 множества углов горизонтального поля обзора не накладывается ограничений и в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может задавать множество углов горизонтального поля обзора равномерно в пределах горизонтального поля 608 обзора лидарного датчика 300, исходя из заданного количества углов во множестве углов горизонтального поля обзора. При этом в других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может задавать более широкие углы горизонтального поля обзора по краям горизонтального поля 608 обзора и более узкие промежуточные углы горизонтального поля обзора во множестве углов горизонтального поля обзора.
[0134] Кроме того, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен определять множество признаков лидара для каждого из множества углов горизонтального поля обзора. В частности, процессор 110 способен определять, например, (1) общее количество лидарных точек в обучающем облаке 604 точек, попавших в угол 610 горизонтального поля обзора, и (2) значения интенсивности света во всех лидарных точках в пределах угла 610 горизонтального поля обзора.
[0135] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии после определения множества признаков лидара процессор 110 способен сохранять их в виде вектора, например, имеющего следующий вид:
где Ni - общее количество лидарных точек в обучающем облаке 604 точек, попавших в угол 610 горизонтального поля обзора, а Iij - значение интенсивности света в точке 606 лидара, попавшей в угол 610 горизонтального поля обзора.
[0136] В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 дополнительно способен определять множество признаков лидара в других частях поля обзора лидарного датчика 300. В том числе, процессор 110 способен задавать множество углов вертикального поля обзора, например, 4, 16 или 32 угла вертикального поля обзора, в вертикальном поле 612 обзора лидарного датчика 300, соответствующем высоте обучающего участка 602 дороги, подобно заданию множества углов горизонтального поля обзора. На способ задания процессором 110 множества углов вертикального поля обзора также не накладывается ограничений. Например, множество углов вертикального поля обзора может задаваться равномерно в пределах вертикального поля 612 обзора лидарного датчика 300. Кроме того, процессор 110 способен определять множество признаков лидара для каждого из множества углов вертикального поля обзора подобно вышеописанному определению признаков лидара для угла 610 горизонтального поля обзора.
[0137] В других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 дополнительно способен задавать части (не показаны) поля обзора лидарного датчика 300, соответствующие конкретным диапазонам расстояний от него в окружающем пространстве 250 транспортного средства 220. Например, процессор 110 способен задавать (1) первую часть поля обзора, соответствующую диапазону расстояний от 0 до 30 м от лидарного датчика 300, (2) вторую часть поля обзора, соответствующую диапазону расстояний от 30 до 50 м от лидарного датчика 300, (3) третью часть поля обзора, соответствующую диапазону расстояний от 50 до 80 м от лидарного датчика 300, и (4) четвертую часть поля обзора, соответствующую расстояниям более 80 м от лидарного датчика 300. Кроме того, процессор 110 способен определять множество признаков лидара для каждой из определенных таким способом частей поля обзора лидарного датчика 300 подобно вышеописанному определению признаков лидара для угла 610 горизонтального поля обзора. Должно быть понятно, что без отступления от существа и объема настоящей технологии могут быть предусмотрены и другие способы задания частей поля обзора лидарного датчика 300.
[0138] Кроме того, должно быть понятно, что процессор 110 способен сохранять множество признаков лидара для каждой из определенных указанным способом частей поля обзора лидарного датчика 300 в виде вектора, представленного выражением (1), для дальнейшего использования при создании обучающего цифрового объекта из множества обучающих цифровых объектов с целью обучения алгоритма 260 машинного обучения.
[0139] Кроме того, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен определять признаки, характеризующие статистические данные об охвате лидарными точками обучающих внешних объектов, присутствующих в заданной части окружающего пространства 250 транспортного средства 220, такой как обучающий участок 602 дороги. Для этого процессор 110 способен проецировать каждую лидарную точку из обучающего трехмерного облака 604 точек на изображение, представляющее обучающий участок 602 дороги, такое как обучающее изображение 704, созданное, например, датчиком 290 типа «камера».
[0140] На фиг. 7 схематически показано смешанное представление 702 обучающего участка 602 дороги в восприятии лидарного датчика 300, которое используется для определения процессором 110 множества дополняющих признаков, связанных с обучающим участком 602 дороги, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
[0141] В соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, чтобы получить смешанное представление 702, обучающее изображение 704 должно формироваться датчиком 290 типа «камера» одновременно с обучающим трехмерным облаком 604 точек. Для этого процессор 110 способен синхронизировать работу датчика 290 типа «камера» и лидарного датчика 300 таким образом, чтобы датчик 290 типа «камера» и лидарный датчик 300 могли одновременно формировать свои данные, представляющие заданную часть окружающего пространства 250 транспортного средства 220, такие как обучающее изображение 704 и обучающее трехмерное облако 604 точек обучающего участка 602 дороги.
[0142] На способ синхронизации процессором 110 датчика 290 типа «камера» и лидарного датчика 300 не накладывается ограничений. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии такая синхронизация может предусматривать определение временного смещения между моментами формирования изображений датчиком 290 типа «камера» и данных трехмерного облака точек лидарным датчиком 300 при общем начале отсчета времени, как подробно описано в патентной заявке US2021190923A1 «Methods and systems for online synchronization of sensors of self-driving vehicles (SDV)» этого же заявителя, опубликованной 24.06.2021, содержание которой полностью включено в настоящий документ посредством ссылки.
[0143] Кроме того, после создания обучающего изображения 704 процессор 110 способен (1) идентифицировать на нем обучающие внешние объекты, присутствующие на обучающем участке 602 дороги, и (2) формировать на обучающем изображении 704 ограничивающие рамки вокруг каждого из идентифицированных учебных внешних объектов, присутствующих на обучающем участке 602 дороги, такие как ограничивающая рамка 708 вокруг обучающего внешнего объекта 706. На способ идентификации процессором 110 обучающего внешнего объекта 706 не накладывается ограничений, такая идентификация может предусматривать, например, использование сверточной нейронной сети (CNN), обученной извлекать визуальные признаки пикселей из обучающего изображения 704, такие как цвет, интенсивность света и т.п., а затем классифицировать пиксели на основе извлеченных визуальных признаков как относящиеся (1) к заданному обучающему внешнему объекту 706 на обучающем участке 602 дороги или (2) к фону обучающего участка 602 дороги.
[0144] В соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен формировать ограничивающие рамки вокруг обучающих внешних объектов из заданного класса внешних объектов, такого как транспортные средства, и, соответственно, исключать все остальные обучающие внешние объекты, присутствующие на обучающем участке 602 дороги, из дальнейшего анализа. При этом в других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен формировать ограничивающие рамки вокруг обучающих внешних объектов других классов, таких как движущиеся внешние объекты, например, пешеходы (не обозначены отдельно), или неподвижные внешние объекты, например, дорожные указатели или дорожные знаки (также не обозначены отдельно на фиг. 7), и анализировать такие объекты в дальнейшем.
[0145] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен формировать ограничивающие рамки только вокруг обучающих внешних объектов из заданного класса внешних объектов, которые не перекрыты каким-либо другим обучающим внешним объектом, таким как обучающий внешний объект 706. При этом в других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен строить ограничивающую рамку вокруг группы объектов с перекрытием, например, как в случае с ограничивающей рамкой 712.
[0146] Кроме того, как указано выше, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен проецировать каждую лидарную точку из обучающего трехмерного облака 604 точек на обучающее изображение 704. Например, процессор 110 способен проецировать каждую лидарную точку, такую как заданная лидарная точка 606, на обучающее изображение 704 по правилу проецирования точек на плоскость в трехмерном пространстве, т.е. вдоль соответствующего нормального вектора, связанного с плоскостью обучающего изображения 704.
[0147] Таким образом, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен получать смешанное представление 702 обучающего участка 602 дороги, в котором каждый обучающий внешний объект из заданного класса внешних объектов, присутствующих там, заключен в ограничивающую рамку подобно обучающему внешнему объекту 706, заключенному в ограничивающую рамку 708. Кроме того, каждая ограничивающая рамка может содержать множество лидарных точек, попавших туда в результате проецирования обучающего трехмерного облака 604 точек на обучающее изображение 704, такое как множество лидарных точек 710, спроецированных внутри ограничивающей рамки 708.
[0148] Кроме того, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен определять для обучающего внешнего объекта 706 на основе множества лидарных точек 710 множество дополняющих признаков, характеризующих обучающий участок 602 дороги, с целью их включения, наряду с множеством признаков лидара, определенных как описано выше, в вектор признаков обучающего цифрового объекта для обучения алгоритма 260 машинного обучения.
[0149] В соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, множество дополняющих признаков для обучающего внешнего объекта 706 может включать в себя, среди прочего, по меньшей мере один из следующих признаков:
- значение расстояния от транспортного средства 220 до обучающего внешнего объекта 706, например, значение расстояния 714;
- общее количество обучающих внешних объектов на обучающем участке дороги, которые процессор 110 обнаружил, используя обучающее изображение 704, т.е. вокруг которых процессор может построить ограничивающую рамку;
- площадь поверхности для ограничивающей рамки 708, связанной с обучающим внешним объектом 706;
- количество лидарных точек из обучающего трехмерного облака 604 точек, попавших в ограничивающую рамку 708, т.е. количество лидарных точек во множестве лидарных точек 710, содержащихся в этой рамке;
- плотность лидарных точек во множестве лидарных точек 710;
- значения интенсивности света в лидарных точках из множества лидарных точек 710;
- средние значения расстояния до лидарных точек из множества лидарных точек 710; и
- уровни энергии в лидарных точках из множества лидарных точек 710.
[0150] В соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен определять уровень энергии, относящийся к заданной точке 606 лидара, используя зависимость между связанным с ней значением интенсивности света и значением расстояния до нее от транспортного средства 220.
[0151] Таким образом, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен (1) определять множество дополняющих признаков для каждого из обучающих внешних объектов, присутствующих на обучающем участке 602 дороги, из заданного класса внешних объектов, например, для обучающего внешнего объекта 706, и (2) включать определенные таким способом значения для множества дополняющих признаков, связанных с обучающими внешними объектами, наряду с множеством признаков лидара, определенных, как описано выше со ссылкой на фиг. 6, в обучающий вектор признаков для обучающего цифрового объекта с целью обучения алгоритма 260 машинного обучения.
[0152] В дополнительных не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 дополнительно способен идентифицировать на основе смешанного представления 702 ограничивающие рамки, связанные с обучающими внешними объектами из заданного класса внешних объектов, которые не содержат лидарных точек, т.е. такие ограничивающие рамки, в которые при проецировании обучающего трехмерного облака 604 точек на обучающее изображение 704 не попала ни одна из точек, например, пустую ограничивающую рамку 715. Соответственно, процессор 110 способен определять (1) количество таких ограничивающих рамок и (2) значения площади поверхности для них. Кроме того, процессор 110 способен включать эти значения в качестве дополнительных признаков, связанных с обучающим участком 602 дороги, в обучающий вектор признаков данного обучающего цифрового объекта для обучения алгоритма 260 машинного обучения.
[0153] Например, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен сохранять множество дополняющих признаков для смешанного представления 702 обучающего участка 602 дороги в виде вектора, имеющего следующий вид:
где - набор координат, например, в двумерной прямоугольной (декартовой) системе координат, ограничивающей рамки 708, связанной с обучающим внешним объектом 706 из заданного класса внешних объектов, присутствующих на обучающем участке 602 дороги, f1, f2, ... - множество дополняющих признаков, определенных на основе множества лидарных точек 710, попавших в ограничивающую рамку 708 и перечисленных выше неисчерпывающим образом, а (V1, SV1) - набор координат и значение площади поверхности для пустой ограничивающей рамки 715.
[0154] Кроме того, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен формировать обучающий вектор признаков для обучающего участка 602 дороги путем конкатенации векторных представлений множества признаков лидара и множества дополняющих признаков, представленных выражениями (1) и (2), соответственно. Таким образом, обучающий вектор признаков может иметь, например, следующий вид:
[0155] Кроме того, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен получать метку для обучающего трехмерного облака 604 точек, характеризующую степень ухудшения его способности представлять обучающий участок 602 дороги. В частности, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, метка может указывать на то, охватывается ли контрольный обучающий внешний объект в смешанном представлении 702 обучающего участка 602 дороги лидарными точками в пределах заданного значения расстояния от транспортного средства 220, например, первого заданного значения расстояния 716, второго заданного значения расстояния 718 или третьего заданного значения расстояния 720. Как показано на фиг. 7, любое из первого заданного значения расстояния 716, второго заданного значения расстояния 718 и третьего заданного значения расстояния 720 может быть предварительно определено как меньшее в сравнении со следующим значением из первого заданного значения расстояния 716, второго заданного значения расстояния 718 и третьего заданного значения расстояния 720. Таким образом, метка характеризует текущее расстояние видимости для лидарного датчика 300, на котором лидарный датчик 300 способен распознавать контрольный обучающий внешний объект.
[0156] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен определять принадлежность контрольного обучающего внешнего объекта к заданному классу внешних объектов, т.е. к тому же классу внешних объектов, к которому относятся обучающие внешние объекты, присутствующие на обучающем участке 602 дороги, для которого процессор 110 сформировал множество дополняющих признаков. При этом в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии разработчики учли, что присвоение меток обучающим участкам дороги с использованием движущихся внешних объектов может приводить к повышению вероятности ошибки при определении степени ухудшения данных обучающего трехмерного облака точек, сформированного лидарным датчиком 300. Соответственно, в других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен определять принадлежность контрольного обучающего внешнего объекта к другому классу внешних объектов, такому как класс неподвижных обучающих внешних объектов, расположенных, например, на обочине обучающего участка 602 дороги. Такие неподвижные обучающие внешние объекты могут включать в себя, например, первый неподвижный обучающий внешний объект 717, второй неподвижный обучающий внешний объект 719 или третий неподвижный обучающий внешний объект 721, т.е. уличные фонари. При этом для определения контрольного обучающего внешнего объекта без отступления от существа и объема настоящей технологии могут использоваться и другие классы неподвижных внешних объектов, такие как деревья, пожарные гидранты, дорожные указатели и светофоры.
[0157] Например, если процессор 110 определил контрольный обучающий внешний объект как первый неподвижный обучающий внешний объект 717, то метка, присваиваемая обучающему участку 602 дороги, может включать в себя признак, указывающий на то, охватывается ли первый неподвижный обучающий внешний объект 717 лидарными точками в пределах какого-либо из первого заданного значения расстояния 716, второго заданного значения расстояния 718 и третьего заданного значения расстояния 720. Для этого в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии метка может принимать двоичные значения, в частности, 0 и 1 или «Да» и «Нет», соответственно, указывающие на то, охватывается или нет контрольный обучающий объект в пределах заданного значения расстояния лидарными точками из обучающего трехмерного облака 604 точек. Таким образом, заданное значение расстояния, связанное с меткой, может характеризовать, например, текущие условия видимости, в которых работает лидарный датчик 300, в частности, как описано выше, степень загрязнения его выходного окна.
[0158] В дополнительных не имеющих ограничительного характера вариантах осуществления настоящей технологии метка может дополнительно указывать на заданное значение расстояния, на котором было определено, что контрольный обучающий объект охватывался лидарными точками.
[0159] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии метка может присваиваться процессором 110 смешанному представлению 702 на основе, например, заданных эвристических правил, включая количество лидарных точек, представляющих контрольный обучающий внешний объект. Например, если контрольный обучающий внешний объект был определен как первый неподвижный обучающий внешний объект 717, а заданное значение расстояния - как первое заданное значение расстояния 716, то процессор 110 может установить метку, указывающую на то, что контрольный обучающий внешний объект охватывается лидарными точками в пределах первого заданного значения расстояния 716. В другом примере, если контрольный обучающий внешний объект был определен как третий неподвижный обучающий внешний объект 721, а заданное значение расстояния - как третье заданное значение расстояния 720, то процессор 110 может установить метку, указывающую на то, что контрольный обучающий внешний объект не охватывается лидарными точками в пределах третьего заданного значения расстояния 720, поскольку количество лидарных точек, представляющих третье заданное значения расстояния 720 в смешанном представлении 702, может быть меньше заданного порогового значения для достоверного распознавания лидарным датчиком 300 третьего неподвижного обучающего внешнего объекта 721.
[0160] В других не имеющих ограничительного характера вариантах осуществления настоящей технологии метка может присваиваться смешанному представлению 702 обучающего участка 602 дороги человеком-оценщиком (не показан). Для этого смешанное представление 702 может быть передано человеку-оценщику посредством электронного устройства, реализованного подобно описанному выше электронному устройству 210. Кроме того, человек-оценщик может самостоятельно определять, охватывается ли контрольный обучающий внешний объект лидарными точками в пределах каждого из первого заданного значения расстояния 716, второго заданного значения расстояния 718 и третьего заданного значения расстояния 720. Иными словами, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, метка может указывать на то, охватывается ли контрольный обучающий внешний объект лидарными точками в пределах заданного значения расстояния согласно восприятию человека-оценщика.
[0161] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии смешанное представление 702 может передаваться человеку-оценщику в виде той или иной последовательности смешанных представлений окружающего пространства 250 транспортного средства 220, созданных в формате видеоклипа заданной продолжительности, например, 6 секунд, во время движения транспортного средства 220 по соответствующей траектории движения для обучения. Для этого человеку-оценщику во время показа ему видеоклипа может быть предложено определить, охватывается ли контрольный обучающий внешний объект лидарными точками из обучающего трехмерного облака точек в пределах каждого из первого заданного значения расстояния 716, второго заданного значения расстояния 718 и третьего заданного значения расстояния 720.
[0162] Кроме того, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен включать метку в обучающий вектор признаков, связанный с обучающим участком 602 дороги, например, следующего вида:
где L - метка, присвоенная, например, человеком-оценщиком и указывающая на то, охватывается ли контрольный обучающий внешний объект лидарными точками в смешанном представлении 702 в пределах заданного значения расстояния от транспортного средства 220 согласно восприятию человека-оценщика.
[0163] Таким образом, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен формировать заданный обучающий цифровой объект из множества обучающих цифровых объектов для обучения алгоритма 260 машинного обучения. Кроме того, должно быть понятно, что процессор 110 способен формировать и другие объекты из множества обучающих цифровых объектов, обрабатывая данные изображения, синхронно получаемые датчиком 290 типа «камера» и лидарным датчиком 300 и характеризующие другие обучающие участки дороги, как описано выше, и присваивая им соответствующие метки. При этом процессор 110 способен формировать тысячи или даже сотни тысяч обучающих цифровых объектов из множества обучающих цифровых объектов для обучения алгоритма 260 машинного обучения.
[0164] Кроме того, процессор 110 способен последовательно спускать любой из множества обучающих цифровых объектов по ветвям любого дерева решений из ансамбля деревьев решений, реализованных, как описано со ссылкой на фиг. 5. В частности, при спуске того или иного обучающего объекта из множества обучающих цифровых объектов процессор 110 способен определять разбиения в узлах заданного дерева решений из ансамбля деревьев решений, используя признаки из соответствующего обучающего вектора признаков. Кроме того, используя, например, алгоритм бустинга для формирования ансамбля деревьев решений, как описано выше со ссылкой на фиг. 5, процессор 110 способен минимизировать функцию потерь в отношении результатов прогноза для ансамбля на текущей итерации его формирования и его целевых значений, представленных метками, присвоенными каждому из множества обучающих цифровых объектов, как описано выше. Соответственно, процессор 110 способен расширять ансамбль (или лес) деревьев решений до тех пор, пока не будет достигнуто заданное пороговое значение функции потерь.
[0165] Таким образом, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен формировать обучающий набор данных для обучения алгоритма 260 машинного обучения с целью определения степени ухудшения данных 310 трехмерного облака точек.
[0166] При этом в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии перед обучением алгоритма 260 машинного обучения с использованием множества обучающих цифровых объектов, как описано выше, процессор 110 способен изменять метку обучающего цифрового объекта. В частности, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен (1) применять вторичный алгоритм машинного обучения (не показан) к по меньшей мере части обучающего вектора признаков, представляющего обучающий участок 602 дороги, и (2) устанавливать автоматически созданную метку, характеризующую прогнозную степень ухудшения данных обучающего трехмерного облака 604 точек. Кроме того, в случае несоответствия степени ухудшения, характеризуемой меткой, и прогнозной степени ухудшения процессор 110 способен заменять метку, определенную, например, человеком-оценщиком, на автоматически созданную метку.
[0167] В соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, вторичный алгоритм машинного обучения может быть реализован и обучен на сервере 235 или в электронном устройстве 210, как алгоритм 260 машинного обучения. При этом на способ реализации вторичного алгоритма машинного обучения не накладывается ограничений. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии вторичный алгоритм машинного обучения может быть реализован подобно алгоритму 260 машинного обучения с некоторыми опциональными изменениями. Таким образом, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии вторичный алгоритм машинного обучения может включать в себя ансамбль деревьев решений, каждое из которых может содержать некоторые или все элементы модели 500 дерева решений. Ансамбль деревьев решений вторичного алгоритма машинного обучения может формироваться процессором 110 также с использованием алгоритма бустинга, как описано выше.
[0168] Кроме того, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен формировать вторичный обучающий набор данных для обучения вторичного алгоритма машинного обучения на основе обучающего набора данных, используемого для обучения алгоритма 260 машинного обучения. Иными словами, процессор 110 способен использовать по меньшей мере часть из множества обучающих цифровых объектов, созданных, как описано выше, чтобы сформировать вторичное множество обучающих цифровых объектов для обучения вторичного алгоритма машинного обучения. На способ выбора процессором 110 обучающих цифровых объектов из множества обучающих цифровых объектов для их включения во вторичное множество обучающих цифровых объектов не накладывается ограничений и такой выбор может предусматривать случайный выбор обучающих цифровых объектов, например, по нормальному закону распределения.
[0169] Кроме того, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен сокращать размерность каждого обучающего вектора признаков для вторичного множества обучающих цифровых объектов. Иными словами, для обучающего вектора признаков вторичного множества обучающих цифровых объектов процессор 110 способен использовать не все признаки, описанные выше со ссылкой на фиг. 6 и 7, а только их часть.
[0170] В частности, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен сокращать размерность обучающего вектора признаков для вторичного множества обучающих цифровых объектов путем удаления оттуда или иного предотвращения использования множества признаков лидара, относящихся к вторичному обучающему трехмерному облаку точек (не показано), представляющему вторичный обучающий участок дороги, и, таким образом, оставляя там лишь множество дополняющих признаков, связанных с обучающими внешними объектами, присутствующими на вторичном обучающем участке дороги, как описано выше. Таким образом, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, обучающий цифровой объект из вторичного множества обучающих цифровых объектов может содержать (1) обучающий вектор признаков, включающий в себя множество дополняющих признаков для каждого из обучающих внешних объектов из заданного класса внешних объектов, присутствующих на вторичном обучающем участке дороги, и (2) метку, характеризующую степень ухудшения вторичного обучающего трехмерного облака точек, определенную, как описано выше.
[0171] При этом в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии размерность вторичного алгоритма машинного обучения после обучения может быть меньше размерности алгоритма 260 машинного обучения. Иными словами, из-за меньшего количества признаков, используемых для обучения вторичного алгоритма машинного обучения, его деревья решений могут обладать меньшей «глубиной», т.е. содержать меньше уровней между корневыми узлами и листьями. Кроме того, в ходе обучения вторичного алгоритма машинного обучения, которое может быть реализовано подобно обучению алгоритма 260 машинного обучения, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии, чтобы предотвратить переобучение вторичного алгоритма машинного обучения, процессор 110 способен формировать деревья решений в количестве, не превышающем заданное пороговое значение количества деревьев решений, которое может составлять, например, 5, 10 или 15.
[0172] Таким образом, процессор 110 способен обучать вторичный алгоритм машинного обучения, обеспечивая формирование автоматически созданной метки для обучающего участка дороги, такого как вышеописанный обучающий участок 602 дороги. Кроме того, процессор 110 способен использовать вторичный алгоритм машинного обучения для определения автоматически созданной метки. В частности, процессор 110 способен (1) предварительно обрабатывать обучающий вектор признаков (а именно его часть за исключением метки), связанный с обучающим участком 602 дороги, таким образом, чтобы его размерность соответствовала размерности обучающих векторов признаков, используемых для обучения вторичного алгоритма машинного обучения, и (2) передавать предварительно обработанный таким способом (или предназначенный для этапа использования в данном случае) обучающий вектор признаков во вторичный алгоритм машинного обучения.
[0173] Кроме того, если автоматически созданная метка удовлетворяет определенным условиям, то в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии процессор 110 способен заменять метку, связанную с обучающим вектором признаков, в обучающем цифровом объекте на автоматически созданную метку. В частности, процессор 110 способен заменять метку на автоматически созданную метку, если выполняются следующие условия: (1) прогнозная степень ухудшения данных обучающего трехмерного облака 604 точек не соответствует степени ухудшения, указанной меткой, (2) прогнозная степень ухудшения данных обучающего трехмерного облака 604 точек превышает эту степень ухудшения, и (3) уровень достоверности, связанный с прогнозной степенью ухудшения, равен заданному пороговому уровню достоверности, который может составлять, например, среди прочего, 0,7, 0,85, или 0,95, или превышает его.
[0174] Возвращаясь к приведенному выше примеру в части присвоения метки обучающему участку 602 дороги, исходя из охвата контрольного обучающего внешнего объекта лидарными точками, предположим, что контрольный обучающий внешний объект был определен как второй неподвижный обучающий внешний объект 719, а человеку-оценщику было предоставлено смешанное представление 702 обучающего участка дороги с целью определения того, охватывается ли второй неподвижный обучающий внешний объект 719 лидарными точками в пределах второго заданного значения расстояния 718. Тогда человек-оценщик может установить значение «1», указывающее на то, что второй неподвижный обучающий внешний объект 719 охватывается, по его оценке, лидарными точками в пределах второго заданного значения расстояния 718. При этом прогнозная степень ухудшения, определенная вторичным алгоритмом машинного обучения на основе обучающего вектора признаков, может указывать на то, что второй неподвижный обучающий внешний объект 719 не охватывается лидарными точками в пределах второго заданного значения расстояния 718. Кроме того, если прогнозная степень ухудшения данных обучающего трехмерного облака 604 точек была определена вторичным алгоритмом машинного обучения с уровнем достоверности 0,85, а заданный пороговый уровень достоверности равен 0,8, то процессор 110 может установить значение «0», указывающее на то, что контрольный обучающий внешний объект не охватывается лидарными точками, в векторе обучающих признаков, вместо значения «1», заданного человеком-оценщиком.
[0175] В другом примере процессор 110 способен определять контрольный обучающий внешний объект как первый неподвижный обучающий внешний объект 717, а человеку-оценщику может быть предложено определить, охватывается ли этот объект лидарными точками в пределах первого заданного значения расстояния 716. Человек-оценщик может установить метку «Да», означающую, что он воспринимает контрольный обучающий внешний объект как охватываемый лидарными точками в пределах первого заданного значения расстояния 716. При этом к обучающему вектору признаков может быть применен вторичный алгоритм машинного обучения, который также может определить, что контрольный обучающий внешний объект охватывается лидарными точками в пределах первого заданного значения расстояния 716. В этом случае соответствующая метка не будет заменена на автоматически созданную метку.
[0176] Иными словами, обучающий вектор признаков вида (4) примет следующий вид:
где M - автоматически созданная метка, характеризующая прогнозную степень ухудшения данных обучающего трехмерного облака 604 точек, определенную вторичным алгоритмом машинного обучения.
[0177] При этом, несмотря на замену метки на автоматически созданную метку, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 может продолжить использовать эту метку. В частности, процессор 110 способен сокращать размерность обучающего вектора признаков вида (4), оставляя в нем лишь множество признаков лидара. Таким образом, процессор 110 способен формировать сокращенный обучающий вектор признаков следующего вида:
[0178] Кроме того, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен включать сформированный таким способом сокращенный обучающий вектор признаков, связанный с меткой, в качестве отдельного обучающего цифрового объекта во множество обучающих цифровых объектов для обучения алгоритма 260 машинного обучения, как описано выше.
[0179] Таким образом, процессор 110 способен обучать алгоритм 260 машинного обучения для определения степени ухудшения данных трехмерного облака точек этапа использования, таких как вышеописанные данные 310 трехмерного облака точек. Кроме того, процессор 110 электронного устройства 210 или сервера 235 способен применять обученный таким способом алгоритм 260 машинного обучения к данным 310 трехмерного облака точек для определения степени их ухудшения, как описано ниже.
Процесс использования
[0180] На фиг. 8 схематически представлена работа процессора 110, использующего алгоритм 260 машинного обучения для определения степени ухудшения данных трехмерного облака 312 точек, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии.
[0181] В соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, чтобы определить степень ухудшения данных 310 трехмерного облака точек с помощью алгоритма 260 машинного обучения, процессор 110 способен (1) получать от лидарного датчика 300 трехмерное облако 312 точек, представляющее, например, участок 402 дороги, который описан выше, (2) получать от датчика 290 типа «камера» изображение 804, представляющее участок 402 дороги и сформированное одновременно с трехмерным облаком 312 точек, (3) проецировать каждое трехмерное облако 312 точек на изображение 804, создавая смешанное представление 802 этапа использования для определения статистических данных об охвате внешних объектов, таких как приближающееся транспортное средство 420, лидарными точками из трехмерного облака 312 точек, и (4) определять вектор признаков этапа использования, характеризующий участок 402 дороги, как описано выше применительно к обучающему участку 602 дороги.
[0182] Кроме того, процессор 110 способен передавать вектор признаков этапа использования в алгоритм 260 машинного обучения, а алгоритм 260 машинного обучения способен удостоверяться в том, что текущее расстояние видимости для лидарного датчика 300 соответствует первому заданному значению расстояния 716. Иными словами, используя вектор признаков этапа использования, процессор 110 способен определять, что лидарный датчик 300 не в состоянии достоверно распознавать внешние объекты на расстоянии, превышающем первое заданное значение расстояния 716.
[0183] Должно быть понятно, что поскольку процессор 110 способен формировать вектор признаков этапа использования, содержащий признаки, по типу соответствующие вышеупомянутому обучающему вектору признаков, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии алгоритм 260 машинного обучения способен определять степень ухудшения данных трехмерного облака 312 точек в отношении внешних объектов из заданного класса внешних объектов, таких как транспортное средство. Иными словами, возвращаясь к текущему примеру, показанному на фиг. 8, процессор 110 способен определять, что лидарный датчик 300 не в состоянии достоверно распознавать внешние объекты из заданного класса внешних объектов, такие как приближающееся транспортное средство 420, на расстоянии, превышающем первое заданное значение расстояния 716.
[0184] Кроме того, процессор 110 способен определять, превышает ли определенная таким способом степень ухудшения данных трехмерного облака 312 точек, сформированного лидарного датчиком 300, заданный порог ухудшения лидарных данных, который, например, может быть заранее задан как показатель расстояния видимости для лидарного датчика 300, соответствующего второму заданному значению расстояния 718.
[0185] Кроме того, в случае принятия решения о том, что степень ухудшения данных трехмерного облака 312 точек превышает заданный порог ухудшения лидарных данных, процессор 110 способен инициировать выполнение по меньшей мере одного заранее заданного предупредительного действия. Например, процессор 110 способен инициировать активацию встроенной функции очистки лидарного датчика 300. В другом примере процессор 110 способен выдавать уведомление для оператора транспортного средства 220 о том, что требуется обслуживание лидарного датчика 300, с указанием его степени срочности, например, безотлагательное или средней срочности. В еще одном примере процессор 110 способен инициировать торможение транспортного средства 220 до заданного значения скорости, связанного с заданным порогом ухудшения лидарных данных, например, 20 км/ч или 30 км/ч. Кроме того, процессор 110 способен инициировать съезд транспортного средства 220 на обочину сразу после выявления того, что степень ухудшения данных трехмерного облака 312 точек больше заданного порога ухудшения лидарных данных.
[0186] Таким образом, процессор 110 способен предотвращать столкновение транспортного средства 220 с приближающимся транспортным средством 420.
Способ
[0187] С учетом описанной выше архитектуры и приведенных примеров возможна реализация способа определения степени ухудшения данных трехмерного облака точек, формируемых лидарным датчиком 300, таких как данные 310 трехмерного облака точек, в том числе трехмерного облака 312 точек, представляющего участок 402 дороги. На фиг. 9 представлена блок-схема способа 900 в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии. Способ 900 может быть реализован процессором 110. Процессор 110 может, например, входить в состав электронного устройства 210.
[0188] Как указано выше, для определения степени ухудшения данных 310 трехмерного облака точек процессор 110 способен обучать алгоритм машинного обучения, такой как алгоритм 260 машинного обучения, включающий в себя ансамбль деревьев решений, каждое из которых может быть реализовано на основе модели 500 дерева решений, описанной выше со ссылкой на фиг. 5.
Шаг 902: получение процессором от лидарного датчика обучающих данных измерений, в том числе обучающего облака точек, представляющего заданную часть окружающего пространства беспилотного автомобиля.
[0189] Способ 900 начинается с шага 902, на котором процессор 110 может получать от лидарного датчика 300 данные обучающего трехмерного облака точек, представляющие заданную часть окружающего пространства 250 транспортного средства 220. Например, как указано выше со ссылкой на фиг. 6, процессор 110 может получать обучающее трехмерное облако 604 точек, представляющее обучающий участок 602 дороги, в частности, в соответствии с процедурой 302 сбора лидарных данных, описанной выше со ссылкой на фиг. 3.
[0190] Следующим шагом в способе 900 является шаг 904.
Шаг 904: определение процессором на основе обучающего облака точек множества признаков лидара, относящихся к заданной части окружающего пространства беспилотного автомобиля.
[0191] Затем на шаге 904, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 может определять на основе обучающего трехмерного облака 604 точек, представляющего обучающий участок 602 дороги, множество признаков лидара для обучающего участка 602 дороги, как описано выше со ссылкой на фиг. 6.
[0192] В частности, процессор 110 способен определять (1) общее количество лидарных точек в обучающем трехмерном облаке 604 точек и (2) значения интенсивности света во всех лидарных точках из обучающего трехмерного облака 604 точек, таких как обучающая лидарная точка 606.
[0193] В дополнительных не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен определять множество признаков лидара для каждого из множества углов горизонтального поля обзора лидарного датчика 300, таких как угол 610 горизонтального поля обзора, как описано выше со ссылкой на фиг. 6.
[0194] Таким образом, процессор 110 способен определять множество признаков лидара, относящихся к обучающему участку 602 дороги, и формировать его векторное представление, например, в указанном выше виде (1).
[0195] Следующим шагом в способе 900 является шаг 906.
Шаг 906: получение процессором от датчика типа «камера» беспилотного автомобиля обучающего изображения, представляющего заданную часть окружающего пространства беспилотного автомобиля.
[0196] Затем на шаге 906 процессор 110 может получать, например, от датчика 290 типа «камера» транспортного средства 220, обучающее изображение 704, представляющее обучающий участок 602 дороги. Для этого, как отмечалось выше, процессор 110 может обеспечивать одновременное формирование лидарным датчиком 300 и датчиком 290 типа «камера» обучающего трехмерного облака 604 точек и обучающего изображения 704, представляющего обучающий участок 602 дороги, соответственно. Для этого процессор 110 может применять один из подходов, описанных в вышеупомянутой патентной заявке US2021190923A1.
[0197] Кроме того, процессор 110 способен обнаруживать, например, с использованием обученной сверточной нейронной сети (CNN), обучающие внешние объекты на обучающем изображении 704, такие как заданный обучающий внешний объект 706. Дополнительно процессор 110 способен определять класс внешних объектов каждого из обучающих внешних объектов на обучающем изображении 704, такой как транспортные средства, уличные фонари, дорожные указатели, светофоры и т.п.
[0198] После обнаружения обучающих внешних объектов процессор 110 способен формировать вокруг каждого из них ограничивающую рамку, такую как ограничивающая рамка 708, охватывающая обучающий внешний объект 706.
[0199] Следующим шагом в способе 900 является шаг 908.
Шаг 908: проецирование процессором обучающего облака точек на обучающее изображение для формирования смешанного представления заданной части окружающего пространства беспилотного автомобиля, включающего в себя статистические данные об охвате лидарными точками обучающих объектов, присутствующих на изображении.
[0200] Затем на шаге 908, как подробно описано выше со ссылкой на фиг. 7, процессор 110 может проецировать лидарные точки из обучающего трехмерного облака 604 точек на обучающее изображение 704 для формирования смешанного представления 702 обучающего участка 602 дороги. При этом смешанное представление 702 включает в себя статистические данные об охвате обучающих внешних объектов, присутствующих на обучающем участке 602 дороги, лидарными точками из обучающего трехмерного облака 604 точек, в частности, данные множества лидарных точек 710, охватывающих обучающий внешний объект 706.
[0201] Следующим шагом в способе 900 является шаг 910.
Шаг 910: определение процессором для каждого обучающего объекта, присутствующего в заданной части окружающего пространства беспилотного автомобиля, множества дополняющих признаков на основе статистических данных.
[0202] Таким образом на шаге 910, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 может определять множество дополняющих признаков для каждого обучающего внешнего объекта, присутствующего на обучающем участке 602 дороги.
[0203] В частности, как описано выше со ссылкой на фиг. 7, для обучающего внешнего объекта 706 на основе множества лидарных точек 710 процессор 110 способен определять по меньшей мере одно из следующего:
- значение расстояния от транспортного средства 220 до обучающего внешнего объекта 706, например, значение расстояния 714;
- общее количество обучающих внешних объектов на обучающем участке дороги, которые процессор 110 обнаружил, используя обучающее изображение 704, т.е. вокруг которых процессор может построить ограничивающую рамку;
- площадь поверхности для ограничивающей рамки 708, связанной с обучающим внешним объектом 706;
- количество лидарных точек из обучающего трехмерного облака 604 точек, попавших в ограничивающую рамку 708, т.е. количество лидарных точек во множестве лидарных точек 710, содержащихся в этой рамке;
- плотность лидарных точек во множестве лидарных точек 710;
- значения интенсивности света в лидарных точках из множества лидарных точек 710;
- средние значения расстояния до лидарных точек из множества лидарных точек 710; и
- уровни энергии в лидарных точках из множества лидарных точек 710.
[0204] В дополнительных не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 дополнительно способен идентифицировать на основе смешанного представления 702 ограничивающие рамки, связанные с обучающими внешними объектами из заданного класса внешних объектов, которые не содержат лидарных точек, т.е. такие ограничивающие рамки, в которые при проецировании обучающего трехмерного облака 604 точек на обучающее изображение 704 не попала ни одна из точек, например, пустую ограничивающую рамку 715. Соответственно, процессор 110 способен определять (1) количество таких ограничивающих рамок и (2) значения площади поверхности для них. Кроме того, процессор 110 способен включать эти значения в качестве дополнительных признаков, связанных с обучающим участком 602 дороги, в обучающий вектор признаков данного обучающего цифрового объекта для обучения алгоритма 260 машинного обучения.
[0205] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен определять множество дополняющих признаков только для объектов из заданного класса внешних объектов, таких как транспортные средства.
[0206] Таким образом, процессор 110 способен определять множество дополняющих признаков для каждого обучающего внешнего объекта из заданного класса внешних объектов и формировать его векторное представление, например, в указанном выше виде (2).
[0207] Кроме того, за счет конкатенации векторных представлений множества признаков лидара и множества дополняющих признаков для каждого обучающего внешнего объекта, представленных выражениями (1) и (2), соответственно, процессор 110 способен формировать обучающий вектор признаков для обучающего цифрового объекта, связанного с обучающим участком 602 дороги, в указанном выше виде (3).
[0208] Следующим шагом в способе 900 является шаг 912.
Шаг 912: получение процессором для смешанного представления заданной части пространства метки, характеризующей степень ухудшения обучающих данных измерений, сформированных лидарным датчиком.
[0209] Затем на шаге 912 процессор 110 может получать метку для обучающего участка 602 дороги, характеризующую степень ухудшения данных обучающего трехмерного облака 604 точек. Как отмечалось выше, метка может указывать на то, охватывается ли контрольный обучающий внешний объект в смешанном представлении 702 обучающего участка 602 дороги лидарными точками из обучающего трехмерного облака 604 точек в пределах заданного значения расстояния, например, первого заданного значения расстояния 716, второго заданного значения расстояния 718 или третьего заданного значения расстояния 720.
[0210] В тех не имеющих ограничительного характера вариантах осуществления настоящей технологии, где процессор 110 способен формировать вектор признаков, учитывая лишь обучающие внешние объекты из заданного класса внешних объектов, процессор 110 также способен определять принадлежность контрольного обучающего внешнего объекта к заданному классу внешних объектов.
[0211] При этом в других не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен определять принадлежность контрольного обучающего внешнего объекта, такого как первый неподвижный обучающий внешний объект 717, второй неподвижный обучающий внешний объект 719 или третий неподвижный обучающий внешний объект 721, к другому классу внешних объектов.
[0212] Кроме того, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, метка может присваиваться смешанному представлению 702 обучающего участка 602 дороги человеком-оценщиком, как описано выше. Для этого смешанное представление 702 может быть передано человеку-оценщику посредством электронного устройства, реализованного подобно описанному выше электронному устройству 210. Человек-оценщик может самостоятельно определять, охватывается ли контрольный обучающий внешний объект лидарными точками в пределах каждого из первого заданного значения расстояния 716, второго заданного значения расстояния 718 и третьего заданного значения расстояния 720. Иными словами, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, метка может указывать на то, охватывается ли контрольный обучающий внешний объект лидарными точками в пределах заданного значения расстояния согласно восприятию человека-оценщика.
[0213] Следующим шагом в способе 900 является шаг 914.
Шаг 914: формирование процессором обучающего вектора признаков из множества обучающих векторов признаков на основе множества признаков лидара множества дополняющих признаков, связанных с каждым обучающим объектом, присутствующим в заданной части окружающего пространства, и метки.
[0214] Затем, на шаге 914, процессор 110 способен формировать на основе обучающего вектора признаков и метки, связанной с обучающим участком 602 дороги, заданный обучающий цифровой объект, векторное представление которого имеет вид (4), из множества обучающих цифровых объектов для обучения алгоритма 260 машинного обучения.
[0215] Кроме того, должно быть понятно, что процессор 110 способен формировать и другие объекты из множества обучающих цифровых объектов, обрабатывая данные изображения, синхронно получаемые датчиком 290 типа «камера» и лидарным датчиком 300, и характеризующие другие обучающие участки дороги, как описано выше, и присваивая им соответствующие метки. При этом процессор 110 способен формировать тысячи или даже сотни тысяч обучающих цифровых объектов из множества обучающих цифровых объектов для обучения алгоритма 260 машинного обучения.
[0216] В дополнительных не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 также способен изменять метку обучающего цифрового объекта. В частности, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен (1) применять вторичный алгоритм машинного обучения (не показан) к по меньшей мере части обучающего вектора признаков, представляющего обучающий участок 602 дороги, и (2) устанавливать автоматически созданную метку, характеризующую прогнозную степень ухудшения данных обучающего трехмерного облака 604 точек.
[0217] Как указано выше, вторичный алгоритм машинного обучения может быть реализован подобно алгоритму 260 машинного обучения, т.е. в виде ансамбля деревьев решений, но обладать меньшей размерностью. Под уменьшением размерности подразумевается, что вторичный алгоритм машинного обучения может обучаться на по меньшей мере части множества обучающих цифровых объектов, сформированных, как описано выше, чьи обучающие векторы признаков содержат меньше признаков, в частности, меньше дополняющих признаков, связанных с каждым из обучающих внешних объектов. Кроме того, в некоторых не имеющих ограничительного характера вариантах осуществления вторичный алгоритм машинного обучения может включать в себя деревья решений в количестве, не превышающем заданное пороговое значение количества деревьев решений, которое может составлять, например, 5, 10 или 15, как описано выше.
[0218] В частности, процессор 110 способен заменять метку на автоматически созданную метку, если выполняются следующие условия: (1) прогнозная степень ухудшения данных обучающего трехмерного облака 604 точек не соответствует степени ухудшения, указанной меткой, (2) прогнозная степень ухудшения данных обучающего трехмерного облака 604 точек превышает эту степень ухудшения, и (3) уровень достоверности, связанный с прогнозной степенью ухудшения, равен заданному пороговому уровню достоверности, который может составлять, например, среди прочего, 0,7, 0,85, или 0,95, или превышает его.
[0219] Таким образом, если автоматически созданная метка, сформированная вторичным алгоритмом машинного обучения на основе вектора признаков, связанного с обучающим участком 602 дороги, удовлетворяет вышеуказанным условиям, процессор 110 способен заменять метку на автоматически созданную метку. При этом векторное представление обучающего цифрового объекта может иметь указанный выше вид (5).
[0220] При этом, несмотря на замену метки на автоматически созданную метку, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен продолжать использовать эту метку. В частности, процессор 110 способен сокращать размерность обучающего вектора признаков вида (4), оставляя в нем лишь множество признаков лидара. Таким образом, процессор 110 способен формировать сокращенный обучающий вектор признаков, имеющий вид (6).
[0221] Кроме того, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор 110 способен включать сформированный таким образом сокращенный обучающий вектор признаков, связанный с меткой, во множество обучающих цифровых объектов в качестве отдельного обучающего цифрового объекта для обучения алгоритма 260 машинного обучения, как описано выше.
[0222] Следующим шагом в способе 900 является шаг 916.
Шаг 916: обучение процессором алгоритма машинного обучения на основе множества обучающих векторов признаков для определения степени ухудшения на этапе использования данных измерений этапа использования от лидарного датчика, представляющих объекты этапа использования в окружающем пространстве беспилотного автомобиля.
[0223] Затем на шаге 916, как описано выше, процессор 110 способен обучать алгоритм 260 машинного обучения на основе сформированных указанным способом обучающих цифровых объектов для определения степени ухудшения данных 310 трехмерного облака точек.
[0224] После обучения процессор 110 способен использовать алгоритм 260 машинного обучения для определения степени ухудшения данных 310 трехмерного облака точек, такого как трехмерное облако 312 точек, представляющее заданный участок 402 дороги, как описано выше со ссылкой на фиг. 8.
[0225] В частности, в соответствии с некоторыми не имеющими ограничительного характера вариантами осуществления настоящей технологии, процессор 110 способен (1) получать от лидарного датчика 300 трехмерное облако 312 точек, представляющее, например, данный участок 402 дороги, который описан выше, (2) получать от датчика 290 типа «камера» изображение 804, представляющее участок 402 дороги и сформированное одновременно с трехмерным облаком 312 точек, (3) проецировать каждое трехмерное облако 312 точек на изображение 804, создавая смешанное представление 802 этапа использования для определения статистических данных об охвате внешних объектов, таких как приближающееся транспортное средство 420, лидарными точками из трехмерного облака 312 точек, и (4) определять вектор признаков этапа использования, характеризующий участок 402 дороги, как описано выше применительно к обучающему участку 602 дороги.
[0226] Кроме того, процессор 110 способен передавать вектор признаков этапа использования в алгоритм 260 машинного обучения, а алгоритм 260 машинного обучения способен удостоверяться в том, что текущее расстояние видимости для лидарного датчика 300 соответствует первому заданному значению расстояния 716. Иными словами, используя вектор признаков этапа использования, процессор 110 способен определять, что лидарный датчик 300 не в состоянии достоверно распознавать внешние объекты на расстоянии, превышающем первое заданное значение расстояния 716.
[0227] Кроме того, процессор 110 способен определять, превышает ли определенная таким способом степень ухудшения данных трехмерного облака 312 точек, сформированного лидарного датчиком 300, заданный порог ухудшения лидарных данных, который, например, может быть заранее задан как показатель расстояния видимости для лидарного датчика 300, соответствующего второму заданному значению расстояния 718.
[0228] Кроме того, в случае принятия решения о том, что степень ухудшения данных трехмерного облака 312 точек превышает заданный порог ухудшения лидарных данных, процессор 110 способен инициировать выполнение по меньшей мере одного заранее заданного предупредительного действия. Например, процессор 110 способен инициировать активацию встроенной функции очистки лидарного датчика 300. В другом примере процессор 110 способен выдавать уведомление для оператора транспортного средства 220 о том, что требуется обслуживание лидарного датчика 300, с указанием его степени срочности, например, безотлагательное или средней срочности. В еще одном примере процессор 110 способен инициировать торможение транспортного средства 220 до заданного значения скорости, связанного с заданным порогом ухудшения лидарных данных, например, 20 км/ч или 30 км/ч. Кроме того, процессор 110 способен инициировать съезд транспортного средства 220 на обочину сразу после выявления того, что степень ухудшения данных трехмерного облака 312 точек больше заданного порога ухудшения лидарных данных.
[0229] Таким образом, некоторые не имеющие ограничительного характера варианты осуществления способа 900 позволяют повышать точность определения степени ухудшения данных 310 трехмерного облака точек, формируемых лидарным датчиком 300, и затем своевременно принимать предупредительные меры, позволяя предотвращать дорожно-транспортные происшествия, вызванные столкновениями транспортного средства 220 с другими объектами.
[0230] На этом реализация способа 900 завершается.
[0231] Для специалиста в данной области могут быть очевидными возможные изменения и усовершенствования описанных выше вариантов осуществления настоящей технологии. Вышеприведенное описание включает в себя примеры реализации настоящей технологии и не носит ограничительного характера. Объем охраны настоящей технологии определяется исключительно объемом приложенной формулы изобретения.
[0232] Несмотря на то, что выше описаны варианты реализации с указанием конкретных шагов, выполняемых в определенном порядке, следует понимать, что некоторые из этих шагов могут быть объединены, разделены на части или переупорядочены без отступления от существа и объема настоящей технологии. Соответственно, порядок и группирование шагов не носят ограничительного характера для настоящей технологии.
Предложены система и способ для определения степени ухудшения данных облака точек от лидарного датчика беспилотного автомобиля с использованием алгоритма машинного обучения. Способ предусматривает определение на основе обучающего облака точек, сформированного лидарным датчиком и представляющего окружающее пространство беспилотного автомобиля, множества признаков лидара, определение для каждого обучающего объекта в окружающем пространстве множества дополняющих признаков на основе статистических данных об охвате обучающих объектов лидарными точками, получение метки, характеризующей степень ухудшения данных обучающего облака точек, формирование вектора признаков из множества векторов признаков на основе множества признаков лидара, множества дополняющих признаков и метки, обучение алгоритма машинного обучения на основе множества векторов признаков для определения степени ухудшения на этапе использования данных измерений этапа использования, формируемых лидарным датчиком. 2 н. и 18 з.п. ф-лы, 9 ил.
1. Компьютерный способ определения степени ухудшения данных облака точек от лидарного датчика беспилотного автомобиля с использованием алгоритма машинного обучения, реализуемый процессором, связанным с лидарным датчиком, и на этапе обучения предусматривающий обучение алгоритма машинного обучения путем:
- получения процессором от лидарного датчика обучающих данных измерений, в том числе обучающего облака точек, представляющего заданную часть окружающего пространства беспилотного автомобиля;
- определения процессором на основе обучающего облака точек множества лидарных признаков, относящихся к заданной части окружающего пространства беспилотного автомобиля;
- получения процессором от датчика типа «камера» беспилотного автомобиля обучающего изображения, представляющего заданную часть окружающего пространства беспилотного автомобиля и сформированного датчиком типа «камера» одновременно с обучающими данными измерений от лидарного датчика;
- проецирования процессором обучающего облака точек на обучающее изображение для формирования смешанного представления заданной части окружающего пространства беспилотного автомобиля, включающего в себя статистические данные об охвате лидарными точками обучающих объектов, присутствующих на изображении;
- определения процессором для каждого обучающего объекта, присутствующего в заданной части окружающего пространства беспилотного автомобиля, множества дополняющих признаков на основе статистических данных;
- получения процессором для смешанного представления заданной части пространства метки, характеризующей степень ухудшения обучающих данных измерений, сформированных лидарным датчиком;
- формирования процессором обучающего вектора признаков из множества обучающих векторов признаков на основе множества лидарных признаков множества дополняющих признаков, связанных с каждым обучающим объектом, присутствующим в заданной части окружающего пространства, и метки; и
- обучения процессором алгоритма машинного обучения на основе множества обучающих векторов признаков для определения степени ухудшения на этапе использования данных измерений этапа использования от лидарного датчика, представляющих объекты этапа использования в окружающем пространстве беспилотного автомобиля.
2. Способ по п. 1, в котором множество лидарных признаков включает в себя (1) количество лидарных точек в обучающем облаке точек и (2) значения интенсивности света в лидарных точках обучающего облака точек.
3. Способ по п. 2, в котором определение множества лидарных признаков включает в себя определение в горизонтальном поле обзора лидарного датчика множества углов горизонтального поля обзора и определение множества лидарных признаков для лидарных точек в обучающем облаке точек в пределах каждого угла из множества углов горизонтального поля обзора лидарного датчика.
4. Способ по п. 1, в котором определение множества дополняющих признаков для обучающего объекта в заданной части окружающего пространства беспилотного автомобиля включает в себя формирование процессором ограничивающей рамки, представляющей обучающий объект, и определение процессором по меньшей мере одного из следующего:
- значение расстояния от беспилотного автомобиля до обучающего объекта;
- количество обучающих объектов в заданной части окружающего пространства;
- площадь поверхности для ограничивающей рамки, связанной с обучающим объектом;
- количество лидарных точек, попавших в ограничивающую рамку;
- плотность лидарных точек, попавших в ограничивающую рамку;
- значения интенсивности света в лидарных точках, попавших в ограничивающую рамку;
- средние значения расстояния от лидарного датчика до лидарных точек, попавших в ограничивающую рамку; и
- уровни энергии в лидарных точках, попавших в ограничивающую рамку.
5. Способ по п. 4, в котором метка содержит данные, указывающие на то, охватывается ли лидарными точками по меньшей мере один контрольный обучающий объект на соответствующем расстоянии от беспилотного автомобиля.
6. Способ по п. 5, в котором обучающий объект относится к первому заданному классу объектов, а по меньшей мере один контрольный обучающий объект – ко второму заданному классу объектов, отличному от первого заданного класса объектов.
7. Способ по п. 6, в котором первый заданный класс объектов представляет собой транспортные средства.
8. Способ по п. 4, в котором формирование обучающего вектора признаков дополнительно включает в себя определение процессором количества ограничивающих рамок без лидарных точек на основе смешанного представления и определение процессором значений площади поверхности для ограничивающих рамок без лидарных точек.
9. Способ по п. 1, в котором метка сформирована человеком-оценщиком, а степень ухудшения обучающих данных измерений определена согласно восприятию человека-оценщика.
10. Способ по п. 1, в котором формирование обучающего вектора признаков включает в себя уточнение метки с использованием автоматически созданной метки, характеризующей прогнозную степень ухудшения обучающих данных измерений, определенную вторичным алгоритмом машинного обучения, обученным определению прогнозных степеней ухудшения обучающих данных измерений от лидарного датчика, при этом вторичный алгоритм машинного обучения отличается от алгоритма машинного обучения, а уточнение предусматривает замену метки на автоматически созданную метку в обучающем векторе признаков, если (1) прогнозная степень ухудшения обучающих данных измерений, сформированных вторичным алгоритмом машинного обучения, не соответствует степени ухудшения, указанной меткой, (2) прогнозная степень ухудшения обучающих данных измерений превышает степень ухудшения, указанную меткой, и (3) уровень достоверности, связанный с прогнозной степенью ухудшения, равен заданному пороговому уровню достоверности или превышает его.
11. Способ по п. 10, в котором вторичный алгоритм машинного обучения обучен на основе по меньшей мере части множества обучающих векторов признаков.
12. Способ по п. 10, в котором алгоритм машинного обучения и вторичный алгоритм машинного обучения представляют собой алгоритмы машинного обучения на основе деревьев решений.
13. Способ по п. 12, в котором алгоритм машинного обучения и вторичный алгоритм машинного обучения представляют собой леса деревьев решений.
14. Способ по п. 13, в котором размерность вторичного алгоритма машинного обучения меньше размерности алгоритма машинного обучения.
15. Способ по п. 12, в котором алгоритм машинного обучения на основе деревьев решений представляет собой алгоритм машинного обучения на основе деревьев решений CatBoost.
16. Способ по п. 10, который в случае замены метки на автоматически созданную метку в обучающем векторе признаков дополнительно предусматривает формирование сокращенного обучающего вектора признаков на основе множества лидарных признаков и метки и включение сокращенного обучающего вектора признаков во множество обучающих векторов признаков.
17. Способ по п. 1, который на этапе использования после этапа обучения дополнительно предусматривает применение алгоритма машинного обучения для определения степени ухудшения на этапе использования данных измерений этапа использования от лидарного датчика беспилотного автомобиля, что включает в себя:
- получение процессором от лидарного датчика данных измерений этапа использования, в том числе облака точек этапа использования, представляющего заданную часть окружающего пространства беспилотного автомобиля;
- определение процессором на основе облака точек этапа использования множества лидарных признаков, относящихся к заданной части окружающего пространства беспилотного автомобиля;
- получение процессором от датчика типа «камера» беспилотного автомобиля изображения этапа использования, представляющего заданную часть окружающего пространства беспилотного автомобиля и сформированного датчиком типа «камера» одновременно с данными измерений этапа использования от лидарного датчика;
- проецирование процессором облака точек этапа использования на изображение этапа использования для формирования смешанного представления этапа использования заданной части окружающего пространства беспилотного автомобиля, включающего в себя статистические данные об охвате лидарными точками, входящими в облако точек этапа использования, объектов этапа использования, присутствующих на изображении этапа использования;
- определение процессором для каждого объекта этапа использования, присутствующего в заданной части окружающего пространства беспилотного автомобиля, множества дополняющих признаков на основе статистических данных;
- формирование процессором на основе множества лидарных признаков и множества дополняющих признаков, связанных с каждым объектом этапа использования, присутствующим в заданной части окружающего пространства, вектора признаков этапа использования;
- передачу процессором вектора признаков этапа использования в алгоритм машинного обучения для определения степени ухудшения на этапе использования данных измерений этапа использования, сформированных лидарным датчиком, характеризующей текущее расстояние видимости, на котором лидарный датчик способен распознавать объекты этапа использования в заданной части окружающего пространства беспилотного автомобиля; и
- инициирование процессором выполнения по меньшей мере одного заданного предупредительного действия, если степень ухудшения на этапе использования данных измерений этапа использования превышает заданный порог ухудшения данных изображения.
18. Способ по п. 17, в котором распознавание объектов этапа использования включает в себя распознавание объектов этапа использования из заданного класса объектов.
19. Способ по п. 17, в котором по меньшей мере одно заданное предупредительное действие включает в себя инициирование очистки лидарного датчика, выдачу уведомления о необходимости обслуживания лидарного датчика, инициирование торможения беспилотного автомобиля или инициирование остановки беспилотного автомобиля.
20. Система определения степени ухудшения данных изображения от лидарного датчика беспилотного автомобиля с использованием алгоритма машинного обучения, содержащая процессор, связанный с лидарным датчиком, и физический машиночитаемый носитель для хранения команд, причем процессор при выполнении команд способен:
- получать от лидарного датчика обучающие данные измерений, в том числе обучающее облако точек, представляющее заданную часть окружающего пространства беспилотного автомобиля;
- определять на основе обучающего облака точек множество лидарных признаков, относящихся к заданной части окружающего пространства беспилотного автомобиля;
- получать от датчика типа «камера» беспилотного автомобиля обучающее изображение, представляющее заданную часть окружающего пространства беспилотного автомобиля и сформированное датчиком типа «камера» одновременно с обучающими данными измерений от лидарного датчика;
- проецировать обучающее облако точек на обучающее изображение для формирования смешанного представления заданной части окружающего пространства беспилотного автомобиля, включающего в себя статистические данные об охвате лидарными точками обучающих объектов, присутствующих на изображении;
- определять для каждого обучающего объекта, присутствующего в заданной части окружающего пространства беспилотного автомобиля, множество дополняющих признаков на основе статистических данных;
- получать для смешанного представления заданной части пространства метку, характеризующую степень ухудшения обучающих данных измерений, сформированных лидарным датчиком;
- формировать обучающий вектор признаков из множества обучающих векторов признаков на основе множества лидарных признаков, множества дополняющих признаков, связанных с каждым обучающим объектом, присутствующим в заданной части окружающего пространства, и метки; и
- обучать алгоритм машинного обучения на основе множества обучающих векторов признаков для определения степени ухудшения на этапе использования данных измерений этапа использования от лидарного датчика, представляющих объекты этапа использования в окружающем пространстве беспилотного автомобиля.
US 20200090322 A1, 19.03.2020 | |||
RU 2019143603 A, 24.06.2021 | |||
US 9098754 B1, 04.08.2015 | |||
Способ и система создания параметра качества прогноза для прогностической модели, выполняемой в алгоритме машинного обучения | 2017 |
|
RU2694001C2 |
US 9508015 B2, 29.11.2016. |
Авторы
Даты
2024-09-11—Публикация
2021-12-30—Подача