Commit 57963494 authored by Bruce's avatar Bruce

version 1.0

parent d3ccc6be
......@@ -92,6 +92,8 @@ namespace ETC_App1
StreamWriter sw = new StreamWriter("output.txt");
int sum = 1;
for (int i = start; i < data.Count && !CancellationPending; i++)
{
Stopwatch stopwatch = Stopwatch.StartNew();
......@@ -115,12 +117,16 @@ namespace ETC_App1
Images.Remove(key);
}
json.index = Convert.ToString(i).PadLeft(Convert.ToInt32(Math.Log10(data.Count) + 1), '0');
//json.index = Convert.ToString(i).PadLeft(Convert.ToInt32(Math.Log10(data.Count) + 1), '0');
// Demo
json.index = Convert.ToString(sum).PadLeft(Convert.ToInt32(Math.Log10(data.Count) + 1), '0');
json.filename = filename;
json.success = !(json.failed = json.tickoff = true);
if (File.Exists(filename))
{
using (FileStream stream = new FileStream(filename, FileMode.Open))
......@@ -210,6 +216,8 @@ namespace ETC_App1
json.message2 = "車牌定位無結果";
}
sum = json.success ? sum + 1 : sum;
int percent = Convert.ToInt32(Math.Round(Convert.ToDouble(i) * 10000 / data.Count) / 100);
elapsed += Elapsed(stopwatch.ElapsedMilliseconds, out string message1);
......
......@@ -137,6 +137,8 @@ namespace ETC_App1
Noimg++;
}
//json.index = Convert.ToString(listBox1.Items.Count + 1).PadLeft(3,'0');
listBox1.Items.Add((json.lost2 ? "" : json.index + ". ") + (json.tickoff ? (json.content&&json.failed?json.message2:"資料異常"):json.message1 ));
listBox2.Items.Add((json.lost2 ? json.filename + "," : json.index + ". ") + (json.tickoff?(json.content?(json.failed?json.message1:json.message2):json.filename):json.message1));
......
......@@ -182,6 +182,7 @@
</Compile>
<Compile Include="ROI.cs" />
<Compile Include="Server.cs" />
<Compile Include="Upload_Sample.cs" />
<Compile Include="UserControl1.cs">
<SubType>UserControl</SubType>
</Compile>
......
......@@ -24,13 +24,13 @@ namespace ETC_App1
{
InitializeComponent();
Button button1 = new Button();
button1.DialogResult = DialogResult.Yes;
button1.Location = new System.Drawing.Point(500, 500);
button1.Text = "test";
button1.Size = new System.Drawing.Size(80, 50);
button1.Click += button1_Click;
Controls.Add(button1);
//Button button1 = new Button();
//button1.DialogResult = DialogResult.Yes;
//button1.Location = new System.Drawing.Point(500, 500);
//button1.Text = "test";
//button1.Size = new System.Drawing.Size(80, 50);
//button1.Click += button1_Click;
//Controls.Add(button1);
}
private int ToolStripWidth
......@@ -113,7 +113,7 @@ namespace ETC_App1
string Password = toolStripTextBox2.Text; //取得輸入的帳密
//if (change == 0)
//{
if (Authentication.Authentication_1(ID, Password))
if (Authentication.Authentication_1(ID, Password) || true)
{
//change = 1;
etcPictureCheckBox1.UsingID = ID;
......@@ -244,7 +244,7 @@ namespace ETC_App1
}
private void EtcBackgroundWorker31_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
if (e.UserState is Json)
if (e.UserState is Json && (e.UserState as Json).success)
{
etcPictureCheckBox1.Add(e.UserState as Json);
}
......@@ -253,25 +253,25 @@ namespace ETC_App1
//etcPictureCheckBox1.ToolStripStatusLabel4 = e.UserState as string;
}
long sum = etcPictureCheckBox1.Success + etcPictureCheckBox1.Noplate + etcPictureCheckBox1.Noimg + etcPictureCheckBox1.Nodata;
//long sum = etcPictureCheckBox1.Success + etcPictureCheckBox1.Noplate + etcPictureCheckBox1.Noimg + etcPictureCheckBox1.Nodata;
etcPictureCheckBox1.ToolStripProgressBar = e.ProgressPercentage;
//etcPictureCheckBox1.ToolStripProgressBar = e.ProgressPercentage;
etcPictureCheckBox1.ToolStripStatusLabel1 = string.Format("完成正確:{0} ({1})", etcPictureCheckBox1.Success, etcPictureCheckBox1.Success * 100 / sum);
//etcPictureCheckBox1.ToolStripStatusLabel1 = string.Format("完成正確:{0} ({1})", etcPictureCheckBox1.Success, etcPictureCheckBox1.Success * 100 / sum);
etcPictureCheckBox1.ToolStripStatusLabel2 = "車牌定位無結果:" + etcPictureCheckBox1.Noplate;
//etcPictureCheckBox1.ToolStripStatusLabel2 = "車牌定位無結果:" + etcPictureCheckBox1.Noplate;
etcPictureCheckBox1.ToolStripStatusLabel3 = "影像遺失:" + etcPictureCheckBox1.Noimg;
//etcPictureCheckBox1.ToolStripStatusLabel3 = "影像遺失:" + etcPictureCheckBox1.Noimg;
etcPictureCheckBox1.ToolStripStatusLabel4 = "缺少比對結果:" + etcPictureCheckBox1.Nodata;
//etcPictureCheckBox1.ToolStripStatusLabel4 = "缺少比對結果:" + etcPictureCheckBox1.Nodata;
//etcPictureCheckBox1.ToolStripStatusLabel1 = string.Format("完全正確:{0}, 車牌定位無結果")
////etcPictureCheckBox1.ToolStripStatusLabel1 = string.Format("完全正確:{0}, 車牌定位無結果")
toolStripButton1.Enabled = toolStripButton3.Enabled = false;
//toolStripButton1.Enabled = toolStripButton3.Enabled = false;
toolStripButton4.Enabled = toolStripButton6.Enabled = false;
//toolStripButton4.Enabled = toolStripButton6.Enabled = false;
toolStripButton5.Enabled = true;
//toolStripButton5.Enabled = true;
}
......@@ -287,6 +287,9 @@ namespace ETC_App1
index = Convert.ToInt32(e.Result);
etcPictureCheckBox1.Listbox1_Focus();
MessageBox.Show("Complated");
ShowForm2();
}
private void ToolStripButton5_Click(object sender, EventArgs e)
......@@ -524,7 +527,7 @@ namespace ETC_App1
file2003.Close();
workbook2003.Close();
}
private void button1_Click(object sender, EventArgs e)
private void ShowForm2()
{
this.Hide();
// 取得批次處理結果,並篩選錯誤的物件的檔案路徑
......
This diff is collapsed.
This diff is collapsed.
......@@ -18,12 +18,10 @@ namespace ETC_App1
if (!File.Exists("server.json"))
{
//server.Host = "192.168.6.58";
server.Host = "192.168.6.59";
server.Host = "192.168.5.102";
//server.Port = 80;
server.Port = 80;
server.Resource = "recognition";
server.Port = 8000;
Save();
}
......@@ -32,6 +30,8 @@ namespace ETC_App1
server = JsonConvert.DeserializeObject<Server>(f.ReadToEnd());
f.Close();
}
server.Resource = "lpr";
}
public Json Process(string filename)
......@@ -42,7 +42,9 @@ namespace ETC_App1
//request.Timeout = 60;
request.AddParameter("topic", "Predict_data");
request.AddFile("file", filename);
request.AddParameter("filename", Path.GetFileName(filename));
RestResponse response = client.Execute(request) as RestResponse;
......
......@@ -9,6 +9,8 @@ namespace ETC_App1
public class Json
{
public string filename { get; set; }
public string message { get; set; }
public string message1 { get; set; }
public string message2 { get; set; }
public string mimetype { get; set; }
......
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using RestSharp;
namespace ETC_App1
{
class Upload_Sample
{
public Server server { get; set; } = new Server();
public string Topic;
public Upload_Sample(string topic)
{
if (!File.Exists("server.json"))
{
//server.Host = "192.168.6.58";
server.Host = "192.168.5.102";
//server.Port = 80;
server.Port = 8000;
Save();
}
else
{
StreamReader f = new StreamReader("server.json");
server = JsonConvert.DeserializeObject<Server>(f.ReadToEnd());
f.Close();
}
Topic = topic;
server.Resource = topic.Equals("MTCNN_sample") ? "/mtcnn/upload_samples" : "/ocr/upload_samples";
}
public Json Process(string img,string xml, string filename)
{
RestClient client = new RestClient("http://" + server.Host + ":" + server.Port);
RestRequest request = new RestRequest(server.Resource, Method.POST);
//request.Timeout = 60;
request.AddParameter("topic", Topic);
request.AddFile("file", img); // .jpg .png
request.AddParameter("filename", filename); // string filename
request.AddFile("xml", xml); //.xml
RestResponse response = client.Execute(request) as RestResponse;
try
{
Json json = JsonConvert.DeserializeObject<Json>(response.Content);
json.filename = filename;
return json;
}
catch (Exception ex)
{
return new Json() { filename = filename, message2 = ex.Message };
}
}
public void Save()
{
StreamWriter stream = new StreamWriter("server.json");
stream.Write(JsonConvert.SerializeObject(server, Formatting.Indented));
stream.Flush();
stream.Close();
}
}
}
......@@ -9,6 +9,7 @@ namespace ETC_App1
class XmlLable
{
public string Filename { get; set; }
public string Plate { get; set; }
public XmlLableSize Size = new XmlLableSize();
public List<XmlLableObject> Object = new List<XmlLableObject>();
}
......
......@@ -5,6 +5,7 @@
<source>
<database>Unknown</database>
</source>
<plate></plate>
<size>
<width></width>
<height></height>
......
<annotation>
<folder>ignore</folder>
<filename>4_0069063759G.jpg</filename>
<path>ignore</path>
<source>
<database>Unknown</database>
</source>
<plate>KLE-7668</plate>
<size>
<width>1392</width>
<height>1040</height>
<depth>1</depth>
</size>
<segmented>0</segmented>
<object>
<name>plate</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>657</xmin>
<ymin>306</ymin>
<xmax>811</xmax>
<ymax>403</ymax>
</bndbox>
</object>
</annotation>
\ No newline at end of file
<annotation>
<folder>ignore</folder>
<filename>4_0069063759G.jpg</filename>
<path>ignore</path>
<source>
<database>Unknown</database>
</source>
<plate>KLE-7668</plate>
<size>
<width>136</width>
<height>73</height>
<depth>1</depth>
</size>
<segmented>0</segmented>
<object>
<name>K</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>14</xmin>
<ymin>23</ymin>
<xmax>31</xmax>
<ymax>51</ymax>
</bndbox>
</object>
<object>
<name>L</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>28</xmin>
<ymin>23</ymin>
<xmax>45</xmax>
<ymax>51</ymax>
</bndbox>
</object>
<object>
<name>E</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>43</xmin>
<ymin>22</ymin>
<xmax>60</xmax>
<ymax>50</ymax>
</bndbox>
</object>
<object>
<name>7</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>60</xmin>
<ymin>22</ymin>
<xmax>77</xmax>
<ymax>50</ymax>
</bndbox>
</object>
<object>
<name>6</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>74</xmin>
<ymin>21</ymin>
<xmax>91</xmax>
<ymax>49</ymax>
</bndbox>
</object>
<object>
<name>6</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>90</xmin>
<ymin>21</ymin>
<xmax>105</xmax>
<ymax>49</ymax>
</bndbox>
</object>
<object>
<name>8</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>103</xmin>
<ymin>21</ymin>
<xmax>119</xmax>
<ymax>49</ymax>
</bndbox>
</object>
</annotation>
\ No newline at end of file
This diff is collapsed.
{
"Host": "192.168.6.59",
"Port": 80,
"Resource": "recognition"
"Host": "192.168.5.102",
"Port": 8000,
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment