СПОСОБ И УСТРОЙСТВО ИДЕНТИФИКАЦИИ ЧАСТЕЙ ФРАГМЕНТИРОВАННОГО МАТЕРИАЛА В ПРЕДЕЛАХ ИЗОБРАЖЕНИЯ
METHOD AND APPARATUS FOR IDENTIFYING PORTIONS OF FRAGMENTED MATERIAL WITHIN AN IMAGE

Предпосылки создания изобретения
Область техники, к которой относится изобретение
Настоящее изобретение относится в целом к обработке изображений, более точно, к обработке изображений с целью идентификации частей фрагментированного материала в пределах изображения.
Описание уровня техники
Для идентификации частей фрагментированного материала в пределах изображения фрагментированного материала могут применяться методы обработки изображений. Захватывается изображение или изображения фрагментированного материала, такого как горная порода, фрагментированная путем подрыва или другими способами выемки. С целью классификации частей фрагментированного материала могут применяться различные методы сегментации изображения. Поскольку фрагментированные материалы являются неоднородными по своей природе, задача их классификации является более сложной по сравнению с классификацией других объектов, имеющих общие признаки, например, в случае распознавания лиц.
Сохраняется потребность в усовершенствованных способах и устройстве идентификации частей фрагментированного материала.
Краткое изложение сущности изобретения
В соответствии с одной из раскрытых особенностей предложен способ обработки изображений фрагментированного материала с целью идентификации частей фрагментированного материала в пределах изображения. Способ предусматривает прием пиксельных данных, соответствующих входному множеству пикселей, представляющих изображение фрагментированного материала. Способ также предусматривает обработку пиксельных данных с использованием сверточной нейронной сети, имеющей множество слоев, и создание выходного представления классификации пикселей, указывающего, находятся ли пиксели из входного множества пикселей в одном из следующих положений: на краю части фрагментированного материала, изнутри от края части фрагментированного материала и в промежутках между частями фрагментированного материала. Сверточная нейронная сеть содержит, по меньшей мере, один сверточный слой, сконфигурированный на создание свертки входного множества пикселей, и предварительно обучена с использованием множества обучающих изображений, содержащих ранее идентифицированные части фрагментированного материала. Способ дополнительно предусматривает обработку выходного представления классификации пикселей с целью сопоставления идентифицированных краев с частями фрагментированного материала.
Создание свертки может предусматривать создание свертки с использованием разреженного ядра, элементы которого разделены строками и столбцами нулевых значений.
Создание свертки может предусматривать создание свертки с использованием разреженного ядра, элементы которого разделены множеством строк и множеством столбцов нулевых значений.
Обработка пиксельных данных с использованием сверточной нейронной сети может предусматривать обработку пиксельных данных с использованием первой сверточной нейронной сети и с использованием выходного представления классификации пикселей в качестве входа для второй сверточной нейронной сети, способной создавать уточненное выходное представление классификации пикселей.
Множество обучающих изображений включает ранее идентифицированные части фрагментированного материала, каждая из которых ограничена краем, областям части фрагментированного материала, находящимся ближе к краю, могут присваиваться меньшие величины показателя достоверности, чем областям части фрагментированного материала на удалении от края, при этом величины показателя достоверности являются показателем уровня достоверности, соответствующего ранее идентифицированным частям фрагментированного материала на обучающем изображении.
Прием пиксельных данных может предусматривать прием множества наборов пиксельных данных, каждый из которых содержит данные, соответствующие, по меньшей мере, одному из следующего: интенсивности оптического излучения, интенсивности теплового излучения, интенсивности, соответствующей различным основным цветам, интенсивности при множестве различных условий освещения, интенсивности для каждого из множества диапазонов электромагнитных волн, глубине пикселей и расстоянию между каждым пикселем и ближайшим краем.
Способ может предусматривать обработку, по меньшей мере, одного из множества наборов пиксельных данных с целью создания суперпиксельного представления набора пиксельных данных, в котором сгруппированы множества пикселей с целью представления частей фрагментированного материала с использованием уменьшенного числа суперпикселей относительно числа пикселей в наборе пиксельных данных.
Создание свертки может предусматривать создание множества сверток входного множества пикселей.
Прием информации о глубине пикселей может предусматривать, по меньшей мере, одно из следующего: определение диспаратности пикселей, относящихся к изображениям, полученным датчиком стереоскопических изображений, определение диспаратности пикселей, относящихся к последовательным изображениям, полученным датчиком изображений, прием данных времени пролета пикселей во входном множестве пикселей, определение информации о глубине на основании деформации картины структурированного света, проецированного на фрагментированный материал, прием трехмерного облака точек, созданного лазерным датчиком, и обработку облака точек с целью определения глубины пикселей во входном множестве пикселей.
Способ может предусматривать предварительную обработку информации о глубине пикселей до создания свертки.
Способ может предусматривать использование информации о глубине пикселей с целью расчета физического размера частей фрагментированного материала.
Способ может предусматривать определение распределения по размерам на основании расчетного размера частей фрагментированного материала.
Способ может предусматривать преобразование распределения по размерам в соответствующий результат ситового анализа.
Обработка пиксельных данных с использованием сверточной нейронной сети может дополнительно предусматривать обработку выходного представления классификации пикселей в дополнительном слое нейронной сети с целью генерирования выходного распределения по размерам, при этом нейронная сеть предварительно обучена с использованием множества обучающих изображений фрагментированного материала с указанием размеров частей фрагментированного материала.
Сверточная нейронная сеть может содержать слой подвыборки, сконфигурированный на обработку свертки с целью обеспечения множества выходных данных подвыборки, каждые из которых основаны на значениях, соответствующих множеству пикселей в свертке.
В слое подвыборки может быть реализован один из следующих процессов: выбор максимального значения из соседних элементов, выбор среднего значения из соседних элементов и выбор стохастического значения из соседних элементов.
Сверточная нейронная сеть может содержать, по меньшей мере, один слой повышающей дискретизации, следующий за слоем подвыборки и способный копировать выходные данные с целью создания классификации пикселей с повышенной частотой дискретизации, а способ может дополнительно предусматривать генерирование масштабированной копии свертки входного множества пикселей, размер которой соответствует размеру классификации пикселей с повышенной частотой дискретизации, и объединение классификации пикселей с повышенной частотой дискретизации с масштабированной копией свертки с целью создания классификации пикселей, имеющей повышенное пространственное разрешение.
Обработка выходного представления классификации пикселей с целью сопоставления идентифицированных краев с частями фрагментированного материала может предусматривать применение морфологического алгоритма к выходному представлению классификации пикселей с целью смыкания краевых участков, окружающих части фрагментированного материала.
Способ может предусматривать применение взвешивания к выходному представлению классификации пикселей с использованием различных весовых коэффициентов, присвоенных пикселям, отнесенным к пикселям на краях части фрагментированного материала, пикселям, отнесенным к пикселям изнутри от края части фрагментированного материала, и пикселям, отнесенным к пикселям в промежутке между частями фрагментированного материала.
Применение морфологического алгоритма к выходному представлению классификации пикселей может предусматривать реализацию, по меньшей мере, одного из следующих алгоритмов: алгоритма расширения, алгоритма сужения, алгоритма сегментации по водоразделам, алгоритма размыкания и алгоритма смыкания.
Способ может предусматривать идентификацию промежутков между частями фрагментированного материала как содержащих одно из следующего: мелко фрагментированный материал и пустоту.
Способ может предусматривать передискретизацию пиксельных данных, соответствующих входному множеству пикселей, с целью получения, по меньшей мере, одного передискретизированного входного множества пикселей, при этом обработка с использованием сверточной нейронной сети может предусматривать обработку одного или нескольких передискретизированных вводимых множеств пикселей, а сверточная нейронная сеть предварительно обучена с использованием соответствующим образом передискретизированного множества обучающих изображений фрагментированного материала, содержащих ранее идентифицированные части фрагментированного материала.
Передискретизация пиксельных данных может предусматривать, по меньшей мере, одно из следующего: повышающую дискретизацию пиксельных данных и понижающую дискретизацию пиксельных данных.
Выходное представление классификации пикселей может генерироваться путем осуществления свертки на участках пикселей, окружающих классифицируемый пиксель, при этом участок пикселей имеет размер, выбранный в соответствии с масштабом фрагментированного материала, окружающего классифицируемый пиксель, а масштаб определяется с использованием одного из следующего: вводимых пользователем данных, информации о глубине пикселей, сети, обученной на основании соответствующих пиксельных данных и данных глубины пикселей, и выходного представления классификации пикселей с использованием начального выбора размера участка.
В соответствии с другой раскрытой особенностью предложено устройство для осуществления анализа фрагментации. Устройство содержит датчик изображений, способный захватывать изображение фрагментированного материала, содержащего части фрагментированного материала, и генерировать пиксельные данные, соответствующие входному множеству пикселей, представляющих изображение. Устройство также содержит схему обработки, функционально сконфигурированную на обработку пиксельных данных с использованием сверточной нейронной сети, имеющей множество слоев, и создание выходного представления классификации пикселей, указывающего, находятся ли пиксели во входном множестве пикселей в одном из следующих положений: на краю части фрагментированного материала, изнутри от края части фрагментированного материала и в промежутке между частями фрагментированного материала. Сверточная нейронная сеть содержит, по меньшей мере, один сверточный слой, сконфигурированный на создание конволюции входного множества пикселей, при этом сверточная нейронная сеть предварительно обучена с использованием множества обучающих изображений, содержащих ранее идентифицированные части фрагментированного материала. Схема обработки дополнительно функционально сконфигурирована на обработку выходного представления классификации пикселей с целью сопоставления идентифицированных краев с частями фрагментированного материала.
Схема обработки может содержать графический процессор (ГП) и соответствующую память графических данных, а сверточная нейронная сеть может быть реализована, по меньшей мере, частично с использованием функций ГП, при этом в памяти графических данных могут храниться данные, генерированные путем операций, связанных со сверточной нейронной сетью.
Датчик изображений может находиться в портативном анализаторе фрагментации, содержащем схему обработки, способную обеспечивать результаты анализа фрагментации, или в визуализаторе фрагментации, поддерживающем связь с дистанционной схемой обработки, способной обеспечивать результаты анализа фрагментации.
Датчик изображений может служить для захвата изображения фрагментированного материала, доставляемого одним из следующего: землеройным орудием тяжелого оборудования, способного погружать фрагментированный материал, кузовом грузового автомобиля и конвейерной лентой.
Другие особенности и признаки станут ясны специалистам в данной области техники после ознакомления со следующим далее описанием конкретных раскрытых вариантов осуществления в сочетании с сопровождающими чертежами.
Краткое описание чертежей
На чертежах, иллюстрирующих раскрытые варианты осуществления:
на фиг. 1 показан вид в перспективе датчика изображений для захвата изображения фрагментированного материала;
на фиг. 2 показана схема обработки согласно одному из раскрытых вариантов осуществления для обработки пиксельных данных изображения, захваченного датчиком изображений, показанным на фиг. 1;
на фиг. 3 показана блок-схема, иллюстрирующая шаги программы, предписывающей показанной на фиг. 2 схеме обработки идентифицировать части фрагментированного материала;
на фиг. 4 показан вид в перспективе одного из альтернативных вариантов осуществления датчика изображений для захвата изображения фрагментированного материала;
на фиг. 5 показана блок-схема, иллюстрирующая шаги программы, предписывающей показанной на фиг. 2 схеме обработки принимать наборы пиксельных данных от датчика изображений, показанного на фиг. 4;
на фиг. 6 схематически показана нейронная сеть, реализованная в схеме обработки, показанной на фиг. 2;
на фиг. 7 показана часть изображения фрагментированного материала;
на фиг. 8 показана дополнительная часть изображения фрагментированного материала, включая часть, показанную на фиг. 7;
на фиг. 9 представлено изображение выходного представления классификации пикселей;
на фиг. 10 показано маркированное обучающее изображение, используемое для обучения сверточной нейронной сети, показанной на фиг. 6;
на фиг. 11 показана блок-схема, иллюстрирующая шаги программы, предписывающей показанной на фиг. 2 схеме обработки выполнять обработку выходного представления классификации пикселей;
на фиг. 12 схематически показан один из вариантов осуществления нейронной сети, реализованной в схеме обработки, показанной на фиг. 2;
на фиг. 13 показан один из примеров представления входного изображения фрагментированных материалов, обработанного с использованием алгоритма суперпиксельного представления;
на фиг. 14 показано маркированное обучающее изображение, используемое для обучения сверточной нейронной сети, показанной на фиг. 12;
на фиг. 15 представлен один из альтернативных вариантов осуществления маркированного обучающего изображения, используемого для обучения сверточных нейронных сетей, показанных на фиг.6 или 12;
на фиг. 16 схематически показан другой вариант осуществления нейронной сети, реализованной в схеме обработки, показанной на фиг. 2;
на фиг. 17 показана фотография карьерного экскаватора, имеющего датчик изображений согласно одному из раскрытых вариантов осуществления;
на фиг. 18 показана фотография погрузчика, имеющего датчик изображений согласно другому раскрытому варианту осуществления; и
на фиг. 19 показана фотография конвейерной ленты, имеющей датчик изображений согласно другому раскрытому варианту осуществления.
Подробное описание
На фиг.1 показан в целом обозначенный позицией 102 датчик изображений, способный захватывать изображение фрагментированного материала 100. Фрагментированный материал 100 содержит части 104 фрагментированного материала и области мелко фрагментированного материала 106 и/или пустоты 108 в промежутках между частями фрагментированного материала. Датчик 102 изображений генерирует пиксельные данные, соответствующие входному множеству пикселей, представляющих захваченное изображение фрагментированного материала 100 в поле 114 зрения датчика изображений.
На фиг. 2 показана в целом обозначенная позицией 200 схема обработки пиксельных данных согласно одному из раскрытых вариантов осуществления. Схема 200 обработки содержит микропроцессор 202, память 204 для хранения программ, память 206 для хранения переменной информации и порт 208 ввода-вывода, при этом все они поддерживают связь с микропроцессором 202. В этом варианте осуществления схема 200 обработки также содержит графический процессор (ГП) 210, имеющий соответствующую память 212 для хранения пиксельных данных. ГП способен эффективно хранить пиксельные данные и выполнять функции обработки изображений на пиксельных данных под управлением микропроцессора 202.
В памяти 204 для хранения программ, которая может быть реализована как запоминающее устройство с произвольной выборкой (ЗУПВ), флэш-память и/или накопитель на жестком диске (НЖМД) или их сочетание, хранятся управляющие программы, предписывающие микропроцессору 202 выполнять различные функции. Память программ содержит первый блок управляющих программ 220, предписывающих микропроцессору 202 выполнять функции операционной системы, и блок программ 222 для выполнения функций фрагментации.
В памяти 206 для хранения переменной информации имеется множество ячеек, включая ячейку 230 для хранения значений ядра свертки и ячейку 232 для хранения обучающих изображений. Память 206 для хранения переменной информации может быть реализована, например, как запоминающее устройство с произвольной выборкой или флэш-память.
Порт 208 ввода-вывода содержит беспроводный интерфейс 240 для поддержания беспроводной связи посредством сети Wi-Fi или сотовой сети передачи данных. Порт 208 ввода-вывода также содержит интерфейс 242, имеющий вход 244 для приема пиксельных данных от датчика 102 изображений. Схема 200 обработки также содержит дисплей 260, а ГП 210 содержит выход 262 для вывода сигналов управления дисплеем. В проиллюстрированном варианте осуществления дисплей 260 представляет собой сенсорный дисплей и содержит интерфейсный порт 264 USB, а порт 208 ввода-вывода дополнительно содержит интерфейс 246 USB, имеющий порт 248 USB для сопряжения с дисплеем 260 с целью приема вводимых пользователем данных посредством сенсорного экрана. В проиллюстрированном варианте осуществления порт 208 ввода-вывода также содержит связной интерфейс 250 для поддержания связи посредством локальной вычислительной сети (ЛВС) или глобальной вычислительной сети (ГВС), такой как Интернет. Связным интерфейсом 250 может являться, например, интерфейс сети Ethernet.
На фиг. 3 показана в целом обозначенная позицией 300 блок-схема, иллюстрирующая шаги программы, предписывающей схеме 200 обработки идентифицировать части фрагментированного материала среди принятых пиксельных данных. Шаги в целом представляют программы, которые могут считываться из блока программ 222 в памяти 204 для хранения программ, чтобы предписывать микропроцессору 202 выполнение различных функций, относящихся к идентификации частей фрагментированного материала. Программа в абсолютных адресах для реализации каждого шага может быть записана на любом применимом языке программирования, таком как, например, С, С++, С#, Java и/или язык ассемблера.
На шаге 302 микропроцессору предписывается 202 принять от датчика 102 изображений пиксельные данные, представляющие захваченное изображение в поле 114 зрения датчика изображений. В проиллюстрированном на фиг. 2 варианте осуществления датчик 102 изображений связан интерфейсом 242 порта 208 ввода-вывода проводным соединением, таким как USB или соединение стандарта IEEE 1394 для приема пиксельных данных. В других вариантах осуществления датчик 102 изображений может находиться на удалении от схемы 200 обработки, и пиксельные данные могут передаваться схеме 200 обработки посредством беспроводного интерфейса 240 или по сети 256 связи посредством связного интерфейса 250.
е
ƒ
t
е
ƒ
i
На шаге 304 микропроцессору 202 предписывается выбрать первый пиксель для обработки из множества пикселей. Затем на шаге 306 микропроцессору предписывается 202 создать выходное представление классификации пикселей для выбранного пикселя. Как показано на фиг. 1, выходное представление классификации пикселей указывает, находится ли пиксель на краю 110 части фрагментированного материала, изнутри от края (т.е. в положении 112 части 104 фрагментированного материала) или в промежутке между частями фрагментированного материала. Пространства между частями фрагментированного материала обычно представляют собой пустоты 108 или заполнены мелко фрагментированным материалом (мелкими частицами) 106. В одном из вариантов осуществления выходное представление классификации пикселей может отображаться в пересчете на вероятность для каждой из возможных классификаций, например, вероятность р того, что пиксель находится на краю, вероятность p того, что пиксель находится в части фрагментированного материала изнутри от края, и вероятность p того, что пиксель находится в промежуточном пространстве между фрагментами, при этом p+p+P=1.
е
ƒ
i
Может быть предусмотрена обработка выходного представления классификации пикселей, создаваемых сверточной нейронной сетью, несколькими слоями сети. Например, сверточная нейронная сеть может содержать сверточный слой, который свертывает входную величину каждого пикселя с помощью фильтра или ядра. Ядро отображает входные величины множества пикселей, окружающих выбранный пиксель, с целью создания выходных данных сверточного слоя. Также может быть предусмотрен слой подвыборки для обработки выходных данных сверточного слоя с целью снижения чувствительности выходных данных к небольшим изменениям во входных величин путем сжатия объема информации в выходных данных сверточного слоя. В некоторых вариантах осуществления может быть предусмотрен дополнительный полносвязный слой, который связывает все выходные представления слоя подвыборки с выходным слоем классификации пикселей, который обеспечивает выходные значения р, p, и p, классификации пикселей.
В прошлом для классификации каждого пикселя путем обеспечения локальной области или участка вокруг пикселя в качестве входа использовались окна передачи переменной длительности. Тем не менее, участки пикселей имеют большую зону перекрытия, что приводит к избыточным вычислениям и снижению скорости обработки.
Использование сверточной нейронной сети со слоями подвыборки и пространственно-регулярно разреженными ядрами исключает множество избыточных вычислений. Во время обучения сети может достигаться повышение скорости обработки до 1500 раз, результатом чего является более тщательное обучение. Улучшенное обучение также обеспечивает более эффективное и избирательное обучение сети фрагментации для использования в полевых условиях при анализе реальных фрагментированных материалов, поскольку сеть способна более эффективно обрабатывать больше вводимой информации.
ij
ij
Выходное представление классификации пикселей, созданное на шаге 306, обеспечивают вероятность того, что пиксель находится на краю части фрагментированного материала, изнутри от края части фрагментированного материала или между частями фрагментированного материала. Слои сверточной нейронной сети имеют множество нейронов, каждый из которых выполняет определенную функцию с принятыми входными данными и создает выходные данные, взвешенные с помощью весовых коэффициентов w. Весовые коэффициенты w определяются во время обучения нейронной сети с использованием множества обучающих изображений. Обучающими изображениями обычно являются реальные изображения фрагментированных материалов, которые были оценены с целью идентификации частей фрагментированного материала. В некоторых вариантах осуществления оценка вручную осуществляется оператором, который оценивает изображение и маркирует части фрагментированного материала в пределах изображения. Затем изображение сохраняется вместе с информацией, указывающей, что каждый пиксель находится на краю части фрагментированного материала, изнутри от края части фрагментированный материал или между частями фрагментированного материала. Из множества обучающих изображений может компоноваться обучающая последовательность. В целях проверки достоверности могут быть использоваться дополнительные маркированные изображения для определения эффективности сверточной нейронной сети и обеспечения обратной связи с целью оптимальной конфигурации сети.
Затем способ продолжается на шаге 308, который предписывает микропроцессору 202 определить наличие дополнительных пикселей, которые требуют обработки, и в этом случае на шаге 310 микропроцессору предписывается 202 выбрать следующий пиксель. В некоторых вариантах осуществления пиксели изображения последовательно обрабатываются по строкам и по столбцам с длиной шага в 1 пиксель с тем, чтобы следующим пикселем являлся следующий пиксель в той же строке или чтобы в конце строки находился первый пиксель в следующей строке. В других вариантах осуществления длина шага может составлять 2 пикселя с тем, чтобы для обработки мог выбираться каждый второй пиксель в строке и, возможно, пиксели в каждой второй строке. Также возможны другие длины шага свыше 2 пикселей, которые могут оцениваться во время обучения сверточной нейронной сети с использованием критериев достоверности с целью определения наиболее эффективной длины шага. Так, поэлементная обработка может осуществляться на основании всех пикселей изображения или подмножества пикселей изображения. Затем способ 300 продолжается на шаге 306.
Если на шаге 308 установлено отсутствие дополнительных пикселей, которые требуют обработки, микропроцессор переходит к шагу 312. На шаге 312 микропроцессору предписывается 202 выполнить дополнительную обработку выходного представления классификации пикселей. Выходное представление классификации пикселей обеспечивают поэлементную классификацию пикселей, т.е. устанавливают число пикселей, находящихся на краях частей фрагментированного материала. На шаге 312 дополнительно выполняются операции дальнейшей обработки изображений, которые уточняют выходные данные сверточной нейронной сети с целью установления соответствия групп пикселей на краях конкретным частям фрагментированного материала. Например, могут применяться различные морфологические алгоритмы, такие как расширение, сужение, размыкание, смыкание и/или сегментация по водоразделам. Таким образом, на шаге 312 уточняются выходные данные и идентифицируются части фрагментированного материала в пределах изображения. На дисплее 260 может отображаться индикация в виде цветной карты или в форме результата ситового анализа, при этом с целью распределения материала среди множества бункеров, каждый из которых соответствует определенному размеру ячеек сита, используется расчетная величина проходного диаметра ячеек сита для частей фрагментированного материала.
В одном из вариантов осуществления пиксельные данные, принятые на шаге 302, содержат множество наборов пиксельных данных, захваченных при различающихся условиях и/или с использованием различных параметров захвата изображений. Например, датчик 102 изображений может быть способен воспринимать интенсивность оптического излучения в видимом диапазоне или интенсивность теплового излучения в инфракрасном диапазоне. В оптическом диапазоне датчик 102 изображений может захватывать полноцветное изображение, образованное несколькими основными цветами (например, красным, зеленым и синим основными цветами). Могут избирательно захватываться изображения в различных других оптических диапазонах с использованием специально приспособленных датчиков изображений. Дополнительно или в качестве альтернативы, датчик 102 изображений может захватывать изображения при различных световых режимах, обеспечиваемых естественным освещением или одним или несколькими источниками света.
В других вариантах осуществления датчик 102 изображений может содержать трехкоординатный датчик для приема множества трехкоординатных положений точек на поверхностях частей 104 фрагментированного материала, а пиксельные данные могут содержать информацию о глубине. Как показано на фиг. 4, в одном из вариантов осуществления датчик 102 изображений может содержать трехкоординатный датчик для приема множества трехкоординатных положений точек на поверхностях частей 104 фрагментированного материала в системе 404 координат. В проиллюстрированном варианте осуществления датчик 102 изображений содержит пару датчиков 400 и 402, разнесенных друг от друга по оси х и совместно действующих как трехкоординатный датчик, обеспечивая двухмерные изображения частей 104 фрагментированного материала. Двухмерные изображения, создаваемые соответствующими датчиками 400 и 402, могут обрабатываться с целью обеспечения информации о глубине для определения диспаратности между общими точками на двухмерных изображениях фрагментированного материала 100. В других вариантах осуществления, для создания информации о глубине могут использоваться последовательные двухмерные изображения, захватываемые одним датчиком в различных главных точках.
Одним из примеров трехкоординатного датчика изображений является стереокамера Bumblebee2 производства компании Point Grey Research Inc. (Ричмонд, Британская Колумбия, Канада) которая имеет два 1/3-дюймовых датчика изображений на приборах с зарядовой связью (т.е. датчики 400 и 402 изображений), способных создавать изображения с разрешающей способностью 1024×768 пикселей.
В других вариантах осуществления датчик 102 изображений может содержать диапазонную камеру, такую как камера времени пролета, которая обеспечивает данные трехкоординатных положений точек. В качестве альтернативы, для обеспечения данных трехкоординатных положений точек может использоваться диапазонный лазер, или на фрагментированный материал 100 может проецироваться картина структурированного света и использоваться для получения информации о глубине на основании деформации структурированного света.
На фиг. 5 более подробно показан шаг 302 проиллюстрированного на фиг. 3 способа 300 применительно к вариантам осуществления, в которых принимается несколько наборов пиксельных данных. Способ начинается с шага 500, на котором микропроцессору предписывается 202 принять первый набор пиксельных данных. Затем на шаге 502 микропроцессору необязательно предписывается 202 побудить ГП 210 к выполнению предварительной обработки набора пиксельных данных в зависимости от характера набора пиксельных данных. Например, когда набором пиксельных данных является карта глубин, полученная с использованием трехкоординатного датчика, пиксельные данные могут обрабатываться с использованием улучшающего контрастность алгоритма, такого как контрастно-ограниченное адаптивное выравнивание гистограммы (от английского - contrast limited adaptive histogram equalization или CLAHE). К картам глубин или другим наборам пиксельных данных необязательно могут применяться различные другие алгоритмы предварительной обработки, такие как алгоритм нормализации. В одном из вариантов осуществления может генерироваться набор пиксельных данных со значениями пикселей, которые представляют расстояние между каждым пикселем и ближайшим к пикселю краем. Пиксели на большем удалении от краев части фрагментированного материала с большей вероятностью находятся во фрагментированной части и могут обеспечивать полезные входные данные для конфигурирования сети.
Затем на шаге 504 микропроцессору 202 предписывается побудить ГП 210 к сохранению набора пиксельных данных в памяти 212 пикселей. В проиллюстрированном на фиг. 2 варианте осуществления порт 208 ввода-вывода принимает пиксельные данные, которые затем необязательно предварительно обрабатываются ГП и записываются непосредственно в память 212 пикселей. Затем на шаге 506 микропроцессору 202 предписывается 202 определить, должны ли еще быть приняты дополнительные наборы данных, и в этом случае микропроцессору предписывается вернуться к шагу 500. Если на шаге 506 приняты все наборы пиксельных данных, выполнение способа продолжается на шаге 304 способа 300, проиллюстрированного на фиг. 3. Обычно число наборов пиксельных данных может выбираться в зависимости от их влияния на выходное представление классификации пикселей и производительности схемы 200 обработки и ГП 210 при обработке пиксельных данных. В одном из вариантов осуществления установлено, что наборы пиксельных данных для каждого основного цвета (красный, зеленый и синий) и карта глубин обеспечивают достаточно чувствительные выходные представления классификации пикселей.
Реализация шагов 304-310 способа 300 дополнительно описана далее со ссылкой на фиг. 6, на которой нейронная сеть схематически обозначена позицией 600. Как показано на фиг. 6, наборы входных пиксельных данных представлены прямоугольниками 602, 604, 606, и 608, при этом каждый из них содержит множество пикселей 610. Наборы 602, 604 и 606 пиксельных данных соответствуют трем основным цветам, т.е. красному, зеленому и синему, при этом каждый пиксель имеет значение, отображающее интенсивность соответствующего цвета в местоположении пикселя. Набором 608 пиксельных данных являются входные данные глубины, при этом каждый пиксель имеет значение, отображающее глубину пикселя по оси z, обозначенной позицией 404 на фиг. 1. В других вариантах осуществления могут быть предусмотрены дополнительные наборы пиксельных, как описано выше. Применительно к нейронной сети каждый пиксель 610 в наборах 602-608 входных пиксельных данных действует как входной нейрон в нейронной сети 600. В одном из вариантов осуществления информации о глубине используется, чтобы определять трехмерные координаты на частях фрагментированного материала с целью определения физического размера фрагментов. Затем размер фрагментов может использоваться для получения результата ситового анализа, как описано выше.
Нейронная сеть 600 также содержит сверточный слой 612, имеющий множество нейронов 614. В проиллюстрированном варианте осуществления пиксель 630 в каждом из наборов 602-608 входных пиксельных данных должен быть классифицирован (т.е. как краевой, внутренний или промежуточный пиксель), при этом классификация производится на основе участка пикселей 632. Хотя в проиллюстрированном варианте осуществления участок имеет размер 11×11 пикселей, его размер может выбираться в соответствии с размерами признаков во входных пиксельных данных. В некоторых вариантах осуществления участок и его размер могут выбираться в соответствии с масштабом фрагментированного материала, окружающего пиксель. Например, при анализе фрагментации реального фрагментированного материала размер участка 632 может выбираться на основе вводимых пользователем данных или информации о глубине пикселей. В качестве альтернативы, размер участка 632 может быть основан на выходном представлении классификации пикселей с использованием расчета исходного размера участка 632. В одном из вариантов осуществления для участка выбирается исходный размер 40x40 пикселей, при этом он может увеличиваться до 80×80 пикселей, когда области изображения имеют вероятность плавных переходов цвета, отображающие более крупные фрагменты. Размер участка также может уменьшаться в случае небольших фрагментов (например, до около 20x20 пикселей).
Каждый нейрон 614 в сверточном слое 612 нейронной сети 600 связан с подмножеством входных нейронов в наборах 602-608 входных пиксельных данных, ограничивая ядро 616 свертки. Ядро 616 свертки в этом варианте осуществления имеет размер 3×3 пикселя и набор из 9 весовых коэффициентов 618, 620, 622 и 624 для каждого набора входных пиксельных данных. Ядро 616 находится по центру последовательных пикселей на участке 632 наборов 602-608 входных пиксельных данных, фактически связывающих соответствующие нейроны 614 в сверточном слое 612 с соответствующими подмножествами входных пикселей. В случае, например, пикселя 630 в наборе 602 входных пиксельных данных набор весовых коэффициентов 618 ядра 616 не учитывает участок 632, и весовые коэффициенты применяются к значениям пикселей с целью получения выходных данных для нейрона в сверточном слое 612, который соответствует входному пикселю 630. Ядро 616 свертки аналогичным образом связывает и создает выходные данные для других соответствующих нейронов 614 в сверточном слое 612. В этом варианте осуществления ядро 616 свертки применяет одинаковые весовые коэффициенты к каждому подмножеству входных пикселей и, соответственно, станет воспринимать одни и те же признаки во входных пикселях после последующего определения весовых коэффициентов во время обучения нейронной сети 600.
В одном из вариантов осуществления обработка пиксель за пикселем может начинаться с шагом 1 или больше. Обычно шаг может выбираться путем проверки достоверности выходного представления классификации пикселей и выбора шага на основании компромисса между временем обработки и получаемой эффективностью анализа фрагментации. Преимуществом одинаковых весовых коэффициентов для ядра 616 свертки является то, что последовательные участки 632 имеют большую зону перекрытия, и результаты сверки могут сохраняться и повторно использоваться для каждого последовательного участка, что тем самым значительно уменьшает количество требуемых вычислений. За счет этого значительно уменьшается время обработки при обучении и впоследствии при оценке реальной фрагментации с использованием обученной сети 600.
В других вариантах осуществления для выполнения свертки может использоваться разреженное ядро. Разреженное ядро конструируется путем помещения строк и столбцов нулевых значений в ядро 616 свертки. Разреженное ядро может иметь единственную строку и столбец нулевых значений между каждым элементом или множество строк и столбцов нулевых значений между элементами. Разреженное ядро имеет преимущества по сравнению обработкой с длиной шага более 1, в особенности, когда обработка выполняется ГП 210, поскольку операции по-прежнему выполняются с последовательными соседними пикселями в наборах входных пиксельных данных. Обработка посредством ГП является высокоэффективной в таких условиях, а обработка шагом более 1 требует пропуска входных пикселей, что значительно снижает эффективность применение обрабатывающей способности ГП.
На фиг. 7 показан более подробно участок изображения фрагментированного материала, обозначенный позицией 700. Прямоугольником 704 на фиг.7 обозначено ядро свертки на центральном пикселе 702. Таким образом, ядро свертки действует как фильтр, который устанавливает выходные данные соответствующего нейрона в сверточном слое 612 на основании центрального пикселя 702 и пикселей вокруг центрального пикселя, которые находятся внутри ядра. В этом случае прямоугольник 704 перекрывает участок потенциального края 706 части фрагментированного материала, а также участки вокруг края, который может находиться в части фрагментированного материала или в промежутке между частями фрагментированного материала.
Как показано на фиг. 6, нейронная сеть 600 также имеет слой 640 подвыборки, содержащий множество нейронов 642 подвыборки. В слое подвыборки объединены выходные данные сверточного слоя 612 с целью сжатия информации и снижения чувствительности нейронной сети 600 к изменениям и искажениям входных величин. В одном из вариантов осуществления применяется процесс выбора максимального значения из соседних элементов путем обнаружения максимального выходного значения в группе выходных данных сверточного слоя 612 и установления максимального выходного значения для выходных данных соответствующего нейрона 642 в слое 640 подвыборки. Например, для выходных данных 644 слоя 640 подвыборки может устанавливаться максимальное выходное значение четырех выходных нейронов 646 сверточного слоя 612. В качестве альтернативы, могут быть реализованы другие методы подвыборки, такие как выбор среднего значения из соседних элементов, когда усредняются выходные данные сверточного слоя 612 с целью получения выходных данных слоя 640 подвыборки. В других вариантах осуществления может применяться выбор стохастического значения из соседних элементов, когда из группы выходных данных сверточного слоя 612 выбираются произвольные выходные данные, чтобы получить выходные данные слоя 640 подвыборки.
е
ƒ
t
е
ƒ
i
Нейронная сеть 600 дополнительно имеет выходной слой 650, который содержит нейрон 652, создающий вероятность р того, что пиксель находится на краю, нейрон 654, создающий вероятность р того, что пиксель находится в части фрагментированного материала изнутри от края, и нейрон 656, создающий вероятность p того, что пиксель находится в промежуточном пространстве между фрагментами. Обычно промежуточное пространство между фрагментами состоит из небольших фрагментов, которые может быть сложным выделять как отдельные фрагменты при ограниченном разрешении камеры. Нейрон 652 имеет значения р для выходных величин 644 каждого из пикселей в слое 640 подвыборки и тем самым обеспечивает картину, отображающую вероятность того, что каждый пиксель находится на краю. Аналогичным образом, каждый из нейронов 654 и 656 имеет соответствующие значения p, и p для выходных величин 644 каждого из пикселей в слое подвыборки и тем самым обеспечивает картину, отображающую вероятность того, что пиксель находится в части фрагментированного материала и в промежуточном пространстве. В одном из вариантов осуществления каждый из нейронов 652, 654 и 656 может быть целиком связан с нейронами 642 в слое 640 подвыборки, что означает, что каждый из нейронов в выходном слое 650 имеет множество входных величин, которые связаны с каждым из нейронов 642.
e
e
ƒ
ƒ
i
i
e
ƒ
i
В одном из вариантов осуществления, к нейронам 652, 654 и 656 может применяться взвешивание с целью получения выходных величин для нейронной сети 600. Пикселям, отнесенным к пикселям на краю части фрагментированного материала, пикселям, отнесенным к пикселям изнутри от края части фрагментированного материала, и пикселям, отнесенным к пикселям в промежутке между частями фрагментированного материала, могут присваиваться различные весовые коэффициенты. В таком случае выходной величиной будет являться wp, wp и wp, при этом весовые коэффициенты w, w и w могут выбираться на основании более высокой вероятности того, что какой-либо пиксель находится изнутри от края части фрагментированного материала. Таким образом, в основу этого взвешивания положено эмпирическое наблюдение того, что фрагментированные материалы, такие как горная порода, обычно имеют больше пикселей, относящихся к породе, чем краевых пикселей и/или промежуточных пикселей.
Вариант осуществления нейронной сети 600, показанный на фиг. 6, является лишь одним из примеров сети, которая может быть сконфигурирована с целью получения выходного представления классификации пикселей в выходном слое 650. Обычно сеть 600 изначально конфигурируется, а затем обучается использованием обучающих изображений, которые были проанализированы и помечены. Например, оператор может помечать области изображений фрагментированных материалов, чтобы указывать, является ли область фрагментированной частью, краем фрагментированной части, пустотой или областью мелких частиц. Затем изображения сохраняются вместе данными метки в качестве меченных обучающих изображений. Желательно иметь достаточное число обучающих изображений, меченных при различных условиях освещения и других условиях, различном масштабе и различных типах фрагментированного материала. Часть меченных обучающих изображений может использоваться для обучения сети, а дополнительная часть может резервироваться для проверки достоверности нейронной сети 600 с целью оценки эффективности обучения. Один из примеров меченного обучающего изображения показан на фиг. 10.
Во время обучения весовым коэффициентам нейронной сети 600 присваивается определенное начальное значение, а обучающие изображения используются для обеспечения наборов входных пиксельных данных 602, 604, 606 и 608. Затем выходные представления классификации пикселей в выходном слое 650 сравниваются с меченными обучающими изображениями, и оценивается функция стоимости, отображающая различие между классификацией выходного слоя и меченной классификацией множества входных величин нейронной сети 600. Далее применяется алгоритм минимизации, такой как пакетный алгоритм градиентного спуска, чтобы определить новые величины для весовых коэффициентов ядро 616 свертки. Эта стадия обычно предусматривает определение градиента функции стоимости с использованием алгоритма обратного распространения ошибок.
Общая эффективность нейронной сети 600 обычно оценивается с использованием меченных изображений, зарезервированных с целью оценки функции стоимости в процессе проверки достоверности. Нейронная сеть 600 может настраиваться в попытке повышения эффективности, такой как, например, увеличение размера ядра 616 с использованием дополнительных наборов пиксельных данных или уменьшение числа наборов пиксельных данных и т.д. После достижения желаемой эффективности весовые коэффициенты сохраняются для использования при анализе фрагментации реальных фрагментированных материалов. В некоторых вариантах осуществления могут использоваться несколько ядер 616 свертки с получением тем самым нескольких выходных величин в сверточном слое 612. Ядра свертки могут различаться размером или весовыми коэффициентами, изначально присвоенными во время обучения.
Рассмотрим фиг. 8, на которой часть изображения фрагментированного материала обозначена позицией 800, а альтернативное ядро свертки представлено как прямоугольник 804 по центру пикселя 802. Часть 700 изображения на фиг. 7 содержит элементы ядра свертки, обозначенного прямоугольником 804 на части 800 изображения, в увеличенном масштабе. Эти изображения иллюстрируют, что идентификация частей фрагментированного материала в пределах изображения неотъемлемо зависит от масштаба, и из различных масштабов на фиг. 7 и на фиг.8, вероятно, будут получены различные классификации. Например, в прямоугольнике 704 на фиг. 7 заключено достаточно информации, чтобы установить, что пиксель 702, вероятно, находится на крае части фрагментированного материала. Однако прямоугольник 804 на фиг. 8 содержит слишком много информации, чтобы установить, находится ли край на пикселе 802. В одном из вариантов осуществления во время обучения обучающие изображений могут приводиться к различным масштабам, например, 0,5х, 1х и 2х, и тем самым могут обеспечиваться дополнительные входные данные для обучения сети 600. Соответственно, нейронная сеть 600 обеспечивает масштабированную выходную величину в выходном слое 650 для каждой масштабированной входной величины и соответствующего набора обучающих изображений.
Впоследствии, при анализе фрагментации реальных фрагментированных материалов может осуществляться аналогичное масштабирование и тем самым увеличение числа наборов входных пиксельных данных, показанных на фиг. 6. В одном из альтернативных вариантов осуществления выходной слой 650 классификации может выводиться в дополнительный полносвязный слой (не показанный), который выполняет фракционный анализ, такой как описанный ранее ситовый анализ. Множество выходных нейронов, по одному на каждую градацию ситового анализа может связано с нейронами 652, 654 и 656 выходного слоя 650. В этом альтернативном варианте осуществления нейронная сеть 600 обучается с использованием обучающих изображений, которые были помечены с учетом градаций просеивания, за счет чего сеть непосредственно обеспечивает результат фракционного анализа в дополнительном выходном слое.
е
ƒ
i
На фиг. проиллюстрирован обозначенный позицией 900 один из примеров выходного представления классификации пикселей в выходном слое 650. На фиг. 10 проиллюстрирован обозначенный позицией 1000 один из примеров меченного обучающего изображения, используемого для обучения нейронной сети 600. Выходное представление 900 и обучающее изображение 1000 показаны в единственном масштабе, но на практике каждому масштабу будет соответствовать определенное выходное представление 900. Как показано на фиг.10, обучающее изображение 1000 имеет очень четко выраженные краевые пиксели 1002, которые обозначены темными линиями, находящиеся изнутри от краев пиксели 904, которые заштрихованы светло-серым цветом, и мелкие частицы или пустоты 906, которые заштрихованы темно-серым цветом. Выходное представление 900 показано на фиг.9 как изображение фрагментированного материала 100, на котором обнаруженные краевые пиксели 902, пикселей 904, находящиеся изнутри от краев, и мелкие частицы или пустоты 906 заштрихованы аналогичным образом с целью создания выходного представления 900. На выходном представлении 900 краевые пиксели 902 выражены менее четко и не смыкаются вокруг частей фрагментированного материала как на обучающем изображении 1000. Это объясняется тем, что каждый пиксель на выходном представлении заштрихован на основании выходных вероятностей р, р, и p, в результате чего пиксель с высокой вероятностью нахождения на крае, заштрихован более темным цветом, а пиксели во фрагментированных частях имеют низкую вероятность нахождения на крае и заштрихованы более светлым цветом. Хотя тем самым классификации пикселей, получаемая в выходном слое 650, обеспечивает исходное прогнозирование фрагментации, фактическая идентификация частей фрагментированного материала на выходном представлении 900 остается сложной. Желательно выходное представление, более близкое к обучающему изображению 1000.
Как показано на фиг. 3, выходное представление 900 выходного слоя 650 классификации пикселей дополнительно обрабатывается на шаге 312 с целью сопоставления обнаруженных краевых пикселей с частями фрагментированного материала. На фиг. 11 более подробно показан шаг 312 способа 300. Как показано на фиг. 11, способ начинается с шага 1100, на котором микропроцессору 202 предписывается объединить масштабированные изображения с целью создания объединенного выходного представления классификации пикселей на основании множества масштабированных входных величин. Каждое масштабированное выходное представление обеспечивает различную степень детализации, которая отображается на объединенном выходном представлении классификации пикселей.
На шаге 1102 микропроцессору 202 предписывается побудить ГП 210 к выполнению функций обработки с целью идентификации областей мелкофрагментированного материала на объединенном выходном представлении классификации пикселей.
На шаге 1104 микропроцессору 202 предписывается инициировать морфологическую обработку объединенного выходного представления классификации пикселей. В одном из вариантов осуществления к выходному представлению классификации пикселей применяется один или несколько морфологических алгоритмов, чтобы сомкнуть краевые участки или определить, следует ли разделить фрагментированный материал на множество частей. Примеры алгоритмов, которые могут применяться, включают задание порога, адаптивное задание порога, сегментация по водоразделам и морфологические операции, такие как сужение, расширение, размыкание, смыкание и т.д.
е
е
ƒ
Алгоритмы сегментации по водоразделам могут быть полезны при смыкании краев вокруг частей фрагментированного материала на объединенном выходном представлении классификации пикселей, когда этом градиенты на изображении анализируются на основании выходного представления классификации пикселей. Пиксели, имеющие большую величину р, соответствуют гребням водораздела, а пиксели, имеющие малую величину р и большую величину p, соответствуют водосборным бассейнам. Из техники известны различные разновидности алгоритма сегментации по водоразделам.
В качестве альтернативы или дополнительно, может использоваться алгоритм сужения с целью удаления внешних пикселей из части фрагментированного материала, имеющей сужающийся участок, соединенный с более широкими участками. После сужения части фрагментированного материала могут разделяться на две или более частей, если сужающийся участок исключен путем сужения. За сужением может следовать соответствующее расширение, в результате которого части фрагментированного материала снова приобретут преимущественно свои первоначальные размеры, а сужающийся участок останется исключенным из изображения.
В одном из вариантов осуществления результат, полученный на шаге 1104, может использоваться на шаге 1102 обнаружения области мелких частиц. Последующая обработка и морфологические операции могут помогать при обнаружении границ области мелких частиц.
Затем способ продолжается на шаге 1106, на котором микропроцессору 202 предписывается объединить области мелких частиц, обнаруженные на шаге 1102, и сомкнутые края, обнаруженные на шаге 1104, чтобы получить изображение, на котором идентифицированы части фрагментированного материала.
Нейронная сеть 600, показанная на фиг. 6, является одним из примеров сверточной нейронной сети, которая может быть реализована показанной на фиг. 2 в схеме 200 обработки с целью идентификации частей фрагментированного материала среди принимаемых пиксельных данных. На фиг. 12 показан один из вариантов осуществления каскадной сверточной нейронной сети, реализованной в показанной на фиг. 2 схеме 200 обработки и обозначенной в целом позицией 1200. Каскадная сеть 1200 содержит первую сверточную нейронную сеть 1204 и вторую сверточную нейронную сеть 1206. На шаге 1208 принимается захваченное изображение 1202 фрагментированного материала 100 в поле 114 зрения датчика изображений и обрабатывается с использованием алгоритма, такого как контрастно-ограниченное адаптивное выравнивание гистограммы (CLAHE) или другого описанного выше алгоритма увеличения контрастности захваченного изображения. За этим следует шаг 1210 масштабирования изображения, которое может выбираться в соответствии с масштабом фрагментированного материала в пределах изображения с целью получения масштабированного представления входного изображения. Масштабированное представление входного изображения может содержать несколько наборов входных пиксельных данных, включая, например, интенсивность оптического излучения, интенсивность теплового излучения, интенсивности, соответствующей различным основным цветам, интенсивности при множестве различных условий освещения, интенсивности для каждого из множества диапазонов электромагнитных волн, информацию о глубине пикселей и расстоянием между каждым пикселем и ближайшим краем.
е1
ƒ1
i1
e1
ƒ1
i1
e
ƒ
i
Затем масштабированное представление входного изображения передается первой сверточной нейронной сети 1204, которая может действовать в целом, как описано выше применительно к нейронной сети 600, создавая исходные выходные представления 1212 классификации пикселей. Исходные выходные представления 1212 классификации пикселей содержат диаграмму 1214 вероятностей р того, что пиксель находится на краю, диаграмму 1216 вероятностей p того, что пиксель находится в части фрагментированного материала изнутри от края, и диаграмму 1218 вероятностей p того, что пиксель находится в промежуточном пространстве между фрагментами. Таким образом, выходные величины p, p, и p в целом соответствуют выходным величинам p, p, p на фиг. 6.
e1
ƒ1
i1
Выходные величины p, р и p первой сверточной нейронной сети 1204 принимаются как входные величины во второй сверточной нейронной сети 1206. Изображение с увеличенной контрастностью, полученное на шаге 1208, также дополнительно обрабатывается на шаге 1222 и передается второй сверточной нейронной сети 1206 в качестве дополнительного представления 1222 входного изображения. В одном из вариантов осуществления обработка на шаге 1220 может предусматривать преобразование информации о насыщенности цвета пикселей захваченного изображения 1202 в данные полутоновой шкалы с целью получения дополнительного представления 1222 входного изображения.
е2
ƒ2
i2
Вторая сверточная нейронная сеть 1206 может быть реализована с использованием ядра свертки, сверточного слоя и одного или нескольких слое подвыборки, как в целом показано на фиг. 6. Вторая сверточная нейронная сеть 1206 создает выходные представления 1224 классификации пикселей, которые содержат диаграмму 1226 вероятностей р того, что пиксель находится на краю, диаграмму 1228 вероятностей р того, что пиксель находится в части фрагментированного материала изнутри от края, и диаграмму 1230 вероятностей p того, что пиксель находится в промежуточном пространстве между фрагментами. Таким образом, вторая сверточная нейронная сеть 1206 использует выходные представления 1212 классификации пикселей в качестве входных данных с целью создания уточненных выходных представлений 1224 классификации пикселей.
е2
ƒ2
i2
e1
i1
В этом варианте осуществления выполняется функция сегментации выходной диаграммы 1226 вероятностей того, что пиксель находится на краю, путем обработки вероятностной диаграммы с целью получения сегментированного выходного представления 1234. Функция сегментации может быть реализована с использованием одного из нескольких морфологических алгоритмов, таких как задание порога, адаптивное задание порога, сегментация по водоразделам и морфологические операции, такие как сужение, расширение, размыкание, смыкание и т.д. В других вариантах осуществления диаграмму 1230 вероятностей того, что пиксель находится в промежуточном пространстве между фрагментами, также необязательно подвергают процессу 1232 сегментации в зависимости от характера реализуемого алгоритма сегментации. Как отмечено выше, вероятности р, р и p в сумме дают единицу для каждого пикселя, и тем самым путем вычитания величин p и р из 1 определяется вероятность для части фрагментированного материала.
В одном из вариантов осуществления первая и вторая сверточные нейронные сети 1204 и 1206 обучаются раздельно. В этом случае меченные изображения предварительно обрабатываются на шаге 1208, масштабируются на шаге 1210 и используются для обучения первой сверточной нейронной сети 1204 с целью получения желаемых выходных данных 1220 и 1214-1218. Как только первая сверточная нейронная сеть 1204 надлежащим образом обучена, меченные изображения обрабатываются посредством первой сети с целью получения на шаге 1212 наборов меченных выходных данных после обучения. Затем меченные выходные данные после обучения используются при втором обучении второй сверточной нейронной сети 1206 с целью получения желаемых выходных данных 1224. В других вариантах осуществления может от начала до конца обучаться вся каскадная нейронная сеть 1200 вплоть до получения выходных представлений 1224 классификации пикселей. Процесс 1232 сегментации обычно является нелинейным и, маловероятно, сказывается на сходимости при обучении первой и второй сверточных нейронных сетей 1204 и 1206.
Таким образом, вторая сверточная нейронная сеть 1206 дополнительно уточняет выходные данные первой сверточной нейронной сети 1204 путем объединения вероятностных диаграмм 1214-1218 с одним или несколькими дополнительными представлениями 1222 входного изображения, такими как полутоновое представление захваченного изображения 1202, карту диспаратности с информацией о глубине, суперпиксельное представление захваченного изображения или другое входное представление. Каскадная сеть 1200 использует первую и вторую обученные сети 1204 и 1206, чтобы генерировать усовершенствованные вероятностные диаграммы и границы краев для представления 1202 реального входного изображения. Первая и вторая сети 1204 и 1206 имеют ограниченную способность изучать сложность обучающих изображений в процессе обучения. Первая сверточная нейронная сеть 1204 обучается созданию глобально оптимизированного решения, а вторая сверточная нейронная сеть 1206 осуществляет тонкую настройку решения. Таким образом, каскадная сеть 1200 обладает эффективностью более глубокой нейронной сети, но с более простой реализацией в виде двух каскадных подсетей.
В другом варианте осуществления шаг 1220 может предусматривать обработку пиксельных данных с целью генерирования суперпиксельного представления данных изображения с увеличенной контрастностью. Алгоритмы суперпиксельного представления группируют пиксели, которые имеют форму пиксельной сетки, связанной с наборами захваченных пиксельных данных, в области, которые имеют форму, в большей степени основанную на элементах захваченного изображения. При обработке методом суперпиксельной сегментации группе смежных пикселей присваивается среднее значение насыщенности с одновременным уменьшением сложности, что может улучшать способность каскадной сети 1200 обучаться во время обучения. На фиг. 13 показан один из примеров обозначенного позицией 1300 представления входного изображения фрагментированных материалов, которое было обработано с использованием алгоритма суперпиксельного представления. Представление 1300 содержит множество областей 1302 супепикселей, каждая из которых образовано множеством пикселей. Суперпиксели имеют тенденцию к чрезмерной сегментации изображения (т.е. каждая часть фрагментированного материала представлена множеством суперпикселей). Тем не менее, преимуществом обработки методом суперпиксельной сегментации является то, что сохраняются края частей фрагментированного материала, что позволяет представлять каждую часть меньшим числом суперпикселей, чем первоначально число пикселей на изображении с увеличенной контрастностью. Преимуществом суперпиксельного представления также является значительное снижение сложности изображения. Например, изображение размером 256×256 имеет 65536 полутоновых пикселей, при этом может быть реализована обработка методом суперпиксельной сегментации с использованием ~4000 суперпикселей для представления того же изображения. Таким образом, при суперпиксельном представлении 1300 множества пикселей группируются с целью представления частей фрагментированного материала с использованием уменьшенного числа суперпикселей по сравнению с число пикселей в наборе пиксельных данных.
В проиллюстрированном на фиг. 12 варианте осуществления использование обработки методом суперпиксельной сегментации на шаге 1220 обеспечивает на шаге 1222 менее сложные данные для ввода во вторую сверточную нейронную сеть 1206, но сохраняющие важные признаки краев. Данные, вводимые на шаге 1222, способны повышать производительность каскадной сети 1200 при обучении и последующей работе. Обработка методом суперпиксельной сегментации также может быть реализована в нейронной сети 600, показанной на фиг. 6.
В качестве альтернативы, в другом варианте осуществления может создаваться суперпиксельное представление для одной или нескольких выходных вероятностных диаграмм 1224, а в процессе 1232 сегментации могут выполняться операции слияния и расщепления суперпиксельного представления. Операции слияния и расщепления могут быть реализованы с использованием классификатора, который обучен с использованием меченных входных изображений определять, следует ли выполнять слияние смежных суперпикселей. Классификатор может обучаться и работать с признаками вероятностной диаграммы, а также другими признаками, которые могут задаваться для пар суперпикселей, такими как: относительный размер, доля длины совместных краев относительно общей длины краев и т.д. Таким образом, процесс 1232 сегментации может включать обработку методом суперпиксельной сегментации. Обработка методом суперпиксельной сегментации описана в документе "SLIC superpixels. Technical report,  Polytechnique  de Lausanne, 2010" за авторством R. Achanta, A. Shaji, K. Smith, A. Lucchi, P. Fua,  который в порядке ссылки включен в настоящую заявку.
На фиг. 14 проиллюстрирован один из примеров меченного обучающего изображения, обозначенного позицией 1400. Обучающее изображение 1400 помечено с целью обнаружения краев 1402 частей 1404 фрагментированного материала. Части 1406, находящиеся снаружи меченных границ края, соответствуют промежуточным пространствам или мелким частицам между частями 1404 фрагментированного материала. Таким образом, путем мечения края 1402 вся замкнутая часть распознается как часть фрагментированного материал (т.е. часть со светлой штриховкой). В одном из альтернативных вариантов осуществления, показанном на фиг. 15, обучающее изображение 1400 дополнительно обрабатывается с целью получения показателя 1500 достоверности для обнаруженной части фрагментированного материала в пределах обнаруженных краев 1402. Обучающее изображение 1500 имеет область 1502, находящуюся вблизи центральной части фрагментированного материала (т.е. по центру части 1404 на фиг. 14) и с высокой степенью достоверности относящуюся к части фрагментированного материала, тогда как область 1504, находящаяся ближе к обнаруженному краю (1402 на фиг. 14), имеет меньшую величину показателя достоверности. Так, показателям достоверности может присваиваться величина, равная 1, в центральной области 1502, которая снижается до нуля вблизи области 1504 согласно линейной или нелинейной функции, такой как сигмоидальная функция. Соответственно, величины показателя достоверности отображают уровень достоверности мечения обучающего изображения 1400.
В качестве более эффективного входного изображения для обучения описанных нейронных сетей может использоваться альтернативное обучающее изображение 1500. При использовании обучающих изображений, вручную меченных оператором, таких как изображение 1400 на фиг. 14, на обучающих изображениях может возникать неопределенность при точном позиционировании края, что делает их менее эффективными при обучения сетей. Соответственно, применение показателя достоверности на меченном обучающем изображении 1500 обеспечивает более эффективное входное изображение для обучения множества нейронных сетей.
Как показано на фиг. 6, процесс подвыборки, реализуемый слоем 640 подвыборки, позволяет нейронной сети 600 пространственно инвариантно определять, присутствует ли какой-либо элемент (такой как край части фрагментированного материала) в пределах какой-либо области изображения. В проиллюстрированном на фиг. 6 варианте осуществления свертка наборов 602-608 входных пиксельных данных с использованием ядра 616 свертки приводит к уменьшению числа нейронов 614 в сверточном слое 612. Слой 640 подвыборки дополнительно уменьшает число нейронов 614 (например, в 2 раза при выборе максимального значения из соседних элементов 2×2). Тем не менее, в процессе понижающей дискретизации в слое 640 подвыборки теряется информация о точном положении обнаруженного элемента. Если бы в нейронную сеть 600 были включены дополнительные сверточные слои и слои подвыборки, потеря информации о положении была бы еще большей.
На фиг. 16 схематически проиллюстрирован один из альтернативных вариантов осуществления нейронной сети 1600, в которой сохраняется информация о положении, и при этом эффективно обнаруживаются краевые элементы во входных пиксельных данных. Нейронная сеть 1600 принимает наборы 1602 входных пиксельных данных, которые в данном примере содержат по 256×256 пикселей в каждом из 4 каналов ввода (т.е., например, красных, зеленых, синих пикселей и информации о глубине или другой информации). Ядро 1604 свертки, имеющее 16 ядер, используется для получения первой свертки 1606, имеющей 254×254×16 нейронов (т.е. 16 каналов по 254×254 пикселей). Небольшая потеря пространственной разрешающей способности в слое 1606 вызвана свертками на границах данных изображения с 3×3 ядрами. Операция подвыборки, такая как выбор максимального значения, создает слой 1608 подвыборки. Подвыборка выполняется для подгрупп размером 2×2 пикселя, в результате чего уменьшается заполнение объема в слое 1608. В этом варианте осуществления выполняется вторая свертка с использованием ядра 1610, следующего за слоем 1608 подвыборки, в результате чего число нейронов в сверточном слое 1612 составляет 125×125×32. Соответственно, заполнение объема информации в сверточном слое 1612 уменьшается более, чем наполовину по сравнению с входными пиксельными данными 1602. Хотя сверточный слой 1612 содержит информацию, идентифицирующую такие элементы, так краевые элементы, обнаруженные во входных пиксельных данных 1602, уменьшенная разрешающая способность означает, что положения этих элементов в пределах изображения определяются менее точно.
В проиллюстрированном на фиг. 12 варианте осуществления за сверточным слоем 1612 следует обращение свертки 2×2 с образованием слоя 1614, содержащего 250×250×16 нейронов. Обращение свертки представляет собой процессы повышающей дискретизации и деконволюции с образованием слоя 1614, содержащего 250×250×16 нейронов. Повышающая дискретизация может выполняться, например, путем повторения выхода каждого нейрона в слое 1612 в последовательных группах по 2×2 нейрона.
Копию выхода первого сверточного слоя 1606 также масштабируют до размера в слое 1616 до размера 250×250×16. Масштабирование обеспечивает конкатенацию 1×1 выходов обращения свертки в слое 1614 с копированными и масштабированными выходами в слое 1616 с образованием конкатенированного слоя 1618 для нейронной сети 1600. Выходное представление 1620 свертки слоя 1618 может использоваться, чтобы генерировать выходные представления 1224 классификации пикселей в каскадной сети 1200 на фиг. 12 или выходных величин в слое 650 нейронной сети 600 на фиг.6. Таким образом, нейронная сеть 1600 имеет два пути. Путь 1606-1612 сжатия в целом аналогичен пути показанной на фиг. 6 сверточной нейронной сети 600, когда при классификации пикселей теряется пространственная разрешающая способность. На пути 1614 и 1618 расширения реализуется обращение свертки и повышающая дискретизация с целью увеличения разрешающей способности выходного представления. Таким образом, процессы подвыборки и повышающей дискретизации влияют на заполнение объема, но не изменяют число каналов. При осуществлении процессов 1606 и 1612 свертки обычно сохраняется пространственная информация, и образуется ряд каналов по числу ядер в соответствующих ядрах 1604 и 1610 свертки. Слой 1614 обращения свертки в два раза уменьшает размер каналов. Соответственно, выходное представление 1620 имеет лишь незначительно уменьшенную пространственную разрешающую способность по сравнению с наборами 1602 входных пиксельных данных.
Датчик 102 изображений и схема 200 обработки, когда они сконфигурированы на реализацию нейронной сети 600, могут использоваться для анализа фрагментации материалов во множестве различных целей. Например, датчик 102 изображений, показанный на фиг. 1, может находиться на портативном анализаторе фрагментации, который содержит схему 200 обработки и отображает результаты анализа фрагментации на дисплее с целью осуществления оценки в условиях эксплуатации. В качестве альтернативы, датчик 102 изображений может поддерживать связь с дистанционной схемой обработки, которая способна обеспечивать результаты анализа фрагментации на основании представленных данных изображений. В других вариантах осуществления датчик 102 изображений может служить для захвата изображения фрагментированного материала, доставляемого землеройным орудием тяжелого оборудования, таким как ковш карьерного экскаватора или погрузчика. Один из примеров карьерного экскаватора с датчиком изображений, расположенным над погрузочным ковшом, показан на фиг. 17. На фиг. 18 показан датчик изображений, находится ниже ковша погрузчика и способен захватывать изображения фрагментированного материала в ковше, когда материал находится в поле зрения датчика изображений. В качестве альтернативы, датчик 102 изображений может служить для захвата изображений фрагментированного материала в кузове грузового автомобиля или на конвейерной ленте, как показано на фиг. 19.
Хотя выше описаны и проиллюстрированы конкретные варианты осуществления, такие варианты осуществления следует считать лишь иллюстрирующими, а не ограничивающими изобретение, охарактеризованное в прилагаемой формуле изобретения.