Системы и способы для захвата безартефактных изображений

Иллюстрации

Показать все

Изобретение относится к технологиям проверки идентичности. Технический результат - получение безартефактных биометрических изображений глаза. Способ включает в себя получение, посредством первого датчика, первого изображения глаза, в то время как глаз освещен первым осветительным средством, и выделение области, представляющей интерес. При этом первый датчик расположен на фиксированном смещении от первого осветительного средства и второго датчика. Второй датчик обеспечивает получение за предварительно определенный период времени от получения первого изображения второго изображения глаза, в котором выделяют область, представляющую интерес. Процессор изображений выполнен с возможностью определять, включает ли в себя по меньшей мере одно из первого и второго изображений артефакты, возникающие от одного или обоих из первого осветительного средства и очковой оптики, внутри области, представляющей интерес. 3 н. и 33 з.п. ф-лы, 31 ил.

Реферат

СВЯЗАННАЯ ЗАЯВКА

По настоящей заявке испрашивается приоритет согласно предварительной патентной заявке США № 61/525,984, озаглавленной "Capturing Specular Free Images" ("Захват изображений без отражений"), поданной 22 августа 2011 г., полное содержание которой включено в настоящий документ посредством ссылки во всех отношениях.

ОБЛАСТЬ ТЕХНИКИ

Настоящее раскрытие относится к технологиям проверки идентичности и, в частности, к системам и способам для захвата безартефактных изображений.

УРОВЕНЬ ТЕХНИКИ

Способы биометрического распознавания широко распространены и представляют большой интерес в областях безопасности, охраны, подтверждения финансовых операций, аэропортов и офисных зданий. Радужная оболочка, в частности, является лидирующим способом выполнения биометрического распознавания, хотя могут использоваться другие биометрические характеристики, такие как характеристики сетчатки. Сложность захвата биометрических характеристик глаза человека состоит в том, что признаки, которые являются биометрической зоной, представляющей интерес, такие как радужная оболочка, могут быть затемнены или искажены частями очковой оптики, такими как оправа очков и/или нарушения непрерывности линз очковой оптики. Кроме того, зеркальные отражения, возникающие из-за осветительных средств, таких как предназначенные для освещения глаза для биометрического захвата, могут отражаться от солнцезащитного щитка или линз очков и затемнять или искажать захватываемые изображения. Такие осветительные средства, установленные относительно биометрического датчика, иногда могут оказываться в неоптимальной позиции ввиду наклона головы объекта и, как следствие, положения очковой оптики.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

В некоторых аспектах настоящее раскрытие направлено на системы и способы для захвата безартефактных изображений внутри области, представляющей интерес, на глазу объекта, в частности, когда глаз перемещается относительно устройства получения биометрических характеристик. Путем использования различных конфигураций одного или нескольких датчиков и/или одного или нескольких осветительных средств вероятность получения изображений области глаза или ее частей, которые не подвержены влиянию артефактов, может быть увеличена или максимизирована. В то же время эти конфигурации могут уменьшать или минимизировать физический размер или занимаемую площадь соответствующего устройства получения биометрических характеристик, включая максимальные горизонтальные и/или вертикальные размеры устройства получения биометрических характеристик.

В одном аспекте настоящее раскрытие направлено на способ получения безартефактных биометрических изображений глаза в движении относительно датчика и при наличии частично отражающей очковой оптики. Способ может включать в себя получение, посредством первого датчика, первого изображения глаза, в то время как глаз освещен первым осветительным средством. Первое изображение может включать в себя область, представляющую интерес. Первый датчик может быть расположен на фиксированном смещении от первого осветительного средства и второго датчика. Второй датчик может получать, за предварительно определенный период времени от получения первого изображения, второе изображение глаза. Второе изображение может включать в себя область, представляющую интерес. Процессор изображений может определять, включает ли в себя по меньшей мере одно из первого и второго изображений артефакты, возникающие от одного или обоих из первого осветительного средства и очковой оптики, внутри области, представляющей интерес.

