Find-HeapColor
Поиск объекта по нескольким цветам.
Параметры
-Path Изображение, загруженное в память / путь к изображению на диске.
-ListColor Список цветов и их количество необходимое для поиска объекта.
-SizeObject Размер объекта, ширина и высота.
-SizeNoSearch Размер области относительно найденного объекта где не искать.
-Deviation Отклонение в цвете.
-MinColor Минимальное количество цветов, необходимых для идентификации объекта.
-MinPixel Минимальное количество пикселей для поиска объекта.
-MaxPixel Максимальное количество пикселей для поиска объекта.
-Count Количество искомых объектов или 0 - искать все.
Возвращаемое значение
Список хеш-таблиц (Hashtable).
Property Description FirstPixel Первый найденный пиксель. FoundColors Найденные цвета и их количество. LocationAverage Среднее арифметичествое координат. Центр объекта.
Примеры
Сделать скрин экрана, найти папки на рабочем столе и навести на них курсор.
Wake up, Neo, select all
Clear-Host
$ListColor = (
('FEE8A0', 50) # цвет и количество пикселей
)
$img = Get-Image -Screen # скрин всего экрана
# поиск объекта размером 30*30, отклонение в цвете 2
$result = Find-HeapColor -Image $img -ListColor $ListColor -SizeObject 30, 30 -Deviation 2
Write-Host "Найдено объектов: $($result.Count)" -ForegroundColor Cyan
foreach($Item in $result) # цикл для всех найденных объектов
{
Move-Cursor $Item.FirstPixel # навести курсор на каждый объект
sleep -m 500
}
$img.Dispose() # удалить изображениеНайти объект состоящий из нескольких цветов.
Wake up, Neo, select all
Clear-Host
$ListColor = (
('333592', 11),
('AD4B12', 10),
('CB2C4B', 7),
('115E24', 6),
('E7B12E', 5)
)
$img = Get-Image -Screen
$result = Find-HeapColor -Image $img -ListColor $ListColor -SizeObject 40, 40 -Deviation 4 -Count 1
$result
foreach($Item in $result)
{
Move-Cursor $Item.LocationAverage
sleep -m 500
}
$img.Dispose()