diff --git a/Program.cs b/Program.cs
index 22e6aed..0712f93 100644
--- a/Program.cs
+++ b/Program.cs
@@ -63,7 +63,7 @@ namespace CNNImageProcessor
///
///
///
- public static bool ProcessImages(String sourcePath, String destinationPath,int resizeTo,String cnnClientUrl="http://10.0.0.73:5000")
+ public static bool ProcessImages(String sourcePath, String destinationPath,int resizeTo,String cnnClientUrl="http://10.0.0.73:5000",bool useGrayScale=false)
{
String[] files = Directory.GetFiles(sourcePath,"*.jpg");
@@ -78,7 +78,7 @@ namespace CNNImageProcessor
Console.WriteLine($"Processing {file}");
ImageHelper imageHelper=new ImageHelper();
imageHelper.LoadImage(file);
-// imageHelper.ToGrayScale();
+ if(useGrayScale)imageHelper.ToGrayScale();
imageHelper.Resize(resizeTo,resizeTo);
Stream stream = imageHelper.ToStream();
Stream processed = cnnClient.ProcessImage(stream);
@@ -314,10 +314,41 @@ namespace CNNImageProcessor
outStream.Dispose();
}
+ //public static (List avoid, List good) GenerateCodeTestCases(List universe)
+ //{
+ // double validationPercent=0.05;
+ // double validationPercentUnseen=0.50;
+ // Console.WriteLine($"Read {universe.Count} holdings");
+
+ // List avoid = universe.Where(x=>x.GainLoss<-.05).ToList();
+ // List good=universe.Where(x=>x.GainLoss>.05).ToList();
+
+ // int validationCount = (int)(validationPercent * universe.Count);
+
+ // Random rng = new Random();
+ // List goodValidation = good.OrderBy(x => rng.Next()).Take(validationCount).ToList();
+ // int goodUnseenCount = (int)(validationPercentUnseen * goodValidation.Count);
+ // List goodValidationUnseen = goodValidation.OrderBy(x => rng.Next()).Take(goodUnseenCount).ToList();
+ // good.RemoveAll(x => goodValidationUnseen.Contains(x));
+ // Console.WriteLine($"Validation sample size: {goodValidation.Count}");
+ // Console.WriteLine($"Unseen validation removed from good: {goodValidationUnseen.Count}");
+ // Console.WriteLine($"Remaining good count: {good.Count}");
+
+
+ // List avoidValidation = avoid.OrderBy(x => rng.Next()).Take(validationCount).ToList();
+ // int avoidUnseenCount = (int)(validationPercentUnseen * avoidValidation.Count);
+ // List avoidValidationUnseen = avoidValidation.OrderBy(x => rng.Next()).Take(avoidUnseenCount).ToList();
+ // avoid.RemoveAll(x => avoidValidationUnseen.Contains(x));
+ // Console.WriteLine($"Validation sample size: {avoidValidation.Count}");
+ // Console.WriteLine($"Unseen validation removed from avoid: {avoidValidationUnseen.Count}");
+ // Console.WriteLine($"Remaining avoid count: {avoid.Count}");
+
+ // return (avoid, good);
+ //}
+
public static (List avoid, List good) GenerateCodeTestCases(List universe)
{
double validationPercent=0.05;
- double validationPercentUnseen=0.50;
Console.WriteLine($"Read {universe.Count} holdings");
List avoid = universe.Where(x=>x.GainLoss<-.05).ToList();
@@ -327,25 +358,18 @@ namespace CNNImageProcessor
Random rng = new Random();
List goodValidation = good.OrderBy(x => rng.Next()).Take(validationCount).ToList();
- int goodUnseenCount = (int)(validationPercentUnseen * goodValidation.Count);
- List goodValidationUnseen = goodValidation.OrderBy(x => rng.Next()).Take(goodUnseenCount).ToList();
- good.RemoveAll(x => goodValidationUnseen.Contains(x));
Console.WriteLine($"Validation sample size: {goodValidation.Count}");
- Console.WriteLine($"Unseen validation removed from good: {goodValidationUnseen.Count}");
Console.WriteLine($"Remaining good count: {good.Count}");
List avoidValidation = avoid.OrderBy(x => rng.Next()).Take(validationCount).ToList();
- int avoidUnseenCount = (int)(validationPercentUnseen * avoidValidation.Count);
- List avoidValidationUnseen = avoidValidation.OrderBy(x => rng.Next()).Take(avoidUnseenCount).ToList();
- avoid.RemoveAll(x => avoidValidationUnseen.Contains(x));
Console.WriteLine($"Validation sample size: {avoidValidation.Count}");
- Console.WriteLine($"Unseen validation removed from avoid: {avoidValidationUnseen.Count}");
Console.WriteLine($"Remaining avoid count: {avoid.Count}");
return (avoid, good);
}
+
public static void GenerateTrainingImages(List avoid, List good)
{
String cnnClientUrl="http://127.0.0.1:5000";
@@ -361,8 +385,8 @@ namespace CNNImageProcessor
Console.WriteLine($"CNN Server @ {cnnClientUrl} is not responding.");
return;
}
- ProcessImages(@"C:\boneyard\DeepLearning\ModelInputData\0",@"C:\boneyard\DeepLearning\Data\0",imageSize,cnnClientUrl); // Process through PIL and put in C:\boneyard\DeepLearning\Data\0
- ProcessImages(@"C:\boneyard\DeepLearning\ModelInputData\1",@"C:\boneyard\DeepLearning\Data\1",imageSize,cnnClientUrl); // Process through PIL and put in C:\boneyard\DeepLearning\Data\1
+ ProcessImages(@"C:\boneyard\DeepLearning\ModelInputData\0",@"C:\boneyard\DeepLearning\Data\0",imageSize,cnnClientUrl,false); // Process through PIL and put in C:\boneyard\DeepLearning\Data\0
+ ProcessImages(@"C:\boneyard\DeepLearning\ModelInputData\1",@"C:\boneyard\DeepLearning\Data\1",imageSize,cnnClientUrl,false); // Process through PIL and put in C:\boneyard\DeepLearning\Data\1
Console.WriteLine("Done.");
}