В некоторых вариантах осуществления первый датчик получает первое изображение глаза во время освещения первым осветительным средством. Первый датчик может быть смещен по вертикали относительно второго датчика. Второй датчик может получать, одновременно с получением первого изображения, второе изображение глаза, причем второе изображение включает в себя область, представляющую интерес. Первый датчик может получать третье изображение глаза во время освещения вторым осветительным средством. Второе осветительное средство может быть расположено на предварительно определенном расстоянии от первого осветительного средства. Первый датчик может получать, за предварительно определенное время от получения первого изображения, третье изображение глаза во время освещения вторым осветительным средством, причем второе осветительное средство расположено на расстоянии по вертикали от первого осветительного средства. Второй датчик может получать четвертое изображение глаза во время освещения вторым осветительным средством.

В конкретных вариантах осуществления расположение первого и второго датчиков на биометрическом устройстве может быть таким, чтобы оптические оси первого и второго датчиков сходились на по существу номинальном расстоянии D между глазом и датчиками. Биометрическое устройство может наклонять первый и второй датчик на угол тета относительно линии, соединяющей глаз и срединную точку между первым и вторым датчиками, согласно тета = arctg(0,5*S/D), где S - расстояние разноса между первым и вторым датчиками, а D - расстояние от глаза до срединной точки между первым и вторым датчиками.

В некоторых вариантах осуществления процессор изображений может выбирать, на основе определения, по меньшей мере часть области, представляющей интерес, с одного или обоих из первого и второго изображений для использования в биометрической верификации. Процессор изображений может комбинировать выбранную упомянутую по меньшей мере часть области, представляющей интерес, для биометрической верификации. Процессор изображений может определять, включает ли в себя по меньшей мере одно из первого и второго изображений зеркальное отражение от очковой оптики внутри области, представляющей интерес, причем зеркальное отражение возникает от первого осветительного средства. Процессор изображений может определять, включает ли в себя по меньшей мере одно из первого и второго изображений по меньшей мере одно из: препятствия от нелинзовой части очковой оптики, нарушения непрерывности в линзе очковой оптики и искажения от края линзы.

В другом аспекте настоящее раскрытие направлено на систему получения безартефактных биометрических изображений глаза в движении и при наличии частично отражающей очковой оптики. Система может включать в себя первое осветительное средство. Система может включать в себя первый датчик и второй датчик. Первый датчик может получать первое изображение глаза во время освещения первым осветительным средством. Первое изображение может включать в себя область, представляющую интерес. Первый датчик может быть расположен на фиксированном смещении от первого осветительного средства и второго датчика. Второй датчик может получать второе изображение глаза за предварительно определенный период времени от получения первого изображения, причем второе изображение включает в себя область, представляющую интерес. Процессор изображений может определять, включает ли в себя по меньшей мере одно из первого и второго изображений артефакты, возникающие от одного или обоих из первого осветительного средства и очковой оптики, внутри области, представляющей интерес.

В некоторых вариантах осуществления первый датчик может быть смещен по вертикали относительно второго датчика. Второй датчик может получать, одновременно с получением первого изображения, второе изображение глаза. Первый датчик может получать третье изображение глаза во время освещения вторым осветительным средством, причем второе осветительное средство расположено на предварительно определенном расстоянии от первого осветительного средства. Система может включать в себя второе осветительное средство. Первый датчик может получать, за предварительно определенное время от получения первого изображения, третье изображение глаза во время освещения вторым осветительным средством. Второе осветительное средство может быть расположено на расстоянии по вертикали от первого осветительного средства. Второй датчик получает четвертое изображение глаза во время освещения вторым осветительным средством.

В конкретных вариантах осуществления первый и второй датчики могут быть расположены так, чтобы оптические оси первого и второго датчиков сходились на по существу номинальном расстоянии D между глазом и датчиками. Первый и второй датчики могут быть расположены так, чтобы оптические оси первого и второго датчиков были наклонены на угол тета относительно линии, соединяющей глаз и срединную точку между первым и вторым датчиками, согласно тета =arctg(0,5*S/D), где S - расстояние разноса между первым и вторым датчиками, а D - расстояние от глаза до срединной точки между первым и вторым датчиками.

