123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- using System;
- using System.IO;
- using System.Linq;
- using Vinno.vCloud.Common.Vid2;
- using Vinno.vCloud.Common.Vid2.Visuals;
- namespace WingAIDiagnosisService.Manage
- {
- public static class DiagnosisHelper
- {
- public const int CarotidMinImageCounts = 160;
- public const string SurfaceFileSuffix = "surface";
- public const string ModelFileSuffix = "model";
- public const string ZipFileSuffix = "zip";
- public const string JPGFileSuffix = "jpg";
- private const string CarotidApplicationName = "Carotid";
- private const string CarotidCategoryName = "VAS";
- private static string _cacheFolder = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "DiagnosisTemp");
- /// <summary>是否颈动脉</summary>
- /// <param name="imageData"></param>
- /// <returns></returns>
- public static bool IsCarotid(VinnoImageData imageData)
- {
- if (imageData.Probe.Application.ApplicationName == CarotidApplicationName && imageData.Probe.Application.ApplicationCategoryName == CarotidCategoryName)
- {
- var vinnoImage = imageData.GetImage(0);
- if (vinnoImage != null && vinnoImage.Visuals.Any() && vinnoImage.Visuals.First() is Vinno2DVisual visual)
- {
- if (visual.PhysicalCoordinates.ContainsKey(VinnoVisualAreaType.Tissue))
- {
- var physicalCoordinate = visual.PhysicalCoordinates[VinnoVisualAreaType.Tissue];
- if (physicalCoordinate is VinnoLinearTissuePhysicalCoordinate)
- {
- return true;
- }
- }
- };
- }
- return false;
- }
- public static string GetCacheFilePath(string fileSuffix)
- {
- if (!Directory.Exists(_cacheFolder))
- {
- Directory.CreateDirectory(_cacheFolder);
- }
- var fileName = $"{Guid.NewGuid():N}.{fileSuffix}";
- return Path.Combine(_cacheFolder, fileName);
- }
- }
- }
|