修改大华算法
parent
a92c0a49b9
commit
fadd185dfb
|
|
@ -35,7 +35,7 @@ namespace OpenAuth.App.ServiceApp.Algo
|
|||
|
||||
#region 大华算法
|
||||
//分析两次航线图片
|
||||
public async Task<Response<List<dynamic>>> BehaviorAlarm(string firstId, string secondId)
|
||||
public async Task<Response<List<dynamic>>> BehaviorAlarm(string firstId, string secondId, string cdid)
|
||||
{
|
||||
using (var db = UnitWork.CreateContext())
|
||||
{
|
||||
|
|
@ -57,6 +57,7 @@ namespace OpenAuth.App.ServiceApp.Algo
|
|||
taskId = "8ab0e1e213234a848e20d0d335559786",
|
||||
capTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
|
||||
taskTime = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(),
|
||||
cdid = cdid,
|
||||
imageInfo = new
|
||||
{
|
||||
imgSize = 1667235,
|
||||
|
|
@ -79,6 +80,7 @@ namespace OpenAuth.App.ServiceApp.Algo
|
|||
pitch = imageList1[i].GimbalPitchDegree,
|
||||
roll = imageList1[i].GimbalRollDegree,
|
||||
focalLength = imageList1[i].FocalLength
|
||||
|
||||
},
|
||||
new {
|
||||
imgUrl = "http://175.27.168.120:6013/test/"+imageList2[i].ObjectKey,
|
||||
|
|
@ -110,45 +112,85 @@ namespace OpenAuth.App.ServiceApp.Algo
|
|||
using (var db = UnitWork.CreateContext())
|
||||
{
|
||||
var data = JsonConvert.DeserializeObject<dynamic>(info);
|
||||
string cdid = data.cdid.ToString();
|
||||
var oldinfo = await db.LasaAiAchievement.GetFirstAsync(r => r.TaskId == cdid);
|
||||
var imageList = data.imageInfoList;
|
||||
string detectRegionJson = JsonConvert.SerializeObject(data.info.detectRegion);
|
||||
var regionArray = JsonConvert.DeserializeObject<dynamic>(detectRegionJson);
|
||||
LasaAiAchievement lasaAiAchievement = new LasaAiAchievement
|
||||
{
|
||||
Id = Guid.NewGuid().ToString(),
|
||||
Title = "耕地破坏区域报警",
|
||||
CreateTime = DateTime.Now,
|
||||
AiModel = "DaHuaAi"
|
||||
};
|
||||
var imageList = data.imageInfoList;
|
||||
int index = 0;
|
||||
foreach (var item in imageList)
|
||||
if (oldinfo != null)
|
||||
{
|
||||
//插入详情
|
||||
LasaAiAchievementDetail lasaAiAchievementDetail = new LasaAiAchievementDetail()
|
||||
foreach (var item in imageList)
|
||||
{
|
||||
//插入详情
|
||||
LasaAiAchievementDetail lasaAiAchievementDetail = new LasaAiAchievementDetail()
|
||||
{
|
||||
Id = Guid.NewGuid().ToString(),
|
||||
Image = item.imgUrl,
|
||||
AiAchievementId = oldinfo.Id,
|
||||
Lng = (double?)item.longitude ?? 0.0,
|
||||
Lat = (double?)item.latitude ?? 0.0,
|
||||
};
|
||||
//// 如果是第二张图片 -> 画区域 + 上传
|
||||
//var a = await DrawingImgAndUpload(item.imgUrl, regionArray);
|
||||
//if (index == 1)
|
||||
//{
|
||||
// //DrawingImgAsync();
|
||||
// Console.WriteLine(item.imgUrl);
|
||||
// Console.WriteLine(regionArray);
|
||||
// a = await DrawingImgAndUpload(item.imgUrl, regionArray);
|
||||
// lasaAiAchievementDetail.Image = a;
|
||||
//}
|
||||
await db.LasaAiAchievementDetail.InsertAsync(lasaAiAchievementDetail);
|
||||
index++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
LasaAiAchievement lasaAiAchievement = new LasaAiAchievement
|
||||
{
|
||||
Id = Guid.NewGuid().ToString(),
|
||||
Image = item.imgUrl,
|
||||
AiAchievementId = lasaAiAchievement.Id,
|
||||
Lng = (double?)item.longitude ?? 0.0,
|
||||
Lat = (double?)item.latitude ?? 0.0,
|
||||
Title = "耕地破坏区域报警",
|
||||
CreateTime = DateTime.Now,
|
||||
AiModel = "DaHuaAi",
|
||||
TaskId = cdid
|
||||
};
|
||||
//// 如果是第二张图片 -> 画区域 + 上传
|
||||
//var a = await DrawingImgAndUpload(item.imgUrl, regionArray);
|
||||
//if (index == 1)
|
||||
//{
|
||||
// //DrawingImgAsync();
|
||||
// Console.WriteLine(item.imgUrl);
|
||||
// Console.WriteLine(regionArray);
|
||||
// a = await DrawingImgAndUpload(item.imgUrl, regionArray);
|
||||
// lasaAiAchievementDetail.Image = a;
|
||||
//}
|
||||
lasaAiAchievement.Lat = item.latitude;
|
||||
lasaAiAchievement.Lng = item.longitude;
|
||||
lasaAiAchievement.Cover = item.imgUrl;
|
||||
await db.LasaAiAchievementDetail.InsertAsync(lasaAiAchievementDetail);
|
||||
index++;
|
||||
|
||||
foreach (var item in imageList)
|
||||
{
|
||||
//插入详情
|
||||
LasaAiAchievementDetail lasaAiAchievementDetail = new LasaAiAchievementDetail()
|
||||
{
|
||||
Id = Guid.NewGuid().ToString(),
|
||||
Image = item.imgUrl,
|
||||
AiAchievementId = lasaAiAchievement.Id,
|
||||
Lng = (double?)item.longitude ?? 0.0,
|
||||
Lat = (double?)item.latitude ?? 0.0,
|
||||
};
|
||||
//// 如果是第二张图片 -> 画区域 + 上传
|
||||
//var a = await DrawingImgAndUpload(item.imgUrl, regionArray);
|
||||
//if (index == 1)
|
||||
//{
|
||||
// //DrawingImgAsync();
|
||||
// Console.WriteLine(item.imgUrl);
|
||||
// Console.WriteLine(regionArray);
|
||||
// a = await DrawingImgAndUpload(item.imgUrl, regionArray);
|
||||
// lasaAiAchievementDetail.Image = a;
|
||||
//}
|
||||
lasaAiAchievement.Lat = item.latitude;
|
||||
lasaAiAchievement.Lng = item.longitude;
|
||||
lasaAiAchievement.Cover = item.imgUrl;
|
||||
await db.LasaAiAchievementDetail.InsertAsync(lasaAiAchievementDetail);
|
||||
index++;
|
||||
}
|
||||
await db.LasaAiAchievement.InsertAsync(lasaAiAchievement);
|
||||
//查询监测记录,然后更新监测记录的成果id
|
||||
await db.Lasa_ChangeDetection.UpdateAsync(u => new Lasa_ChangeDetection
|
||||
{
|
||||
AiAchievementId = lasaAiAchievement.Id
|
||||
}, u => u.Id == cdid);
|
||||
}
|
||||
await db.LasaAiAchievement.InsertAsync(lasaAiAchievement);
|
||||
|
||||
if (db.Commit())
|
||||
return new Response<bool>
|
||||
{
|
||||
|
|
|
|||
|
|
@ -179,7 +179,7 @@ namespace OpenAuth.App.ServiceApp
|
|||
};
|
||||
}
|
||||
}
|
||||
public async Task<Response<bool>> AddChangeDetection(Lasa_ChangeDetection info)
|
||||
public async Task<Response<string>> AddChangeDetection(Lasa_ChangeDetection info)
|
||||
{
|
||||
using (var db = UnitWork.CreateContext())
|
||||
{
|
||||
|
|
@ -187,15 +187,15 @@ namespace OpenAuth.App.ServiceApp
|
|||
info.CreateTime = DateTime.Now;
|
||||
await db.Lasa_ChangeDetection.InsertAsync(info);
|
||||
if (db.Commit())
|
||||
return new Response<bool>
|
||||
return new Response<string>
|
||||
{
|
||||
Result = true,
|
||||
Result = info.Id,
|
||||
Message = "添加成功"
|
||||
};
|
||||
else
|
||||
return new Response<bool>
|
||||
return new Response<string>
|
||||
{
|
||||
Result = false,
|
||||
Result = info.Id,
|
||||
Message = "添加失败"
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -138,9 +138,9 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers
|
|||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
[AllowAnonymous]
|
||||
public async Task<Response<bool>> AddChangeDetection(Lasa_ChangeDetection info)
|
||||
public async Task<Response<string>> AddChangeDetection(Lasa_ChangeDetection info)
|
||||
{
|
||||
var result = new Response<bool>();
|
||||
var result = new Response<string>();
|
||||
try
|
||||
{
|
||||
result = await _app.AddChangeDetection(info);
|
||||
|
|
|
|||
|
|
@ -225,10 +225,10 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers
|
|||
/// <param name="secondId"></param>
|
||||
[HttpPost]
|
||||
[AllowAnonymous]
|
||||
public async void BehaviorAlarm(string firstId, string secondId)
|
||||
public async void BehaviorAlarm(string firstId, string secondId, string cdId)
|
||||
{
|
||||
var mq = await RabbitMqSender.CreateAsync("123.132.248.154", 9103, "DHCloudg1", "Cloud0#4fCraQrm");
|
||||
var dataList = await _app.BehaviorAlarm(firstId, secondId);
|
||||
var dataList = await _app.BehaviorAlarm(firstId, secondId, cdId);
|
||||
foreach (var data in dataList.Result)
|
||||
{
|
||||
await mq.SendAsync("event.capturePic.1.sdhc04", JsonConvert.SerializeObject(data));
|
||||
|
|
|
|||
Loading…
Reference in New Issue