private int SearchImage() { List <Rectangle> lstRect; bool lbcheck = _faceManager.GetFaceRect(m_searchCondition.QueryImage, out lstRect); if (!lbcheck) { return(-2); } if (lstRect == null || lstRect.Count == 0) { return(-3); } m_searchCondition.Start = (m_iSearchCurrPage - 1) * m_iPageSize; m_searchCondition.Limit = m_iPageSize; List <HitAlertInfoDetail> searchHitAlertInfo; bool lbRet = _faceVerify.CompareByFace(m_searchCondition.QueryImage, out searchHitAlertInfo); if (lbRet) { if (searchHitAlertInfo != null && searchHitAlertInfo.Count > 0) { double mustScore = double.Parse(txtScore.Text); List <SearcPersonDetail> lstDetail = new List <SearcPersonDetail>(); foreach (var info in searchHitAlertInfo) { if (info.Score >= mustScore) { SearcPersonDetail detail = new SearcPersonDetail(info.Score, info.PersonId); detail.Photo = ImageHelper.ByteArrayToBitmap(info.Face); lstDetail.Add(detail); } } updateSearchUI(lstDetail); return(0); } else { return(-4); } } else { return(-1); } }
private void lstSearch_ItemDoubleClick(object sender, ItemClickEventArgs e) { ImageListViewItem selectItem = this.lstSearch.SelectedItems[0]; if (selectItem == null) { return; } SearcPersonDetail selectObj = (SearcPersonDetail)selectItem.VirtualItemKey; if (selectObj != null) { PictureDisplay frDisplay = new PictureDisplay(new Bitmap(selectObj.Photo), null); frDisplay.ShowDialog(this); } }