diff --git a/.github/workflows/macos10.yml b/.github/workflows/macos10.yml index 34fc6376a..759b9f1a0 100644 --- a/.github/workflows/macos10.yml +++ b/.github/workflows/macos10.yml @@ -9,7 +9,7 @@ on: env: DEBIAN_FRONTEND: noninteractive - OPENCV_VERSION: 4.5.1 + OPENCV_VERSION: 4.5.2 jobs: build: @@ -60,7 +60,7 @@ jobs: -DBUILD_opencv_dnn_objdetect=OFF \ -DBUILD_opencv_dpm=OFF \ -DBUILD_opencv_fuzzy=OFF \ - -DBUILD_opencv_gapi=OFF \ + -DBUILD_opencv_gapi=ON \ -DBUILD_opencv_intensity_transform=OFF \ -DBUILD_opencv_mcc=OFF \ -DBUILD_opencv_rapid=OFF \ diff --git a/.github/workflows/ubuntu18.yml b/.github/workflows/ubuntu18.yml index cfeee5fd9..45aa204a0 100644 --- a/.github/workflows/ubuntu18.yml +++ b/.github/workflows/ubuntu18.yml @@ -9,7 +9,7 @@ on: env: DEBIAN_FRONTEND: noninteractive - OPENCV_VERSION: 4.5.1 + OPENCV_VERSION: 4.5.2 jobs: build: @@ -89,7 +89,7 @@ jobs: -D BUILD_opencv_dnn_objdetect=OFF \ -D BUILD_opencv_dpm=OFF \ -D BUILD_opencv_fuzzy=OFF \ - -D BUILD_opencv_gapi=OFF \ + -D BUILD_opencv_gapi=ON \ -D BUILD_opencv_intensity_transform=OFF \ -D BUILD_opencv_mcc=OFF \ -D BUILD_opencv_rapid=OFF \ diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 4079e8ad8..782411d62 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -8,7 +8,7 @@ on: - master env: - OPENCV_VERSION: 4.5.1 + OPENCV_VERSION: 4.5.2 jobs: build: diff --git a/download_opencv_windows.ps1 b/download_opencv_windows.ps1 index d1b4e7cbf..7bbf0c711 100644 --- a/download_opencv_windows.ps1 +++ b/download_opencv_windows.ps1 @@ -1,5 +1,5 @@ -$tag = "4.5.1.20201228" -$version = "451" +$tag = "4.5.2.20210404" +$version = "452" $uriArray =@( "https://github.com/shimat/opencv_files/releases/download/${tag}/opencv${version}_win_x64.zip" "https://github.com/shimat/opencv_files/releases/download/${tag}/opencv${version}_win_x86.zip" diff --git a/nuget/OpenCvSharp4.runtime.uwp.nuspec b/nuget/OpenCvSharp4.runtime.uwp.nuspec index 065795c1f..ecafaa1e3 100644 --- a/nuget/OpenCvSharp4.runtime.uwp.nuspec +++ b/nuget/OpenCvSharp4.runtime.uwp.nuspec @@ -27,11 +27,11 @@ - - - - - - + + + + + + diff --git a/nuget/OpenCvSharp4.runtime.win.nuspec b/nuget/OpenCvSharp4.runtime.win.nuspec index d1985928f..f1383e242 100644 --- a/nuget/OpenCvSharp4.runtime.win.nuspec +++ b/nuget/OpenCvSharp4.runtime.win.nuspec @@ -16,7 +16,6 @@ Image Processing OpenCV Wrapper FFI opencvsharp - @@ -28,8 +27,8 @@ - - + + diff --git a/nuget/OpenCvSharp4.runtime.win.props b/nuget/OpenCvSharp4.runtime.win.props index ffff885c8..de22c894a 100644 --- a/nuget/OpenCvSharp4.runtime.win.props +++ b/nuget/OpenCvSharp4.runtime.win.props @@ -7,8 +7,8 @@ dll\x86\OpenCvSharpExtern.dll PreserveNewest - - dll\x86\opencv_videoio_ffmpeg451.dll + + dll\x86\opencv_videoio_ffmpeg452.dll PreserveNewest @@ -17,8 +17,8 @@ dll\x64\OpenCvSharpExtern.dll PreserveNewest - - dll\x64\opencv_videoio_ffmpeg451_64.dll + + dll\x64\opencv_videoio_ffmpeg452_64.dll PreserveNewest diff --git a/samples b/samples index 7139d74d6..02f305d28 160000 --- a/samples +++ b/samples @@ -1 +1 @@ -Subproject commit 7139d74d655e9cc25ec70e552a6fc4077a0793a5 +Subproject commit 02f305d28dd57c2eeb8d690580e998e27a1e2c96 diff --git a/src/OpenCvSharp/Modules/imgproc/Enum/ConnectedComponentsAlgorithmsTypes.cs b/src/OpenCvSharp/Modules/imgproc/Enum/ConnectedComponentsAlgorithmsTypes.cs index 008433835..c559c20c3 100644 --- a/src/OpenCvSharp/Modules/imgproc/Enum/ConnectedComponentsAlgorithmsTypes.cs +++ b/src/OpenCvSharp/Modules/imgproc/Enum/ConnectedComponentsAlgorithmsTypes.cs @@ -21,6 +21,26 @@ public enum ConnectedComponentsAlgorithmsTypes /// /// BBDT algorithm for 8-way connectivity, SAUF algorithm for 4-way connectivity /// - GRANA = 1 + GRANA = 1, + + /// + /// Spaghetti @cite Bolelli2019 algorithm for 8-way connectivity, SAUF algorithm for 4-way connectivity. + /// + BOLELLI = 2, + + /// + /// Same as CCL_WU. It is preferable to use the flag with the name of the algorithm (CCL_SAUF) rather than the one with the name of the first author (CCL_WU). + /// + SAUF = 3, + + /// + /// Same as CCL_GRANA. It is preferable to use the flag with the name of the algorithm (CCL_BBDT) rather than the one with the name of the first author (CCL_GRANA). + /// + BBDT = 4, + + /// + /// Same as CCL_BOLELLI. It is preferable to use the flag with the name of the algorithm (CCL_SPAGHETTI) rather than the one with the name of the first author (CCL_BOLELLI). + /// + SPAGHETTI = 5, } } diff --git a/src/OpenCvSharpExtern/OpenCvSharpExtern.vcxproj b/src/OpenCvSharpExtern/OpenCvSharpExtern.vcxproj index 4570cc237..f430fe433 100644 --- a/src/OpenCvSharpExtern/OpenCvSharpExtern.vcxproj +++ b/src/OpenCvSharpExtern/OpenCvSharpExtern.vcxproj @@ -79,14 +79,14 @@ $(SolutionDir)src\$(Configuration)\$(PlatformName)\ src\$(Platform)\$(Configuration)\ false - $(SolutionDir)\opencv_files\opencv451_win_x64\include;$(IncludePath) - $(SolutionDir)\opencv_files\opencv451_win_x64\include;$(IncludePath) - $(SolutionDir)\opencv_files\opencv451_win_x64\x64\vc16\staticlib;$(LibraryPath) - $(SolutionDir)\opencv_files\opencv451_win_x64\x64\vc16\staticlib;$(SolutionDir)\tesseract_files\tesseract_vcpkg\installed\x64-windows-static\lib;$(LibraryPath) - $(SolutionDir)\opencv_files\opencv451_win_x86\include;$(IncludePath) - $(SolutionDir)\opencv_files\opencv451_win_x86\include;$(IncludePath) - $(SolutionDir)\opencv_files\opencv451_win_x86\x86\vc16\staticlib;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib;$(SolutionDir)\tesseract_files\tesseract_vcpkg\installed\x86-windows-static\lib;$(LibraryPath) - $(SolutionDir)\opencv_files\opencv451_win_x86\x86\vc16\staticlib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv452_win_x64\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv452_win_x64\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv452_win_x64\x64\vc16\staticlib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv452_win_x64\x64\vc16\staticlib;$(SolutionDir)\tesseract_files\tesseract_vcpkg\installed\x64-windows-static\lib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv452_win_x86\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv452_win_x86\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv452_win_x86\x86\vc16\staticlib;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib;$(SolutionDir)\tesseract_files\tesseract_vcpkg\installed\x86-windows-static\lib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv452_win_x86\x86\vc16\staticlib;$(LibraryPath) @@ -164,7 +164,7 @@ true - ade.lib;IlmImf.lib;ippicvmt.lib;ippiw.lib;ittnotify.lib;libopenjp2.lib;libjpeg-turbo.lib;libpng.lib;libprotobuf.lib;libtiff.lib;libwebp.lib;opencv_aruco451.lib;opencv_bgsegm451.lib;opencv_bioinspired451.lib;opencv_calib3d451.lib;opencv_ccalib451.lib;opencv_core451.lib;opencv_dnn451.lib;opencv_dnn_superres451.lib;opencv_dnn_objdetect451.lib;opencv_dpm451.lib;opencv_face451.lib;opencv_features2d451.lib;opencv_flann451.lib;opencv_fuzzy451.lib;opencv_hfs451.lib;opencv_highgui451.lib;opencv_imgcodecs451.lib;opencv_imgproc451.lib;opencv_img_hash451.lib;opencv_line_descriptor451.lib;opencv_ml451.lib;opencv_objdetect451.lib;opencv_optflow451.lib;opencv_phase_unwrapping451.lib;opencv_photo451.lib;opencv_plot451.lib;opencv_quality451.lib;opencv_reg451.lib;opencv_rgbd451.lib;opencv_saliency451.lib;opencv_shape451.lib;opencv_stereo451.lib;opencv_stitching451.lib;opencv_structured_light451.lib;opencv_superres451.lib;opencv_surface_matching451.lib;opencv_text451.lib;opencv_tracking451.lib;opencv_video451.lib;opencv_videoio451.lib;opencv_videostab451.lib;opencv_xfeatures2d451.lib;opencv_ximgproc451.lib;opencv_xobjdetect451.lib;opencv_xphoto451.lib;quirc.lib;zlib.lib;ws2_32.lib;tesseract41.lib;leptonica-1.80.0.lib;gif.lib;jpeg.lib;libpng16.lib;libwebpmux.lib;lzma.lib;tiff.lib;tiffxx.lib;turbojpeg.lib;webp.lib;webpdecoder.lib;webpdemux.lib;%(AdditionalDependencies) + IlmImf.lib;ippicvmt.lib;ippiw.lib;ittnotify.lib;libopenjp2.lib;libjpeg-turbo.lib;libpng.lib;libprotobuf.lib;libtiff.lib;libwebp.lib;opencv_aruco452.lib;opencv_bgsegm452.lib;opencv_bioinspired452.lib;opencv_calib3d452.lib;opencv_ccalib452.lib;opencv_core452.lib;opencv_dnn452.lib;opencv_dnn_superres452.lib;opencv_dnn_objdetect452.lib;opencv_dpm452.lib;opencv_face452.lib;opencv_features2d452.lib;opencv_flann452.lib;opencv_fuzzy452.lib;opencv_hfs452.lib;opencv_highgui452.lib;opencv_imgcodecs452.lib;opencv_imgproc452.lib;opencv_img_hash452.lib;opencv_line_descriptor452.lib;opencv_ml452.lib;opencv_objdetect452.lib;opencv_optflow452.lib;opencv_phase_unwrapping452.lib;opencv_photo452.lib;opencv_plot452.lib;opencv_quality452.lib;opencv_reg452.lib;opencv_rgbd452.lib;opencv_saliency452.lib;opencv_shape452.lib;opencv_stereo452.lib;opencv_stitching452.lib;opencv_structured_light452.lib;opencv_superres452.lib;opencv_surface_matching452.lib;opencv_text452.lib;opencv_tracking452.lib;opencv_video452.lib;opencv_videoio452.lib;opencv_videostab452.lib;opencv_xfeatures2d452.lib;opencv_ximgproc452.lib;opencv_xobjdetect452.lib;opencv_xphoto452.lib;quirc.lib;zlib.lib;ws2_32.lib;tesseract41.lib;leptonica-1.80.0.lib;gif.lib;jpeg.lib;libpng16.lib;libwebpmux.lib;lzma.lib;tiff.lib;tiffxx.lib;turbojpeg.lib;webp.lib;webpdecoder.lib;webpdemux.lib;%(AdditionalDependencies) %(IgnoreSpecificDefaultLibraries) true NotSet @@ -179,8 +179,8 @@ copy "$(LocalDebuggerCommand)" "$(SolutionDir)test\OpenCvSharp.Tests\dll\x86\$(TargetFileName)" copy "$(LocalDebuggerCommand)" "$(SolutionDir)test\OpenCvSharp.Tests\$(TargetFileName)" -copy "$(SolutionDir)opencv_files\opencv451_win_x86\x86\vc16\bin\opencv_videoio_ffmpeg451.dll" "$(SolutionDir)test\OpenCvSharp.Tests\dll\x86\opencv_videoio_ffmpeg451.dll" -copy "$(SolutionDir)opencv_files\opencv451_win_x86\x86\vc16\bin\opencv_videoio_ffmpeg451.dll" "$(SolutionDir)test\OpenCvSharp.Tests\opencv_videoio_ffmpeg451.dll" +copy "$(SolutionDir)opencv_files\opencv452_win_x86\x86\vc16\bin\opencv_videoio_ffmpeg452.dll" "$(SolutionDir)test\OpenCvSharp.Tests\dll\x86\opencv_videoio_ffmpeg452.dll" +copy "$(SolutionDir)opencv_files\opencv452_win_x86\x86\vc16\bin\opencv_videoio_ffmpeg452.dll" "$(SolutionDir)test\OpenCvSharp.Tests\opencv_videoio_ffmpeg452.dll" @@ -207,7 +207,7 @@ copy "$(SolutionDir)opencv_files\opencv451_win_x86\x86\vc16\bin\opencv_videoio_f true - ade.lib;IlmImf.lib;ippicvmt.lib;ippiw.lib;ittnotify.lib;libopenjp2.lib;libjpeg-turbo.lib;libpng.lib;libprotobuf.lib;libtiff.lib;libwebp.lib;opencv_aruco451.lib;opencv_bgsegm451.lib;opencv_bioinspired451.lib;opencv_calib3d451.lib;opencv_ccalib451.lib;opencv_core451.lib;opencv_dnn451.lib;opencv_dnn_superres451.lib;opencv_dnn_objdetect451.lib;opencv_dpm451.lib;opencv_face451.lib;opencv_features2d451.lib;opencv_flann451.lib;opencv_fuzzy451.lib;opencv_hfs451.lib;opencv_highgui451.lib;opencv_imgcodecs451.lib;opencv_imgproc451.lib;opencv_img_hash451.lib;opencv_line_descriptor451.lib;opencv_ml451.lib;opencv_objdetect451.lib;opencv_optflow451.lib;opencv_phase_unwrapping451.lib;opencv_photo451.lib;opencv_plot451.lib;opencv_quality451.lib;opencv_reg451.lib;opencv_rgbd451.lib;opencv_saliency451.lib;opencv_shape451.lib;opencv_stereo451.lib;opencv_stitching451.lib;opencv_structured_light451.lib;opencv_superres451.lib;opencv_surface_matching451.lib;opencv_text451.lib;opencv_tracking451.lib;opencv_video451.lib;opencv_videoio451.lib;opencv_videostab451.lib;opencv_xfeatures2d451.lib;opencv_ximgproc451.lib;opencv_xobjdetect451.lib;opencv_xphoto451.lib;quirc.lib;zlib.lib;ws2_32.lib;tesseract41.lib;leptonica-1.80.0.lib;gif.lib;jpeg.lib;libpng16.lib;libwebpmux.lib;lzma.lib;tiff.lib;tiffxx.lib;turbojpeg.lib;webp.lib;webpdecoder.lib;webpdemux.lib;%(AdditionalDependencies) + IlmImf.lib;ippicvmt.lib;ippiw.lib;ittnotify.lib;libopenjp2.lib;libjpeg-turbo.lib;libpng.lib;libprotobuf.lib;libtiff.lib;libwebp.lib;opencv_aruco452.lib;opencv_bgsegm452.lib;opencv_bioinspired452.lib;opencv_calib3d452.lib;opencv_ccalib452.lib;opencv_core452.lib;opencv_dnn452.lib;opencv_dnn_superres452.lib;opencv_dnn_objdetect452.lib;opencv_dpm452.lib;opencv_face452.lib;opencv_features2d452.lib;opencv_flann452.lib;opencv_fuzzy452.lib;opencv_hfs452.lib;opencv_highgui452.lib;opencv_imgcodecs452.lib;opencv_imgproc452.lib;opencv_img_hash452.lib;opencv_line_descriptor452.lib;opencv_ml452.lib;opencv_objdetect452.lib;opencv_optflow452.lib;opencv_phase_unwrapping452.lib;opencv_photo452.lib;opencv_plot452.lib;opencv_quality452.lib;opencv_reg452.lib;opencv_rgbd452.lib;opencv_saliency452.lib;opencv_shape452.lib;opencv_stereo452.lib;opencv_stitching452.lib;opencv_structured_light452.lib;opencv_superres452.lib;opencv_surface_matching452.lib;opencv_text452.lib;opencv_tracking452.lib;opencv_video452.lib;opencv_videoio452.lib;opencv_videostab452.lib;opencv_xfeatures2d452.lib;opencv_ximgproc452.lib;opencv_xobjdetect452.lib;opencv_xphoto452.lib;quirc.lib;zlib.lib;ws2_32.lib;tesseract41.lib;leptonica-1.80.0.lib;gif.lib;jpeg.lib;libpng16.lib;libwebpmux.lib;lzma.lib;tiff.lib;tiffxx.lib;turbojpeg.lib;webp.lib;webpdecoder.lib;webpdemux.lib;%(AdditionalDependencies) %(IgnoreSpecificDefaultLibraries) true NotSet @@ -222,8 +222,8 @@ copy "$(SolutionDir)opencv_files\opencv451_win_x86\x86\vc16\bin\opencv_videoio_f copy "$(LocalDebuggerCommand)" "$(SolutionDir)test\OpenCvSharp.Tests\dll\x64\$(TargetFileName)" copy "$(LocalDebuggerCommand)" "$(SolutionDir)test\OpenCvSharp.Tests\$(TargetFileName)" -copy "$(SolutionDir)opencv_files\opencv451_win_x64\x64\vc16\bin\opencv_videoio_ffmpeg451_64.dll" "$(SolutionDir)test\OpenCvSharp.Tests\opencv_videoio_ffmpeg451_64.dll" -copy "$(SolutionDir)opencv_files\opencv451_win_x64\x64\vc16\bin\opencv_videoio_ffmpeg451_64.dll" "$(SolutionDir)test\OpenCvSharp.Tests\dll\x64\opencv_videoio_ffmpeg451_64.dll" +copy "$(SolutionDir)opencv_files\opencv452_win_x64\x64\vc16\bin\opencv_videoio_ffmpeg452_64.dll" "$(SolutionDir)test\OpenCvSharp.Tests\opencv_videoio_ffmpeg452_64.dll" +copy "$(SolutionDir)opencv_files\opencv452_win_x64\x64\vc16\bin\opencv_videoio_ffmpeg452_64.dll" "$(SolutionDir)test\OpenCvSharp.Tests\dll\x64\opencv_videoio_ffmpeg452_64.dll" diff --git a/src/uwpOpenCvSharpExtern/uwpOpenCvSharpExtern.vcxproj b/src/uwpOpenCvSharpExtern/uwpOpenCvSharpExtern.vcxproj index c93490d60..2c4f922af 100644 --- a/src/uwpOpenCvSharpExtern/uwpOpenCvSharpExtern.vcxproj +++ b/src/uwpOpenCvSharpExtern/uwpOpenCvSharpExtern.vcxproj @@ -103,42 +103,42 @@ $(SolutionDir)src\$(Configuration)\$(MSBuildProjectName)\$(Platform)\ $(Platform)\$(Configuration)\ OpenCvSharpExtern - $(SolutionDir)\opencv_files\opencv451_uwp_x86\include;$(IncludePath) - $(SolutionDir)\opencv_files\opencv451_uwp_x86\x86\vc16\lib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv452_uwp_x86\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv452_uwp_x86\x86\vc16\lib;$(LibraryPath) false $(SolutionDir)src\$(Configuration)\$(MSBuildProjectName)\$(Platform)\ $(Platform)\$(Configuration)\ OpenCvSharpExtern - $(SolutionDir)\opencv_files\opencv451_uwp_x86\include;$(IncludePath) - $(SolutionDir)\opencv_files\opencv451_uwp_x86\x86\vc16\lib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv452_uwp_x86\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv452_uwp_x86\x86\vc16\lib;$(LibraryPath) false OpenCvSharpExtern - $(SolutionDir)\opencv_files\opencv451_uwp_ARM\include;$(IncludePath) - $(SolutionDir)\opencv_files\opencv451_uwp_ARM\x86\vc16\lib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv452_uwp_ARM\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv452_uwp_ARM\x86\vc16\lib;$(LibraryPath) false OpenCvSharpExtern - $(SolutionDir)\opencv_files\opencv451_uwp_ARM\include;$(IncludePath) - $(SolutionDir)\opencv_files\opencv451_uwp_ARM\x86\vc16\lib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv452_uwp_ARM\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv452_uwp_ARM\x86\vc16\lib;$(LibraryPath) $(SolutionDir)src\$(Configuration)\$(MSBuildProjectName)\$(Platform)\ false OpenCvSharpExtern - $(SolutionDir)\opencv_files\opencv451_uwp_x64\include;$(IncludePath) - $(SolutionDir)\opencv_files\opencv451_uwp_x64\x64\vc16\lib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv452_uwp_x64\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv452_uwp_x64\x64\vc16\lib;$(LibraryPath) $(SolutionDir)src\$(Configuration)\$(MSBuildProjectName)\$(Platform)\ false OpenCvSharpExtern - $(SolutionDir)\opencv_files\opencv451_uwp_x64\include;$(IncludePath) - $(SolutionDir)\opencv_files\opencv451_uwp_x64\x64\vc16\lib;$(LibraryPath) + $(SolutionDir)\opencv_files\opencv452_uwp_x64\include;$(IncludePath) + $(SolutionDir)\opencv_files\opencv452_uwp_x64\x64\vc16\lib;$(LibraryPath) $(SolutionDir)src\$(Configuration)\$(MSBuildProjectName)\$(Platform)\ @@ -174,7 +174,7 @@ Console false D:\Samples\vcpkg\packages\opencv4_x86-uwp\lib; - opencv_world451.lib;opencv_img_hash451.lib;WindowsApp.lib;%(AdditionalDependencies) + opencv_world452.lib;opencv_img_hash452.lib;WindowsApp.lib;%(AdditionalDependencies) @@ -207,7 +207,7 @@ Console false - opencv_world451.lib;opencv_img_hash451.lib;%(AdditionalDependencies) + opencv_world452.lib;opencv_img_hash452.lib;%(AdditionalDependencies) @@ -240,7 +240,7 @@ Console false - opencv_world451.lib;opencv_img_hash451.lib;WindowsApp.lib;%(AdditionalDependencies) + opencv_world452.lib;opencv_img_hash452.lib;WindowsApp.lib;%(AdditionalDependencies) diff --git a/test/OpenCvSharp.Tests/OpenCvSharp.Tests.csproj b/test/OpenCvSharp.Tests/OpenCvSharp.Tests.csproj index 78e351d51..baea5c9f0 100644 --- a/test/OpenCvSharp.Tests/OpenCvSharp.Tests.csproj +++ b/test/OpenCvSharp.Tests/OpenCvSharp.Tests.csproj @@ -53,7 +53,7 @@ - + diff --git a/tool/OpenCvSharp.ReleaseMaker/OpenCvSharp.ReleaseMaker.csproj b/tool/OpenCvSharp.ReleaseMaker/OpenCvSharp.ReleaseMaker.csproj index c73e0d169..c87ce77f0 100644 --- a/tool/OpenCvSharp.ReleaseMaker/OpenCvSharp.ReleaseMaker.csproj +++ b/tool/OpenCvSharp.ReleaseMaker/OpenCvSharp.ReleaseMaker.csproj @@ -2,7 +2,7 @@ Exe - netcoreapp3.1 + net5 diff --git a/tool/OpenCvSharp.ReleaseMaker/Packer.cs b/tool/OpenCvSharp.ReleaseMaker/Packer.cs index 710c8a182..61af07b84 100644 --- a/tool/OpenCvSharp.ReleaseMaker/Packer.cs +++ b/tool/OpenCvSharp.ReleaseMaker/Packer.cs @@ -44,7 +44,7 @@ public static class Packer @"OpenCvSharp.Extensions\bin\Release\netcoreapp2.1\OpenCvSharp.Extensions.dll", @"OpenCvSharp.Extensions\bin\Release\netcoreapp2.1\OpenCvSharp.Extensions.pdb", }, - ["netcoreapp3.1"] = new[] + ["netcoreapp3.1"] = new[] { // netstandard2.1 @"OpenCvSharp\bin\Release\netstandard2.1\OpenCvSharp.dll", @@ -72,26 +72,14 @@ public static class Packer ["uwp"] = new[] { "x86", "x64", "ARM" }, }; - private static readonly IReadOnlyDictionary uwpNativeDllDirectories = new Dictionary - { - ["x86"] = @"opencv_files\opencv451_uwp_x86\x86\vc16\bin", - ["x64"] = @"opencv_files\opencv451_uwp_x64\x64\vc16\bin", - ["ARM"] = @"opencv_files\opencv451_uwp_ARM\x86\vc16\bin", - }; - private static readonly IReadOnlyList uwpNativeDlls = new[] - { - "opencv_world451.dll", - "opencv_img_hash451.dll" - }; - - private static readonly HashSet ignoredExt = new[]{ + private static readonly IReadOnlySet ignoredExt = new[]{ ".bak", ".user", ".suo", ".git", ".gitignore", }.ToHashSet(); - private static readonly HashSet ignoredDir = new[]{ + private static readonly IReadOnlySet ignoredDir = new[]{ ".git", "bin", "obj", @@ -100,16 +88,37 @@ public static class Packer "packages", }.ToHashSet(); + private static IReadOnlyDictionary UwpNativeDllDirectories(string version) + { + version = version.Replace(".", ""); + return new Dictionary + { + ["x86"] = @$"opencv_files\opencv{version}_uwp_x86\x86\vc16\bin", + ["x64"] = @$"opencv_files\opencv{version}_uwp_x64\x64\vc16\bin", + ["ARM"] = @$"opencv_files\opencv{version}_uwp_ARM\x86\vc16\bin", + }; + } + + private static IReadOnlyList UwpNativeDlls(string version) + { + version = version.Replace(".", ""); + return new[] + { + $"opencv_world{version}.dll", + $"opencv_img_hash{version}.dll" + }; + } + /// /// Make /// /// /// - /// e.g. 4.5.1 - public static void Pack(string srcDir, string dstDir, string version) + /// e.g. 4.5.1 + public static void Pack(string srcDir, string dstDir, string opencvVersion) { - MakeBinaryPackage(srcDir, dstDir, version); - MakeSamplePackage(srcDir, dstDir, version); + MakeBinaryPackage(srcDir, dstDir, opencvVersion); + MakeSamplePackage(srcDir, dstDir, opencvVersion); } /// @@ -175,9 +184,9 @@ private static void MakeBinaryPackage(string dir, string dirDst, string opencvVe // UWPはopencv_world.dll等も入れる if (p.Key == "uwp") { - var uwpNativeDllDir = uwpNativeDllDirectories[arch]; + var uwpNativeDllDir = UwpNativeDllDirectories(opencvVersion)[arch]; uwpNativeDllDir = Path.Combine(dir, uwpNativeDllDir); - foreach (var dllName in uwpNativeDlls) + foreach (var dllName in UwpNativeDlls(opencvVersion)) { var uwpNativeDll = Path.Combine(uwpNativeDllDir, dllName); var dstDirectory = Path.Combine("NativeLib", "uwp", arch);