コード例 #1
0
        public static FaceData GetFaceInfoByEntryID(int entryID)
        {
            FaceData _faceData = new FaceData();

            using (SqlConnection con = new SqlConnection(ConfigurationSettings.AppSettings["FaceDatabaseConnectionString"]))
                using (SqlCommand cmd = new SqlCommand("dbo.usp_GetFaceInfoByEntryID", con))
                {
                    cmd.CommandType = CommandType.StoredProcedure;

                    cmd.Parameters.Add("@entryID", SqlDbType.Int);
                    cmd.Parameters["@entryID"].Value = entryID;

                    cmd.Parameters.Add(new SqlParameter("@name", SqlDbType.NVarChar, 50)).Direction      = ParameterDirection.Output;
                    cmd.Parameters.Add(new SqlParameter("@emailID", SqlDbType.NVarChar, 100)).Direction  = ParameterDirection.Output;
                    cmd.Parameters.Add(new SqlParameter("@album", SqlDbType.NVarChar, 50)).Direction     = ParameterDirection.Output;
                    cmd.Parameters.Add(new SqlParameter("@albumkey", SqlDbType.NVarChar, 200)).Direction = ParameterDirection.Output;

                    con.Open();

                    cmd.ExecuteNonQuery(); // *** since you don't need the returned data - just call ExecuteNonQuery
                    _faceData.name     = cmd.Parameters["@name"].Value.ToString();
                    _faceData.emailID  = cmd.Parameters["@emailID"].Value.ToString();
                    _faceData.album    = cmd.Parameters["@album"].Value.ToString();
                    _faceData.albumkey = cmd.Parameters["@albumkey"].Value.ToString();
                    _faceData.entryid  = entryID;
                    con.Close();
                }

            return(_faceData);
        }
コード例 #2
0
        public static void InsertUserData(FaceData face)
        {
            using (SqlConnection con = new SqlConnection(ConfigurationSettings.AppSettings["FaceDatabaseConnectionString"]))
                using (SqlCommand cmd = new SqlCommand("dbo.usp_InsertUserData", con))
                {
                    cmd.CommandType = CommandType.StoredProcedure;

                    cmd.Parameters.Add("@name", SqlDbType.NVarChar, 50);
                    cmd.Parameters["@name"].Value = face.name;

                    cmd.Parameters.Add("@emailID", SqlDbType.NVarChar, 100);
                    cmd.Parameters["@emailID"].Value = face.emailID;

                    cmd.Parameters.Add("@album", SqlDbType.NVarChar, 50);
                    cmd.Parameters["@album"].Value = face.album;

                    cmd.Parameters.Add("@albumkey", SqlDbType.NVarChar, 200);
                    cmd.Parameters["@albumkey"].Value = face.albumkey;


                    con.Open();

                    cmd.ExecuteNonQuery(); // *** since you don't need the returned data - just call ExecuteNonQuery

                    con.Close();
                }
        }
コード例 #3
0
        public static void InsertUserData(FaceData face)
        {
            using (SqlConnection con = new SqlConnection(ConfigurationSettings.AppSettings["FaceDatabaseConnectionString"]))
            using (SqlCommand cmd = new SqlCommand("dbo.usp_InsertUserData", con))
            {
                cmd.CommandType = CommandType.StoredProcedure;

                cmd.Parameters.Add("@name", SqlDbType.NVarChar, 50);
                cmd.Parameters["@name"].Value = face.name;

                cmd.Parameters.Add("@emailID", SqlDbType.NVarChar, 100);
                cmd.Parameters["@emailID"].Value = face.emailID;

                cmd.Parameters.Add("@album", SqlDbType.NVarChar, 50);
                cmd.Parameters["@album"].Value = face.album;

                cmd.Parameters.Add("@albumkey", SqlDbType.NVarChar, 200);
                cmd.Parameters["@albumkey"].Value = face.albumkey;

                con.Open();

                cmd.ExecuteNonQuery();  // *** since you don't need the returned data - just call ExecuteNonQuery

                con.Close();
            }
        }
コード例 #4
0
        public static FaceData GetFaceInfoByEntryID(int entryID)
        {
            FaceData _faceData = new FaceData();

            using (SqlConnection con = new SqlConnection(ConfigurationSettings.AppSettings["FaceDatabaseConnectionString"]))
            using (SqlCommand cmd = new SqlCommand("dbo.usp_GetFaceInfoByEntryID", con))
            {
                cmd.CommandType = CommandType.StoredProcedure;

                cmd.Parameters.Add("@entryID", SqlDbType.Int);
                cmd.Parameters["@entryID"].Value = entryID;

                cmd.Parameters.Add(new SqlParameter("@name", SqlDbType.NVarChar, 50)).Direction = ParameterDirection.Output;
                cmd.Parameters.Add(new SqlParameter("@emailID", SqlDbType.NVarChar, 100)).Direction = ParameterDirection.Output;
                cmd.Parameters.Add(new SqlParameter("@album", SqlDbType.NVarChar, 50)).Direction = ParameterDirection.Output;
                cmd.Parameters.Add(new SqlParameter("@albumkey", SqlDbType.NVarChar, 200)).Direction = ParameterDirection.Output;

                con.Open();

                cmd.ExecuteNonQuery();  // *** since you don't need the returned data - just call ExecuteNonQuery
                _faceData.name = cmd.Parameters["@name"].Value.ToString();
                _faceData.emailID = cmd.Parameters["@emailID"].Value.ToString();
                _faceData.album = cmd.Parameters["@album"].Value.ToString();
                _faceData.albumkey = cmd.Parameters["@albumkey"].Value.ToString();
                _faceData.entryid = entryID;
                con.Close();
            }

            return _faceData;
        }
コード例 #5
0
        private void Recognize(string filename)
        {
            try
            {
                Cursor = Cursors.WaitCursor;

                byte[] data = File.ReadAllBytes(filename);

                Stream stream = new MemoryStream(data);

                HttpResponse <string> response = Unirest.post("https://lambda-face-recognition.p.mashape.com/recognize")
                                                 .header("X-Mashape-Authorization", mashapeAuthKey)
                                                 .field("album", album)
                                                 .field("albumkey", albumKey)
                                                 .field("files", data)
                                                 .asJson <string>();

                JavaScriptSerializer jss = new JavaScriptSerializer();
                var output = jss.Deserialize <dynamic>(response.Body);

                string entryID = output["photos"][0]["tags"][0]["uids"][0]["prediction"];

                FaceData _facedata = FaceDAO.GetFaceInfoByEntryID(Convert.ToInt32(entryID));

                tboutName.Text  = _facedata.name;
                tboutEmail.Text = _facedata.emailID;

                Cursor = Cursors.Default;
            }
            catch (Exception ex)
            {
                MessageBox.Show("Face not recognize.");
                Cursor = Cursors.Default;
            }
        }
コード例 #6
0
        public static void TrainAlbum(string name, string emailID, byte[] data)
        {
            try
            {
                //byte[] data1 = File.ReadAllBytes(ConfigurationSettings.AppSettings["SaveImageLocation"]);

                string entryID = FaceDAO.GetEntryIDByName(name).ToString();

                HttpResponse <string> response = Unirest.post("https://lambda-face-recognition.p.mashape.com/album_train")
                                                 .header("X-Mashape-Authorization", mashapeAuthKey)
                                                 .field("album", album)
                                                 .field("albumkey", albumKey)
                                                 .field("entryid", entryID)
                                                 .field("files", data)
                                                 .asString();

                JavaScriptSerializer jss = new JavaScriptSerializer();
                var output = jss.Deserialize <dynamic>(response.Body);

                FaceData _facedata = new FaceData();
                _facedata.name     = name;
                _facedata.emailID  = emailID;
                _facedata.album    = album;
                _facedata.albumkey = albumKey;

                FaceDAO.InsertUserData(_facedata);

                MessageBox.Show("Image capture and trained.");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
コード例 #7
0
        public static void TrainAlbum(string name, string emailID, byte[] data)
        {
            try
            {
                //byte[] data1 = File.ReadAllBytes(ConfigurationSettings.AppSettings["SaveImageLocation"]);

                string entryID = FaceDAO.GetEntryIDByName(name).ToString();

                HttpResponse<string> response = Unirest.post("https://lambda-face-recognition.p.mashape.com/album_train")
                  .header("X-Mashape-Authorization", mashapeAuthKey)
                   .field("album", album)
                  .field("albumkey", albumKey)
                  .field("entryid", entryID)
                  .field("files", data)
                  .asString();

                JavaScriptSerializer jss = new JavaScriptSerializer();
                var output = jss.Deserialize<dynamic>(response.Body);

                FaceData _facedata = new FaceData();
                _facedata.name = name;
                _facedata.emailID = emailID;
                _facedata.album = album;
                _facedata.albumkey = albumKey;

                FaceDAO.InsertUserData(_facedata);

                MessageBox.Show("Image capture and trained.");

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }