2

我目前有一个 Python 脚本,它使用 OpenCV 和 PIL 来自动裁剪头像。由于在 Windows 世界中工作的各种原因,我的工作要求我转换为 powershell。

环顾四周,我没有看到任何特定于 powershell 的东西,但我看到了一些 VB/.net 版本。是否可以通过 powershell 来利用它们?

此外,powershell 是否有类似 PIL 的东西(现在枕头)?

4

2 回答 2

2

PowerShellPack中包含一个名为 PSImageTools 的简单图像处理模块,它执行旋转、裁剪和转换格式等基本操作。

您还可以使用内置的 .NET进行图像处理。

例子:

$maxX = 256
$maxY = 256
$b = New-Object -TypeName Drawing.Bitmap($maxX, $maxY)

foreach($x in 0..($maxX-1)) {
    foreach($y in 0..($maxY-1)) {
        [Drawing.Color]$c = '{0},{1},{2}' -f ($x, $y, (255-$x))
        $b.SetPixel($x, $y, $c)
    }
}
$path = 'C:\Temp\gradient.bmp'
$b.Save($path)
Invoke-Item $path 

如果你有一个 VB/.NET 库可以做你想做的事,你可以用 导入它Add-Type -Path C:\Path\To.dll,并以与上面示例类似的方式使用它。

于 2014-03-04T18:30:04.077 回答
-1

有这个: http: //psimagetools.start-automating.com/about%20PSImageTools%20Module/

或者,您可以使用您发现的任何 .net 内容并为其编写 PS cmdlet 包装器。如果您想这样做,请查看 System.Management.Automation 命名空间上的文档。

于 2014-03-04T18:28:25.990 回答