public static bool Add(string code, string filename) { Image img = new Bitmap(filename); MemoryStream memoryStream = new MemoryStream(); img.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Jpeg); byte[] imgByte = memoryStream.ToArray(); FacenetHandler facenet = new FacenetHandler(); WebRequest request = facenet.SendMessage("hasFace", "POST", new ImagetoDb() { img = Convert.ToBase64String(imgByte) }); ImagetoDbResponse hasFaceStr = (ImagetoDbResponse)facenet.GetWebResponse <ImagetoDbResponse>(request); if (hasFaceStr.hasFace.Equals("0")) { return(false); } DatabaseHandler database = Singleton <DatabaseHandler> .Instance(); string procName = "addOrUpdateImage"; List <Tuple <string, object> > parameters = new List <Tuple <string, object> >(); parameters.Add(new Tuple <string, object>("@Code", code)); parameters.Add(new Tuple <string, object>("@Image", imgByte)); if (database.ExecuteProcedure(procName, parameters) <= 0) { return(false); } return(true); }
public FacenetResponseInformations RecognizeFace(string baseImage, string img1, string img2, string img3) { FacenetHandler facenet = new FacenetHandler(); FacenetRequestInformations requestInformations = new FacenetRequestInformations { baseImage = baseImage, img1 = img1, img2 = img2, img3 = img3 }; WebRequest request = facenet.SendMessage("recognizeFaces", "POST", requestInformations); FacenetResponseInformations facenetResponse = (FacenetResponseInformations)facenet.GetWebResponse <FacenetResponseInformations>(request); return(facenetResponse); }
private List <string> ApplyImage(byte[] imgByte, string code, string name) { try { FacenetHandler facenet = new FacenetHandler(); WebRequest request = facenet.SendMessage("hasFace", "POST", new ImagetoDb() { img = Convert.ToBase64String(imgByte) }); ImagetoDbResponse hasFaceStr = (ImagetoDbResponse)facenet.GetWebResponse <ImagetoDbResponse>(request); if (hasFaceStr.hasFace.Equals("0")) { return new List <string>() { "Erro", "Não foi possível detectar a face do aluno " + code + "\n\t1- Certifique-se de que há uma face na imagem;\tCertifique-se de que altura da imagem é maior que a largura (que a imagem está em formato retrato);" } } ; string procName = "addOrUpdateImage"; List <Tuple <string, object> > parameters = new List <Tuple <string, object> >(); parameters.Add(new Tuple <string, object>("@Code", code)); parameters.Add(new Tuple <string, object>("@Image", imgByte)); if (database.ExecuteProcedure(procName, parameters) <= 0) { return new List <string>() { "Erro", "Não foi possível inserir a imagem do aluno " + code } } ; return(new List <string>() { "Sucesso", "A imagem do aluno " + name + " (" + code + ") foi inserida com sucesso" }); }catch (ResponseException ex) { return(new List <string>() { ex.Info.header, ex.Info.message }); } }