我目前有一个 Python 脚本,它使用 OpenCV 和 PIL 来自动裁剪头像。由于在 Windows 世界中工作的各种原因,我的工作要求我转换为 powershell。
环顾四周,我没有看到任何特定于 powershell 的东西,但我看到了一些 VB/.net 版本。是否可以通过 powershell 来利用它们?
此外,powershell 是否有类似 PIL 的东西(现在枕头)?
我目前有一个 Python 脚本,它使用 OpenCV 和 PIL 来自动裁剪头像。由于在 Windows 世界中工作的各种原因,我的工作要求我转换为 powershell。
环顾四周,我没有看到任何特定于 powershell 的东西,但我看到了一些 VB/.net 版本。是否可以通过 powershell 来利用它们?
此外,powershell 是否有类似 PIL 的东西(现在枕头)?
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
,并以与上面示例类似的方式使用它。
有这个: http: //psimagetools.start-automating.com/about%20PSImageTools%20Module/
或者,您可以使用您发现的任何 .net 内容并为其编写 PS cmdlet 包装器。如果您想这样做,请查看 System.Management.Automation 命名空间上的文档。