В некоторых вариантах осуществления процессор изображений выбирает, на основе определения, по меньшей мере часть области, представляющей интерес, с одного или обоих из первого и второго изображений для использования в биометрической верификации. Процессор изображений может комбинировать выбранную упомянутую по меньшей мере часть области, представляющей интерес, для биометрической верификации. Процессор изображений может определять, включает ли в себя по меньшей мере одно из первого и второго изображений зеркальное отражение от очковой оптики внутри области, представляющей интерес, причем зеркальное отражение возникает от первого осветительного средства. Процессор изображений может определять, включает ли в себя по меньшей мере одно из первого и второго изображений по меньшей мере одно из: препятствия от нелинзовой части очковой оптики, нарушения непрерывности в линзе очковой оптики и искажения от края линзы.

В еще одном аспекте настоящее раскрытие направлено на способ получения безартефактных биометрических изображений глаза в движении и при наличии частично отражающей очковой оптики. Способ может включать в себя получение, посредством первого датчика, первого изображения глаза, в то время как глаз находится в первой позиции по отношению к датчику и освещен первым осветительным средством. Первое изображение может включать в себя область, представляющую интерес. Первый датчик может быть расположен на фиксированном смещении от первого осветительного средства. Первый датчик может получать, за предварительно определенное время от получения первого изображения, второе изображение глаза, в то время как глаз находится во второй позиции и освещен первым осветительным средством. Второе изображение может включать в себя область, представляющую интерес. Процессор изображений может определять, включает ли в себя по меньшей мере одно из первого и второго изображений артефакты, возникающие от одного или обоих из первого осветительного средства и очковой оптики, внутри области, представляющей интерес. Процессор изображений может выбирать, на основе определения, по меньшей мере часть области, представляющей интерес, с одного или обоих из первого и второго изображений для использования в биометрической верификации.

В некоторых вариантах осуществления второй датчик получает третье изображение глаза во время освещения первым осветительным средством. Второй датчик может быть смещен по вертикали относительно первого датчика. Второй датчик может получать, за предварительно определенное время от получения третьего изображения, четвертое изображение глаза во время освещения первым осветительным средством. Первый датчик может получать третье изображение глаза во время освещения вторым осветительным средством. Второе осветительное средство может быть расположено на предварительно определенном расстоянии от первого осветительного средства. Первый датчик может получать, за предварительно определенное время от получения первого изображения, третье изображение глаза во время освещения вторым осветительным средством. Второе осветительное средство может быть расположено на расстоянии по вертикали от первого осветительного средства.

В конкретных вариантах осуществления процессор изображений может выбирать, на основе определения, по меньшей мере часть области, представляющей интерес, с одного или обоих из первого и второго изображений для использования в биометрической верификации. Процессор изображений может комбинировать выбранную упомянутую по меньшей мере часть области, представляющей интерес, для биометрической верификации. Процессор изображений может определять, включает ли в себя по меньшей мере одно из первого и второго изображений зеркальное отражение от очковой оптики внутри области, представляющей интерес, причем зеркальное отражение возникает от первого осветительного средства. Процессор изображений может определять, включает ли в себя по меньшей мере одно из первого и второго изображений по меньшей мере одно из: препятствия от нелинзовой части очковой оптики, нарушения непрерывности в линзе очковой оптики и искажения от края линзы.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

Последующие чертежи изображают конкретные иллюстративные варианты осуществления способов и систем, описанных здесь, причем подобные ссылочные позиции указывают подобные элементы. Каждый изображенный вариант осуществления является иллюстрацией этих способов и систем и не является ограничивающим.

Фиг. 1A изображает структурную схему, иллюстрирующую вариант осуществления сетевой среды с клиентской машиной, которая связывается с сервером;

фиг. 1B и 1C изображают структурные схемы, иллюстрирующие варианты осуществления вычислительных машин для применения на практике способов и систем, описанных здесь;

фиг. 2 изображает один вариант осуществления системы, в котором камера (или точка наблюдения) располагается между двумя по существу горизонтальными осветительными средствами;

фиг. 3A изображает один вариант осуществления фронтального вида пользователя с очковой оптикой;

фиг. 3B изображает один вариант осуществления зеркальных отражений от очковой оптики, затемняющих радужную оболочку на полученных изображениях;

фиг. 4 изображает один вариант осуществления системы, содержащей две точки наблюдения в по существу различных вертикальных позициях и два осветительных средства в по существу различных горизонтальных и вертикальных позициях;

фиг. 5 изображает один вариант осуществления зеркальных отражений над радужной оболочкой на изображениях, полученных из верхней точки наблюдения;

фиг. 6 изображает примерный вариант осуществления вида из нижней точки наблюдения с включенным верхним левым осветительным средством;

фиг. 7 изображает один вариант осуществления зеркальных отражений, затемняющих радужную оболочку на изображениях, полученных из верхней точки наблюдения;

фиг. 8 изображает один вариант осуществления зеркальных отражений ниже радужной оболочки на изображениях, полученных из нижней точки наблюдения;

фиг. 9 изображает один вариант осуществления системы, поддерживающий одну точку наблюдения и два осветительных средства, расположенных вертикально относительно точки наблюдения;

фиг. 10 изображает один вариант осуществления системы, содержащей одно осветительное средство и две точки наблюдения, расположенных пространственно относительно осветительного средства;

фиг. 11 изображает один вариант осуществления системы, содержащей одно осветительное средство и две точки наблюдения, расположенных пространственно относительно осветительного средства;

фиг. 12 изображает один вариант осуществления системы, содержащей два осветительных средства и две точки наблюдения, расположенных пространственно относительно первого осветительного средства;

фиг. 13 изображает один вариант осуществления системы, содержащей две камеры и множество раздельных осветительных средств, все из которых находятся в различных вертикальных и горизонтальных позициях;

фиг. 14 изображает один вариант осуществления направления наклона камер в системе, поддерживающей две камеры в различных вертикальных положениях;

фиг. 15 изображает один вариант осуществления направления наклона точек фотографирования в системе, поддерживающей две точки наблюдения в различных горизонтальных положениях;

фиг. 16 изображает один вариант осуществления установки системы, в которой изображения получаются из верхней позиции камеры;

фиг. 17 изображает один вариант осуществления установки системы, в котором изображения получаются из нижней позиции камеры;

фиг. 18 изображает один вариант осуществления бокового вида установки получения изображений;

фиг. 19 изображает один вариант осуществления изображений, захваченных из верхней точки наблюдения и из нижней точки наблюдения;

фиг. 20 изображает один вариант осуществления изображений, полученных с использованием системы с вертикальным разнесением камер;

фиг. 21 изображает один вариант осуществления условий получения изображений, когда пользователь находится дальше от устройства получения биометрических характеристик;

фиг. 22 изображает один вариант осуществления условий получения изображений, когда пользователь находится ближе к устройству получения биометрических характеристик;

фиг. 23 изображает вариант осуществления системы с камерой и осветительным средством и вид сверху пользователя, перемещающегося по направлению к камерам;

фиг. 24 изображает вариант осуществления системы с камерой и осветительным средством и боковой вид приближающегося пользователя;

фиг. 25 изображает конфигурацию, в которой изображения могут быть захвачены из множества горизонтальных и вертикальных точек фотографирования или при множестве позиций пользователя или направлений взгляда;

фиг. 26 и 27 изображают варианты осуществления обработки, которая может выполняться над множеством изображений, полученных при различных позициях камеры, условиях освещения, позициях пользователя и/или позициях взгляда; и

Фиг. 28 изображает один вариант осуществления этапов способа для захвата безартефактных изображений.

ПОДРОБНОЕ ОПИСАНИЕ

Прежде чем рассматривать другие аспекты систем и способов для захвата или создания безартефактных изображений, может быть полезно описание системных компонентов и признаков, подходящих для использования в настоящих системах и способах. Некоторые из этих системных компонентов и признаков могут быть включены в биометрические устройства или системы, такие как модули получения изображений и/или обработки. Фиг. 1A изображает один вариант осуществления вычислительной среды 101, которая включает в себя одну или несколько клиентских машин 102A-102N (в общем называемых здесь "клиентской машиной(-ами) 102"), состоящих в связи с одним или несколькими серверами 106A-106N (в общем называемых здесь "сервером(-ами) 106"). Между клиентской машиной(-ами) 102 и сервером(-ами) 106 установлена сеть.

