private static void HandleInput( LocalDb4oProvider persistenceService, Damany.Util.PersistentWorker retriever) { while (true) { var key = Console.ReadKey(); switch (key.Key) { case ConsoleKey.UpArrow: retriever.WorkFrequency *= 2; break; case ConsoleKey.DownArrow: retriever.WorkFrequency /= 2; break; case ConsoleKey.F: var query = persistenceService.GetPortraits(-1, new Damany.Util.DateTimeRange(DateTime.Now.AddHours(-1), DateTime.Now)); Console.WriteLine("query hit: " + query.Count); break; default: retriever.Stop(); exit.Set(); return; break; } } }
public ConfigCameraProvider(Damany.Component.ICamera camera) { if (camera == null) throw new ArgumentNullException("camera", "camera is null."); this.camera = camera; }
public IList<DTO.Frame> GetFrames(Damany.Util.DateTimeRange range) { using (var container = OpenContainer()) { return container.Query<DTO.Frame>(frame => { return frame.CapturedAt >= range.From && frame.CapturedAt <= range.To; }); } }
public IList<DTO.Portrait> GetPortraits(Damany.Util.DateTimeRange range) { using (var container = OpenContainer()) { return container.Query<DTO.Portrait>(portrait => { return portrait.CapturedAt >= range.From && portrait.CapturedAt <= range.To; }); } }
private void HandlePacket(Damany.EPolice.Networking.Packets.BinaryPacket packetBuffer) { foreach (var parser in this.Parsers) { if (parser.CanParse(packetBuffer)) { parser.Parse(packetBuffer); parser.NotifyListener(); return; } } }
public ServiceProvider( //MotionDetectWrapper.MotionDetector motionDetector, FaceSearchWrapper.FaceSearch faceSearcher, Damany.Component.ICamera camera) { // if (motionDetector == null) // throw new ArgumentNullException("motionDetector", "motionDetector is null."); if (faceSearcher == null) throw new ArgumentNullException("faceSearcher", "faceSearcher is null."); if (camera == null) throw new ArgumentNullException("camera", "camera is null."); //this.motionDetector = motionDetector; this.faceSearcher = faceSearcher; this.camera = camera; }
public IList<DTO.Frame> GetFrames(int cameraId, Damany.Util.DateTimeRange range) { var container = OpenContainer(); var frames = container.Query<DTO.Frame>(frame => { bool flag = frame.CapturedAt >= range.From && frame.CapturedAt <= range.To; if (cameraId != -1) { flag = flag && frame.SourceId == cameraId; } return flag; }); return frames; }
public FaceSearchFacade(Damany.Imaging.Processors.MotionDetector motionDetector, Damany.Imaging.Processors.PortraitFinder portraitFinder, IEnumerable<Damany.Imaging.Common.IFacePostFilter> facePostFilters, FaceComparer faceComparer, IEventAggregator eventAggregator) { _motionDetector = motionDetector; _portraitFinder = portraitFinder; _facePostFilters = facePostFilters; _eventAggregator = eventAggregator; _faceComparer = faceComparer; MotionQueueSize = 10; Rectangle rectangle = GetRoi(); _portraitFinder.ROI = rectangle; }
public void DownloadVideoFileAt( System.Net.IPAddress ip, int cameraId, DateTime time, System.IO.Stream destStream, Damany.RemoteImaging.Common.IProgress progress ) { var path = Gateways.Search.Instance.VideoFilePathRecordedAt(ip, time, cameraId); if (string.IsNullOrEmpty(path)) { throw new System.IO.FileNotFoundException(); } long size = Gateways.Search.Instance.GetFileSizeInBytes(ip, cameraId, path); var buffer = new byte[64 * 1024]; using (progress) using (System.IO.Stream fs = Gateways.Search.Instance.DownloadFile(ip, path)) using (destStream) { long bytesCount = 0; while (true) { int bytesRead = fs.Read(buffer, 0, buffer.Length); if (bytesRead == 0) { break; } destStream.Write(buffer, 0, bytesRead); bytesCount += bytesRead; double percent = (double)bytesCount / size; percent *= 100; progress.Percent = (int)percent; System.Diagnostics.Debug.WriteLine(percent); } } }
public static Damany.Imaging.Common.IFrameStream NewFrameStream(Damany.PC.Domain.CameraInfo cameraInfo) { IFrameStream source = null; switch (cameraInfo.Provider) { #if DEBUG case Damany.PC.Domain.CameraProvider.LocalDirectory: break; #endif case Damany.PC.Domain.CameraProvider.Sanyo: var sanyo = new SanyoNetCamera(); sanyo.Uri = cameraInfo.Location; sanyo.UserName = cameraInfo.LoginUserName ?? "guest"; sanyo.PassWord = cameraInfo.LoginPassword ?? "guest"; source = sanyo; break; #if DEBUG case Damany.PC.Domain.CameraProvider.AipStar: var aip = new Damany.Cameras.Wrappers.AipStarCamera(cameraInfo.Location.Host, cameraInfo.Location.Port, "", ""); aip.UserName = cameraInfo.LoginUserName ?? "system"; aip.PassWord = cameraInfo.LoginPassword ?? "system"; source = aip; break; #endif default: throw new NotSupportedException("camera type not supported"); break; } source.Id = cameraInfo.Id; return source; }
public void AddFace(Damany.PortraitCapturer.DAL.DTO.Portrait p) { var item = new GalleryItem(); item.Image = p.ImageCopy; item.Hint = p.CaptureTime.ToString(); item.Tag = p; _galleryGroup.Items.Add(item); }
public void AddItem(Damany.Imaging.Common.Portrait item) { if (InvokeRequired) { Action<Damany.Imaging.Common.Portrait> action = this.AddItem; this.BeginInvoke(action, item); return; } this.faceImageList.Images.Add(item.GetIpl().ToBitmap()); var lvi = new ListViewItem { Tag = item, Text = item.CapturedAt.ToString(), ImageIndex = this.faceImageList.Images.Count - 1 }; //this.facesListView.Items.Add(lvi); }
private static void UpdateCellProperty(Damany.RemoteImaging.Common.Frame frame, ConnectInfo connect) { connect.Target.Image = frame.image; connect.Target.OverlayText = connect.Source.Config.Name + " " + frame.timeStamp.ToString(); connect.Target.EnableOverlayText = true; }
public void AddFace(Damany.Imaging.Common.Portrait p) { var bmp = p.GetIpl().ToBitmap(); this.facesList.Images.Add(bmp); string text = p.CapturedAt.ToString(); ListViewItem item = new ListViewItem() { Tag = p, Text = text, ImageIndex = this.facesList.Images.Count - 1, }; this.facesListView.Items.Add(item); }
public void HandlePortrait(Damany.Imaging.Common.Portrait portrait) { }
private void CompareFace( Damany.Util.DateTimeRange range, OpenCvSharp.IplImage targetImage, OpenCvSharp.CvRect rect) { try { IsRunning = true; targetImage.ROI = rect; int count = 0; var gray = targetImage.GetSub(rect).CvtToGray(); var poi = new PersonOfInterest(targetImage, gray); var repo = new PersonOfInterest[] { poi }; this._comparer.Load(repo.ToList()); //foreach (var p in portraits) //{ // if (Exit) // { // break; // } // this.view.CurrentImage = p.GetIpl().ToBitmap(); // var colorImg = p.GetIpl(); // var imgFromRepository = colorImg.GetSub(p.FaceBounds).CvtToGray(); // var result = this._comparer.CompareTo(imgFromRepository); // foreach (var repositoryCompareResult in result) // { // if (repositoryCompareResult.Similarity > Thresholds[ThresholdIndex]) // { // count++; // this.view.AddPortrait(p); // this.view.SetStatusText(string.Format("检索到 {0} 个目标", count)); // } // } //} } finally { IsRunning = false; } }
public IList<Portrait> GetPortraits(Damany.Util.DateTimeRange range) { var dtos = dataProvider.GetPortraits(range); var portraits = dtos.ToList().ConvertAll(dto => Mapper.Map<DAL.DTO.Portrait, Portrait>(dto)); return portraits; }
private static string ObjToPathMapper(Damany.Imaging.Contracts.CapturedObject obj) { var relativePath = string.Format("{0}\\{1}\\{2}\\{3}\\{4}.jpg", obj.CapturedAt.Year, obj.CapturedAt.Month, obj.CapturedAt.Day, obj.CapturedAt.Hour, obj.Guid.ToString()); return relativePath; }
void pb_FigureDrawn(object sender, Damany.Windows.Form.DrawFigureEventArgs e) { Roi = e.Rectangle; }
public IList<DTO.Portrait> GetPortraits(int cameraId, Damany.Util.DateTimeRange range) { var container = OpenContainer(); var portraitQuery = from DTO.Portrait p in container where p.CapturedAt >= range.From && p.CapturedAt <= range.To select p; if (cameraId != -1) { portraitQuery = from p in portraitQuery where p.SourceId == cameraId select p; } return portraitQuery.ToList(); }
private static void DeleteOutdatedFrame(Damany.Util.DateTimeRange range, UnitOfWork uow) { var cs = string.Format("CaptureTime >= '{0}' And CaptureTime < '{1}'", range.From, range.To); var c = DevExpress.Data.Filtering.CriteriaOperator.Parse(cs); var frames = new XPCollection<Damany.PortraitCapturer.DAL.DTO.Frame>(uow, c); uow.Delete(frames); }
public void AddPortrait(Damany.Imaging.Common.Portrait p) { if (this.InvokeRequired) { Action<Damany.Imaging.Common.Portrait> action = this.AddPortrait; this.BeginInvoke(action, p); return; } this.imageList1.Images.Add(p.GetIpl().ToBitmap()); var item = new ListViewItem(); item.Text = (_manager.GetName(p.DeviceId) ?? string.Empty) + " " + p.CapturedAt.ToString(); item.ImageIndex = this.imageList1.Images.Count - 1; p.Dispose(); }
public bool CanParse(Damany.EPolice.Networking.Packets.BinaryPacket binaryPacket) { return ((uint)binaryPacket.Tag) == (uint)Packets.PacketType.LicensePlate; }
public IList<Frame> GetFrames(Damany.Util.DateTimeRange range) { var dtos = dataProvider.GetFrames(range); var frames = dtos.ToList().ConvertAll( dto => Mapper.Map<DAL.DTO.Frame, Frame>(dto) ); return frames; }
public void Parse(Damany.EPolice.Networking.Packets.BinaryPacket binaryPacket) { this.packet = this.Parse(binaryPacket.PayLoadBuffer); }