wsl support
This commit is contained in:
@@ -16,7 +16,7 @@ public class RawModelAIOperation: BaseOperation
|
||||
public RawModelAIOperation()
|
||||
{
|
||||
|
||||
_cSharpDataTransferMQRPC = PythonModelProxyHTTP.GetInterface();
|
||||
|
||||
CanHaveProcessingError = false;
|
||||
}
|
||||
|
||||
@@ -46,6 +46,7 @@ public class RawModelAIOperation: BaseOperation
|
||||
|
||||
protected override void InterpretInternal(Context context)
|
||||
{
|
||||
_cSharpDataTransferMQRPC = PythonModelProxyHTTP.GetInterface();
|
||||
if (!CheckImageExists(context)) return;
|
||||
if (!CheckColorful(context)) return;
|
||||
|
||||
@@ -53,7 +54,7 @@ public class RawModelAIOperation: BaseOperation
|
||||
{
|
||||
if (!File.Exists(ModelFilePath?.Path))
|
||||
{
|
||||
this.SetError("Model file not found");
|
||||
this.SetError($"Model file \"{ModelFilePath?.Path}\" not found");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -74,31 +75,47 @@ public class RawModelAIOperation: BaseOperation
|
||||
_cSharpDataTransferMQRPC.ActivateModel(_modelName);
|
||||
|
||||
|
||||
var sizeEncoded = _cSharpDataTransferMQRPC.GetAcceptSize();
|
||||
var size = sizeEncoded.Select(Convert.ToInt32).ToArray();
|
||||
_imageWidth = size[0];
|
||||
_imageHeight = size[1];
|
||||
int[] sizeEncoded=[];
|
||||
int[] outputSize = [];
|
||||
sizeEncoded = _cSharpDataTransferMQRPC.GetAcceptSize();
|
||||
outputSize = _cSharpDataTransferMQRPC.GetOutputSize();
|
||||
|
||||
var outputSize = _cSharpDataTransferMQRPC.GetOutputSize();
|
||||
var outputSizeArray = outputSize.Select(Convert.ToInt32).ToArray();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
var currentImage = context.ActiveImage;
|
||||
|
||||
var rightColor = currentImage.ImageData.CvtColor(ColorConversionCodes.BGR2RGB);
|
||||
|
||||
|
||||
var size = sizeEncoded.Select(Convert.ToInt32).ToArray();
|
||||
_imageWidth = size[0];
|
||||
_imageHeight = size[1];
|
||||
|
||||
var resized = rightColor.Resize(new Size(_imageHeight, _imageWidth));
|
||||
|
||||
|
||||
|
||||
int dataSize = resized.Rows * resized.Cols * resized.ElemSize();
|
||||
var byteArray = new byte[dataSize];
|
||||
Marshal.Copy(resized.Data, byteArray, 0, dataSize);
|
||||
|
||||
var allowed = FilterClasses.Split(',', StringSplitOptions.RemoveEmptyEntries).Select(x => Convert.ToInt32(x)).ToArray();
|
||||
|
||||
var result = _cSharpDataTransferMQRPC.PredictRaw(byteArray);
|
||||
|
||||
byte[] resultColor;
|
||||
resultColor = result.Select(x => (byte)(x) ).ToArray();
|
||||
|
||||
// black and white mask
|
||||
|
||||
var outputSizeArray = outputSize.Select(Convert.ToInt32).ToArray();
|
||||
var mask = new Mat(outputSizeArray[0], outputSizeArray[1], MatType.CV_8UC1, resultColor);
|
||||
|
||||
var maskResized = mask.Resize(new Size(currentImage.ImageData.Width, currentImage.ImageData.Height));
|
||||
|
||||
Reference in New Issue
Block a user