В одном варианте осуществления вычислительная среда 101 может включать в себя устройство или прибор, установленный между сервером(-ами) 106 и клиентской машиной(-ами) 102. Этот прибор может управлять клиент-серверными соединениями и в некоторых случаях может осуществлять выравнивание нагрузок клиентских соединений среди множества внутренних серверов. Клиентская машина(-ы) 102 может в некоторых вариантах осуществления называться одной клиентской машиной 102 или одной группой клиентских машин 102, в то время как сервер(ы) 106 может называться одним сервером 106 или одной группой серверов 106. В одном варианте осуществления одна клиентская машина 102 связывается с более чем одним сервером 106, в то время как в другом варианте осуществления один сервер 106 связывается с более чем одной клиентской машиной 102. В еще одном варианте осуществления одна клиентская машина 102 связывается с одним сервером 106.

Клиентская машина 102 в некоторых вариантах осуществления может обозначаться любым из следующих терминов: клиентская машина(-ы) 102; клиент(ы); клиентский компьютер(ы); клиентское устройство(-а); клиентское вычислительное устройство(-а); локальная машина; удаленная машина; клиентский узел (узлы); конечная точка(-и); конечный узел (узлы); или вторая машина. Сервер 106 в некоторых вариантах осуществления может обозначаться любым из следующих терминов: сервер(ы), локальная машина; удаленная машина; серверная ферма(-ы), ведущее вычислительное устройство(-а) или первая машина(-ы).

Клиентская машина 102 может в некоторых вариантах осуществления исполнять, оперировать или другим образом обеспечивать приложение, которое может быть любым из следующего: программных средств; программы; исполняемых инструкций; виртуальной машины; гипервизора; веб-обозревателя; сетевого клиента; клиент-серверного приложения; вычислительного клиента тонкого клиента; средства управления ActiveX; Java-приложения; программных средств, относящихся к связи на основе передачи голоса по Интернет-протоколу (VoIP), таких как программный IP-телефон; приложения для передачи потоков видео и/или аудио; приложения для обеспечения связи на основе данных в реальном времени; HTTP-клиента; FTP-клиента; OSCAR-клиента; TELNET-клиента; или любого другого набора исполняемых инструкций. Дополнительные другие варианты осуществления включают в себя клиентское устройство 102, которое отображает выходные данные приложения, генерируемые приложением, удаленно исполняющимся на сервере 106 или другой удаленно расположенной машине. В этих вариантах осуществления клиентское устройство 102 может отображать выходные данные приложения в окне приложения, обозревателе или другом окне выходных данных. В одном варианте осуществления, приложение является настольным, в то время как в других вариантах осуществления приложение является приложением, которое генерирует рабочий стол.

Вычислительная среда 101 может включать в себя более одного сервера 106A-106N так, чтобы серверы 106A-106N логически группировались в серверную ферму 106. Серверная ферма 106 может включать в себя серверы 106, которые географически рассеяны и логически сгруппированы вместе в серверной ферме 106, или серверы 106, которые расположены вблизи друг друга и логически сгруппированы вместе в серверной ферме 106. Географически рассеянные серверы 106A-106N внутри серверной фермы 106 в некоторых вариантах осуществления могут осуществлять связь с использованием WAN, MAN или LAN, где различные географические области могут характеризоваться как: различные континенты; различные области континента; различные страны; различные штаты; различные города; различные территории учебных заведений; различные комнаты; или любая комбинация предыдущих географических местоположений. В некоторых вариантах осуществления серверной фермой 106 может осуществляться управление как единой сущностью, в то время как в других вариантах осуществления серверная ферма 106 может включать в себя множество серверных ферм 106.

В некоторых вариантах осуществления серверная ферма 106 может включать в себя серверы 106, которые исполняют по существу подобный тип платформы операционной системы (например, Windows NT, выпущенной Microsoft Corp. в Редмонде, штат Вашингтон, UNIX, Linux или Snow Leopard). В других вариантах осуществления серверная ферма 106 может включать в себя первую группу серверов 106, которые исполняют первый тип платформы операционной системы, и вторую группу серверов 106, которые исполняют второй тип платформы операционной системы. Серверная ферма 106 в других вариантах осуществления может включать в себя серверы 106, которые исполняют различные типы платформ операционных систем.

Сервер 106 в некоторых вариантах осуществления может быть сервером любого типа. В других вариантах осуществления сервер 106 может быть сервером любого из следующих типов: файловый сервер; сервер приложений; веб-сервер; сервер-посредник; прибор; сетевой прибор; шлюз; шлюз приложений; шлюзовый сервер; сервер виртуализации; сервер развертывания; SSL-VPN-сервер; брандмауэр; веб-сервер; сервер приложений или главный сервер приложений; сервер 106, исполняющий активную директорию; или сервер 106, исполняющий программу ускорения приложений, которая обеспечивает функциональные возможности брандмауэра, функциональные возможности приложения или функциональные возможности выравнивания нагрузки. В некоторых вариантах осуществления сервером 106 может быть RADIUS-сервер, который включает в себя пользовательскую услугу удаленной аутентификации по телефонной линии. Некоторые варианты осуществления включают в себя первый сервер 106A, который принимает запросы от клиентской машины 102, перенаправляет запрос к второму серверу 106B и отвечает на запрос, генерируемый клиентской машиной 102, посредством ответа от второго сервера 106B. Первый сервер 106A может получать перечень приложений, доступных клиентской машине 102, а также адресную информацию, ассоциированную с сервером 106 приложений, размещающим приложение, идентифицированное внутри перечня приложений. Первый сервер 106A может затем представлять ответ на запрос клиента посредством веб-интерфейса и осуществлять связь непосредственно с клиентом 102 для обеспечения клиента 102 доступом к идентифицированному приложению.

Клиентскими машинами 102 в некоторых вариантах осуществления могут быть клиентские узлы, которые требуют доступа к ресурсам, обеспеченным сервером 106. В других вариантах осуществления сервер 106 может обеспечивать клиентов 102 или клиентские узлы доступом к размещаемым ресурсам. Сервер 106 в некоторых вариантах осуществления функционирует как главный узел так, чтобы он связывался с одним или несколькими клиентами 102 или серверами 106. В некоторых вариантах осуществления главный узел может определять и обеспечивать адресную информацию, ассоциированную с сервером 106, размещающим запрошенное приложение, одному или нескольким клиентам 102 или серверам 106. В дополнительных других вариантах осуществления главным узлом может быть серверная ферма 106, клиент 102, совокупность клиентских узлов 102 или прибор.

Один или несколько клиентов 102 и/или один или несколько серверов 106 могут передавать данные через сеть 104, установленную между машинами и приборами внутри вычислительной среды 101. Сеть 104 может содержать одну или несколько подсетей и может быть установлена между любой комбинацией клиентов 102, серверов 106, вычислительных машин и приборов, включаемых в вычислительную среду 101. В некоторых вариантах осуществления сетью 104 может быть: локальная сеть (LAN); региональная сеть (MAN); широкомасштабная сеть (WAN); первичная сеть 104, состоящая из множества подсетей 104, находящихся между клиентскими машинами 102 и серверами 106; первичная общедоступная сеть 104 с частной подсетью 104; первичная частная сеть 104 с публичной подсетью 104; или первичная частная сеть 104 с частной подсетью 104. Другие дополнительные варианты осуществления включают в себя сеть 104, которая может быть сетью любого из следующих типов: сеть с двухточечным соединением; сеть широкого вещания; сеть дальней связи; сеть передачи данных; компьютерная сеть; сеть ATM (режима асинхронной передачи); сеть SONET (синхронной оптической сети); сеть SDH (синхронной цифровой иерархии); беспроводная сеть; проводная сеть; или сеть 104, которая включает в себя беспроводную линию связи, где беспроводной линией связи может быть инфракрасный канал или спутниковая полоса частот. Сетевая топология сети 104 может отличаться в различных вариантах осуществления, возможные сетевые топологии включают в себя: топологию магистральной сети; топологию звездоподобной сети; топологию кольцевой сети; топологию сети на основе регенератора сигналов; или топологию многоуровневой звездоподобной сети. Дополнительные варианты осуществления могут включать в себя сеть 104 сетей мобильных телефонов, которые используют протокол для осуществления связи между мобильными устройствами, где протокол может быть любым из следующих: AMPS; TDMA; CDMA; GSM; GPRS UMTS; 3G; 4G; или любым другим протоколом с возможностью передачи данных между мобильными устройствами.

На фиг. 1B иллюстрируется вариант осуществления вычислительного устройства 100, где клиентская машина 102 и сервер 106, иллюстрируемые на фиг.1A, могут применяться как и/или исполняться на любом варианте осуществления вычислительного устройства 100, иллюстрируемом и описываемом здесь. Вычислительное устройство 100 включает в себя системную шину 150, которая осуществляет связь со следующими компонентами: центральным обрабатывающим блоком 121; основной памятью 122; запоминающим средством 128; средством 123 управления вводом-выводом (I/O); устройствами 124A-124N отображения; устройством 116 установки; и сетевым интерфейсом 118. В одном варианте осуществления запоминающее средство 128 включает в себя: операционную систему, подпрограммы программных средств и клиентский агент 120. Средство 123 I/O-управления в некоторых вариантах осуществления дополнительно соединяется с клавиатурой 126 и указывающим устройством 127. Другие варианты осуществления могут включать в себя средство 123 I/O-управления, соединенное с более чем одним устройством 130A-130N ввода-вывода.

Фиг. 1C иллюстрирует один вариант осуществления вычислительного устройства 100, где клиентская машина 102 и сервер 106, иллюстрируемые на фиг. 1A, могут применяться в качестве и/или исполняться на любом варианте осуществления вычислительного устройства 100, иллюстрируемом и описываемом здесь. Вычислительное устройство 100 включает в себя системную шину 150, которая осуществляет связь со следующими компонентами: мост 170 и первое I/O-устройство 130A. В другом варианте осуществления мост 170 состоит в дополнительной связи с основным центральным обрабатывающим блоком 121, где центральный обрабатывающий блок 121 может дополнительно осуществлять связь с вторым I/O-устройством 130B, основной памятью 122 и кэш-памятью 140. Центральный обрабатывающий блок 121 включает в себя I/O-порты, порт 103 памяти и основной процессор.

Варианты осуществления вычислительной машины 100 могут включать в себя центральный обрабатывающий блок 121, характеризующийся любой из следующих компонентных конфигураций: логические цепи, которые реагируют на и обрабатывают инструкции, извлеченные из основного блока 122 памяти; микропроцессорный блок, такой как: изготовленные Intel Corporation; изготовленные Motorola Corporation; изготовленные Transmeta Corporation в Санта-Кларе, штат Калифорния; RS/6000-процессор, такой как изготовленные International Business Machines; процессор, такой как изготовленные Advanced Micro Devices; или любая другая комбинация логических цепей. Дополнительные другие варианты осуществления центрального обрабатывающего блока 122 могут включать в себя любую комбинацию следующего: микропроцессор, микроконтроллер, центральный обрабатывающий блок с одним обрабатывающим ядром, центральный обрабатывающий блок с двумя обрабатывающими ядрами или центральный обрабатывающий блок с более чем одним обрабатывающим ядром.

Хотя фиг. 1C изображает вычислительное устройство 100, которое включает в себя один центральный обрабатывающий блок 121, в некоторых вариантах осуществления вычислительное устройство 100 может включать в себя один или несколько обрабатывающих блоков 121. В этих вариантах осуществления вычислительное устройство 100 может хранить и исполнять программно-аппаратные средства или другие исполняемые инструкции, которые при исполнении побуждают один или несколько обрабатывающих блоков 121 одновременно исполнять инструкции или одновременно исполнять инструкции над одним блоком данных. В других вариантах осуществления вычислительное устройство 100 может хранить и исполнять программно-аппаратные средства или другие исполняемые инструкции, которые при исполнении побуждают каждый из одного или нескольких обрабатывающих блоков исполнять секцию группы инструкций. Например, каждый обрабатывающий блок 121 может быть инструктирован исполнять часть программы или конкретный модуль внутри программы.

В некоторых вариантах осуществления обрабатывающий блок 121 может включать в себя одно или несколько обрабатывающих ядер. Например, обрабатывающий блок 121 может иметь два ядра, четыре ядра, восемь ядер и т.д. В одном варианте осуществления обрабатывающий блок 121 может содержать одно или несколько параллельных обрабатывающих ядер. Обрабатывающие ядра обрабатывающего блока 121 в некоторых вариантах осуществления могут осуществлять доступ к доступной памяти как к глобальному адресному пространству, или, в других вариантах осуществления, память внутри вычислительного устройства 100 может сегментироваться и назначаться конкретному ядру внутри обрабатывающего блока 121. В одном варианте осуществления каждое из одного или нескольких обрабатывающих ядер или процессоров в вычислительном устройстве 100 может осуществлять доступ к локальной памяти. В дополнительном другом варианте осуществления память внутри вычислительного устройства 100 может разделяться между одним или несколькими процессорами или обрабатывающими ядрами, в то время как к другой памяти может осуществляться доступ от конкретного процессора или поднаборов процессоров. В вариантах осуществления, где вычислительное устройство 100 включает в себя более одного обрабатывающего блока, множество обрабатывающих блоков может быть включено в одну интегральную цепь (IC). Это множество процессоров в некоторых вариантах осуществления может быть взаимосвязано посредством внутренней высокоскоростной шины, которая может называться шиной взаимосоединения элементов.

В вариантах осуществления, где вычислительное устройство 100 включает в себя один или несколько обрабатывающих блоков 121 или обрабатывающий блок 121, включающий в себя одно или несколько обрабатывающих ядер, процессоры могут исполнять одну инструкцию одновременно над множеством блоков данных (SIMD), или, в других вариантах осуществления, могут исполнять множество инструкций одновременно над множество блоков данных (MIMD). В некоторых вариантах осуществления вычислительное устройство 100 может включать в себя любое количество процессоров SIMD и MIMD.

Вычислительное устройство 100 в некоторых вариантах осуществления может включать в себя процессор изображений, графический процессор или графический обрабатывающий блок. Графический обрабатывающий блок может включать в себя любую комбинацию программных средств и аппаратных средств и может дополнительно вводить графические данные и графические инструкции, визуализировать графику из введенных данных и инструкций и выводить визуализированную графику. В некоторых вариантах осуществления графический обрабатывающий блок может включаться в обрабатывающий блок 121. В других вариантах осуществления вычислительное устройство 100 может включать в себя один или несколько обрабатывающих блоков 121, где по меньшей мере один обрабатывающий блок 121 специализирован для обработки и визуализации графики.

Один вариант осуществления вычислительной машины 100 включает в себя центральный обрабатывающий блок 121, который связывается с кэш-памятью 140 через вторичную шину, также известную как внутренняя шина, в то время как другой вариант осуществления вычислительной машины 100 включает в себя центральный обрабатывающий блок 121, который связывается с кэш-памятью посредством системной шины 150. Локальная системная шина 150 в некоторых вариантах осуществления может также быть использована центральным обрабатывающим блоком для связи с I/O-устройством 130A-130N более чем одного типа. В некоторых вариантах осуществления локальная системная шина 150 может быть шиной любого из следующих типов: шина VESA VL; шина ISA; шина EISA; шина микроканальной архитектуры (MCA); шина PCI; шина PCI-X; шина PCI-Express; или NuBus. Другие варианты осуществления вычислительной машины 100 включают в себя I/O-устройство 130A-130N, которое является видеодисплеем 124, который связывается с центральным обрабатывающим блоком 121. Дополнительные другие версии вычислительной машины 100 включают в себя процессор 121, соединенный с I/O-устройством 130A-130N посредством любого из следующих соединений: HyperTransport, RapidIO или InfiniBand. Дополнительные варианты осуществления вычислительной машины 100 включают в себя процессор 121, который связывается с одним I/O-устройством 130A посредством локальной взаимосоединяющей шины и вторым I/O-устройством 130B посредством прямого соединения.

Вычислительное устройство 100 в некоторых вариантах осуществления включае