OpenCVSharp4をPowershellで使う基本のみ
依存関係でsystem.memory がバージョン4.5.3 (1.0.0.1?)なのが躓いた。
参考)
schima.hatenablog.com
迷惑堂本舗.
NugetからOpenCvSharp.dllをダウンロード。
依存関係のDLLはエラーメッセージから読み取って、
NugetのDependenciesの項目から各種をダウンロード。
NugetのDependenciesの項目から各種をダウンロード。
add-type -path "c:\00lib\system.runtime.compilerservices.unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll";
add-type -path "c:\00lib\system.memory.4.5.3\lib\netstandard2.0\System.Memory.dll";
add-type -path "c:\00lib\system.valuetuple.4.5.0\lib\net461\System.ValueTuple.dll"
add-type -path "c:\00lib\System.Buffers.4.5.1\lib\net461\System.Buffers.dll";
add-type -path "c:\00lib\system.numerics.vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll";
try
{
add-type -path "c:\00lib\opencvsharp4.4.7.0.20230115\lib\net48\OpenCvSharp.dll";
}
catch [System.Reflection.ReflectionTypeLoadException]
{
Write-Host "Message: $($_.Exception.Message)"
Write-Host "StackTrace: $($_.Exception.StackTrace)"
Write-Host "LoaderExceptions: $($_.Exception.LoaderExceptions)"
}
$size = New-Object OpenCvSharp.Size(240, 240) ;
$img = [OpenCvSharp.Mat]::new($size, [OpenCvSharp.MatType]::CV_8UC3, 1) ;
for ([int]$y = 0; $y -lt $img.Height; $y++)
{
for ([int]$x = 0; $x -lt $img.Width; $x++)
{
$pic = [OpenCvSharp.Vec3b]::new(255,80,3+$x);
$img.Set($x, $y, $pic);
}
}
[OpenCvSharp.Cv2]::NamedWindow("window") ;
[OpenCvSharp.Cv2]::ImShow("window", $img) ;
[OpenCvSharp.Cv2]::WaitKey();
[OpenCvSharp.Cv2]::DestroyWindow("window") ;
0 件のコメント:
コメントを投稿