private void PictureCaptured(Camera sender, Picture picture) { SavePicture(picture); SendPicture(picture); DisplayMessage("Photo saved"); Button.TurnLEDOff(); }
private void camera_PictureCaptured(Camera sender, GT.Picture e) { Debug.Print("[CAMERA] picture Captured"); picture.setPicture(e); byte[] bmpBuffer = picture.PictureToBytes(); client.sendPictureTCP(bmpBuffer); }
/* * Responder stuff */ /// <summary> /// Updates the data with which the web event responds and sets the correct MIME type. /// </summary> /// <param name="picture">Picture to be published. </param> public void Respond(Picture picture) { if (CheckResponded()) return; if (picture != null) { string tempMimeType = "application/binary"; if (picture.Encoding == Picture.PictureEncoding.BMP) { tempMimeType = "image/bmp"; } else if (picture.Encoding == Picture.PictureEncoding.GIF) { tempMimeType = "image/gif"; } else if (picture.Encoding == Picture.PictureEncoding.JPEG) { tempMimeType = "image/jpeg"; } webEvent.ContentType = tempMimeType; webEvent.ResponseData = picture.PictureData; } SendResponse(); }
void changeState() { Bitmap bmp; IsEmpty = !IsEmpty; if (IsEmpty) { if (picAvail == null) { var temp = new GT.Picture(Resources.GetBytes(Resources.BinaryResources.empty), GT.Picture.PictureEncoding.JPEG); picAvail = temp.MakeBitmap(); } bmp = picAvail; txt.Text = "Available"; } else { if (picNotAvail == null) { var temp = new GT.Picture(Resources.GetBytes(Resources.BinaryResources.full), GT.Picture.PictureEncoding.JPEG); picNotAvail = temp.MakeBitmap(); } bmp = picNotAvail; txt.Text = "Being Used"; } img.Bitmap = bmp; img.Invalidate(); txt.Invalidate(); }
void camera_BitmapStreamed(Camera sender, Bitmap bitmap) { if (!picTimeout.IsRunning && GT.Timer.GetMachineTime() >= webcamStreamStopTime) { //Debug.Print("Stopping bitmap streaming"); camera.StopStreamingBitmaps(); } if (responders.Count > 0) { byte[] bmpFile = new byte[bitmap.Width * bitmap.Height * 3 + 54]; GHI.Premium.System.Util.BitmapToBMPFile(bitmap.GetBitmap(), bitmap.Width, bitmap.Height, bmpFile); GT.Picture picture = new GT.Picture(bmpFile, GT.Picture.PictureEncoding.BMP); numresponses++; Debug.Print("Sending webcam response " + numresponses + " to " + responders.Count + " clients"); foreach (HomeOSGadgeteer.Networking.Responder responder in responders) { try { responder.Respond(picture); } catch { } } responders.Clear(); } if (picTimeout.IsRunning) { oledDisplay.SimpleGraphics.DisplayImage(lastBitmap, 0, 0); oledDisplay.SimpleGraphics.Redraw(); Debug.Print("Picture streamed -> screen"); } }
void camera_PictureCaptured(Camera sender, GT.Picture picture) { TraceLog("Picture captured"); #if SB SendPictureToSB(this.deviceInfo.DeviceId, picture); #endif }
private void insertImageintoAzureBlob(GT.Picture picture) { AzureBlob storage = new AzureBlob(); bool error = false; if (wifi.IsNetworkUp) { try { storage.PutBlob(config, picture.PictureData, error); if (error) { Debug.Print("Error: " + error.ToString()); } else { Debug.Print("There was no error via PutBlob."); } } catch (Exception ex) { Debug.Print("EXCEPTION: " + ex.Message); } } else { Debug.Print("NO NETWORK CONNECTION"); } }
void camera_PictureCaptured(Camera sender, GT.Picture picture) { wifi.SendPictureData(picture.PictureData, PhotoType.Central.ToString()); Debug.Print("foto"); sendingPicture = false; Scheduler.Instance().Working = false; }
void camera_PictureCaptured(Camera sender, GT.Picture picture) { pic = picture; displayTE35.SimpleGraphics.Clear(); displayTE35.SimpleGraphics.DisplayImage(picture, 0, 0); resp.Respond(picture); }
private void sendAuthRequest(string scannedRFID, GT.Picture capturedImage) { /* Code for sending rfid and picture to webserver */ if (ethernetJ11D.IsNetworkUp) { string jsonString = getJsonString(scannedRFID, capturedImage); //displayText("JSON string: " + jsonString); Debug.Print("JSON string: " + jsonString); displayText("Network up. Trying to send authentication request.."); POSTContent jsonContent = POSTContent.CreateTextBasedContent(jsonString); var req = HttpHelper.CreateHttpPostRequest(webserverUrl, jsonContent, "application/json"); //var req = HttpHelper.CreateHttpGetRequest("http://192.168.1.2:8008/DEMOService/prova"); req.ResponseReceived += new HttpRequest.ResponseHandler(req_ResponseReceived); req.SendRequest(); displayText("Request sended!"); } else { string jsonString = getJsonString(scannedRFID, capturedImage); //displayText("JSON string: " + jsonString); displayText("Authentication failed because network is down"); } authInProgress = false; timeOutTimer.Stop(); }
void PictureCaptured(Camera sender, GT.Picture picture) { displayText("Picture captured"); if (authInProgress) { sendAuthRequest(scannedRFID, picture); } else { displayText("Rescan RFID"); } /*Class1 class1 = new Class1(); * class1.MyProperty = 3; * class1.image = Convert.ToBase64String(picture.MakeBitmap().GetBitmap()); * * try * { * string json = JsonSerializer.SerializeObject(class1); * Debug.Print("json: " + json); * } * catch * { * Debug.Print("serialize error"); * }*/ //displayTE35.SimpleGraphics.Clear(); //displayTE35.SimpleGraphics.DisplayImage(picture, 0, 0); //camera.StartStreaming(); }
private void Camera_PictureCaptured(Camera sender, GT.Picture e) { try { byte[] image = e.PictureData; int pictureSize = image.Length; sockSender.ReceiveTimeout = 10000; sockSender.SendTimeout = 8000; int sent = 0, received = 0; sent = sockSender.Send(BitConverter.GetBytes(pictureSize), 0, sizeof(int), SocketFlags.None); if (sent != sizeof(int)) { throw new Exception(); } Debug.Print("SEND PHOTO"); sent = sockSender.Send(image); if (sent != pictureSize) { throw new Exception(); } Debug.Print("FINISHED"); byte[] responseFromServer = new byte[Constants.ACCEPT.Length]; received = sockSender.Receive(responseFromServer, 0, responseFromServer.Length, SocketFlags.None); if (received != responseFromServer.Length) { throw new Exception(); } Debug.Print("RECEIVED FROM SERVER"); string responseString = new string(Encoding.UTF8.GetChars(responseFromServer)); if (String.Compare(responseString, Constants.ACCEPT) == 0) { ledStrip.SetBitmask(3); Thread.Sleep(5000); } else if (String.Compare(responseString, Constants.REJECT) == 0) { ledStrip.SetBitmask(96); Thread.Sleep(1000); } else if (String.Compare(responseString, Constants.NOCODE) == 0) { } ledStrip.TurnAllLedsOff(); while (!camera.CameraReady) { Thread.Sleep(100); } camera.TakePicture(); } catch (Exception exc) { Debug.Print("EXCEPTION " + exc.StackTrace); sockSender.Close(); connectionChecking(); } }
/** * This method is triggered when an image is caught. */ private void camera_PictureCaptured(GTM.GHIElectronics.Camera sender, GT.Picture picture) { if (throw_allarm || picture == null || !setupComplete) { return; } Int32 HeurSum = 0; Bitmap bitmapB = picture.MakeBitmap(); Debug.Print("Image captured! "); try { if (contImage < 2) { if (contImage == 0) { setupCameraTakePicture(); } contImage++; return; } if (bitmapA == null) //per gestire la prima volta { WindowsManager.showWindowInsertPin(); bitmapA = bitmapB; RGlobal = heuristicSum(bitmapA); PreviousAverage = RGlobal / 9; sendPicture(picture.PictureData, true); return; } Debug.Print(DateTime.Now.ToString()); HeurSum = heuristicSum(bitmapB); Debug.Print(DateTime.Now.ToString()); Debug.Print(PreviousAverage.ToString()); Int32 average = (HeurSum / 9); Debug.Print(average.ToString()); if (System.Math.Abs(PreviousAverage - average) > 45) //SOGLIA LIMITE 40/50 { Debug.Print("Suspicious picture!"); sendPicture(picture.PictureData, false); } RGlobal = HeurSum; PreviousAverage = average; // displayT35.SimpleGraphics.DisplayImage(picture, 0, 0); //TODO eliminare alla fine } catch (SocketException e) { timer_getimage.Stop(); timer_keepAlive.Stop(); WindowsManager.showWindowErrorServer(); } }
/// <summary>Sends bitmap to remote server using a POST request.</summary /* * Se toma la foto * Se envia al servidor * Se hace la consulta al servidor * Se recibe los datos * Si los datos son correctos mostramos en la pantalla * Si los datos no son correctos repetimos el proceso */ void camera_PictureCaptured(Camera sender, GT.Picture e) { currentBitmap = new Bitmap(e.PictureData, Bitmap.BitmapImageType.Bmp); sendBitmapToServer(e);//metodo para subir las imagenes GetQRContent("http://autismoespol.tk/codigoQR/pruebaqr.png"); }
void TakePicture_WebEventReceived(string path, WebServer.HttpMethod method, Responder responder) { GT.Picture jpeg = new GT.Picture(picture.PictureData, Gadgeteer.Picture.PictureEncoding.JPEG); if (picture != null) { responder.Respond(jpeg); } }
//elabora ed invia la foto al server private void elabora_foto(Camera sender, GT.Picture e) { //stop blinking leds timer.Stop(); timer.Tick -= timer_led_lampeggianti; //stop function to display video on screen camera.BitmapStreamed -= stampa_video; //stop buttons button.ButtonPressed -= scatta_foto; button2.ButtonPressed -= button_Button2Pressed; if (sender == null && e == null) { elaboraRisposta(-1); return; } //elabora foto img = e.PictureData; //stampa su schermo un'immagine fissa (caricamento in corso.../elaborazione...) displayTE35.SimpleGraphics.Clear(); displayTE35.SimpleGraphics.DisplayTextInRectangle("Sending Image", 100, 120, 200, 200, GT.Color.Orange, Resources.GetFont(Resources.FontResources.NinaB)); ledStrip.SetLed(2, true); ledStrip.SetLed(3, true); ledStrip.SetLed(4, true); DateTime dateI = DateTime.Now; Debug.Print("Inizio invio foto: " + dateI.ToString()); bool flag = gestioneC.ScritturaStream(img); if (!flag) { //errore gestioneC.annullaConnessione(); gestioneC.connetti(); elaboraRisposta(-1); return; } else { DateTime dateF = DateTime.Now; Debug.Print("Foto inviata: " + dateF.ToString()); Int32 risposta = gestioneC.LetturaStream(); if (risposta == -1) { //errore gestioneC.annullaConnessione(); gestioneC.connetti(); elaboraRisposta(-1); return; } elaboraRisposta(risposta); } }
void camera_PictureCaptured(Camera sender, GT.Picture picture) { string pathfilename = "\\SD\\BARCODE\\image" + index.ToString() + ".bmp"; index++; sdCard.StorageDevice.WriteFile(pathfilename, picture.PictureData); Debug.Print("Picture Saved."); }
void sketch_WebEventReceived(string path, WebServer.HttpMethod method, Responder responder) { Bitmap bitmap = background.Bitmap; byte[] buff = new byte[bitmap.Width * bitmap.Height * 3 + 54]; Util.BitmapToBMPFile(bitmap.GetBitmap(), bitmap.Width, bitmap.Height, buff); GT.Picture picture = new GT.Picture(buff, GT.Picture.PictureEncoding.BMP); responder.Respond(picture); }
void camera_PictureCaptured(Camera sender, GT.Picture e) { if (authInProgress) { sendAuthRequest(scannedRFID, e); } else { Debug.Print("Rescan RFID"); } }
public void SavePicture(string path, GT.Picture picture) { GT.StorageDevice storage; storage = GetStorage(); try { storage.WriteFile(path, picture.PictureData); Debug.Print("saved successfully"); } catch { Debug.Print("failed to save"); } }
public override void Init(params string[] Param) { MainWindow = GlideLoader.LoadWindow(Resources.GetString(Resources.StringResources.SplashForm)); var img = (GHI.Glide.UI.Image)MainWindow.GetChildByName("ImgLogo"); GT.Picture pic = new GT.Picture(Resources.GetBytes(Resources.BinaryResources.logo), GT.Picture.PictureEncoding.JPEG); img.Bitmap = pic.MakeBitmap(); Glide.MainWindow = MainWindow; Thread.Sleep(2000); CallFormRequestEvent(ScreenTypes.Prompt); }
string getJsonString(string scannedRFID, GT.Picture capturedImage) { //string jsonString = ""; CRequestData testObj = new CRequestData(); testObj.RFID = scannedRFID; testObj.image = capturedImage; string json = JsonSerializer.SerializeObject(testObj); Debug.Print(json); return(json); }
/* * void drawArc(Bitmap chart, double radians_ini, double radians_end, Color color, int center_x, int center_y, double radius) * { * * int x; * int y; * * int ini = (int)(radians_ini / interval); * int end = (int)(radians_end / interval); * * for (int i = ini; i < end; i++) * { * x = center_x + (int)(radius * cos_values[i]); * y = center_y - (int)(radius * sin_values[i]); * * chart.SetPixel(x, y, color); * } * * } */ /** * Guarda la imagen del grafico de frecuencias en la SD */ public void saveChart(GT.StorageDevice storage, Bitmap chart, String pathGraphName) { byte[] bytes = new byte[chart.Width * chart.Height * 3 + 54]; Util.BitmapToBMPFile(chart.GetBitmap(), chart.Width, chart.Height, bytes); GT.Picture picture = new GT.Picture(bytes, GT.Picture.PictureEncoding.BMP); showMsgOnScreen("Guardando el grafico en la SD en: " + pathGraphName); Debug.Print("Guardando el grafico en la SD en: " + pathGraphName); storage.WriteFile(pathGraphName, picture.PictureData); }
string getJsonString(string scannedRFID, GT.Picture capturedImage) { /*Class1 class1 = new Class1(); * class1.MyProperty = 3; * class1.image = Convert.ToBase64String(picture.MakeBitmap().GetBitmap()); * * try * { * string json = JsonSerializer.SerializeObject(class1); * Debug.Print("json: " + json); * } * catch * { * Debug.Print("serialize error"); * }*/ //string jsonString = ""; string json = ""; Class1 testObj = new Class1(); testObj.rfid = scannedRFID; byte[] imageByteArray = capturedImage.PictureData; //capturedImage.MakeBitmap().GetBitmap(); //Bitmap b = capturedImage.MakeBitmap(); //Bitmap b2 = new Bitmap(30, 30); //b2.Scale9Image(30, 30, 30, 30, b, 0, 0, 0, 0, 1); //Debug.Print("array length: " + imageByteArray.Length.ToString()); try { //testObj.photo = b2.GetBitmap(); //imageByteArray; //Convert.ToBase64String(imageByteArray); //"hsdaspjd324ji2p34j"; displayText("Start Convert64"); string img = Convert.ToBase64String(imageByteArray); displayText("End Convert64"); json = "{\"rfid\":\"" + scannedRFID + "\",\"photo\":\"" + img + "\"}"; } catch { displayText("Problem converting image to str"); } try { //json = JsonSerializer.SerializeObject(testObj); } catch { displayText("serialize error"); } //Debug.Print(json); return(json); //return ""; }
private void SavePicture(Picture picture) { if (picture == null) { return; } try { _imageDisplay.Background = new ImageBrush(picture.MakeBitmap()); var filename = "picture_" + _pictureIndex + ".bmp"; SdCard.GetStorageDevice().WriteFile(filename, picture.PictureData); _pictureIndex++; DisplayMessage("Photo Saved to: " + filename); } catch (Exception ex) { DisplayMessage("SD Card Error : " + ex.Message); } }
void seePicture_WebEventReceived(string path, WebServer.HttpMethod method, Responder responder) { if (pic != null) { Bitmap b = new Bitmap(320, 240); b.DrawLine(Colors.Red, 20, 0, 0, 319, 239); byte[] buff = new byte[320 * 240 * 3 + 54]; GHIElectronics.NETMF.System.Util.BitmapToBMPFile(b.GetBitmap(), 320, 240, buff); GT.Picture picture = new GT.Picture(buff, GT.Picture.PictureEncoding.BMP); responder.Respond(picture); } else responder.Respond("Take picture first"); }
void seePicture_WebEventReceived(string path, WebServer.HttpMethod method, Responder responder) { if (pic != null) { Bitmap b = new Bitmap(320, 240); b.DrawLine(Colors.Red, 20, 0, 0, 319, 239); byte[] buff = new byte[320 * 240 * 3 + 54]; GHIElectronics.NETMF.System.Util.BitmapToBMPFile(b.GetBitmap(), 320, 240, buff); GT.Picture picture = new GT.Picture(buff, GT.Picture.PictureEncoding.BMP); responder.Respond(picture); } else { responder.Respond("Take picture first"); } }
void camera_PictureCaptured(Camera sender, GT.Picture picture) { InitDisplay(); display_TE35.SimpleGraphics.DisplayImage(picture, 0, 0); string reaURI = "http://" + reqHOST + ":" + reqPORT + "/gadg/Service1/transfer/" + lightMEAS.ToString() + "/" + humMEAS.ToString() + "/" + tempMEAS.ToString(); POSTContent postCont = POSTContent.CreateBinaryBasedContent(picture.PictureData); var req = HttpHelper.CreateHttpPostRequest(reaURI, postCont, "image/bmp"); req.ResponseReceived += new HttpRequest.ResponseHandler(req_ResponseReceived); req.SendRequest(); DisplayText(2, "Req sent - PicSize: " + picture.PictureData.Length.ToString()); DisplayText(3, "MEAS li:" + lightMEAS.ToString() + " hu:" + humMEAS.ToString() + " te:" + tempMEAS.ToString()); }
private void saveImageSDCard(GT.Picture picture, string fileName) { if (verifySDCard()) { string pathFileName = "\\SD\\" + fileName; Debug.Print("pathFileName: " + pathFileName); try { sdCard.StorageDevice.WriteFile(pathFileName, picture.PictureData); Debug.Print("Image saved to SD Card: " + pathFileName); } catch (Exception ex) { Debug.Print("Error: " + ex.Message); } } }
void PictureCaptured(Camera sender, GT.Picture picture) { //Debug.Print("Picture captured"); /* Display captured photo on screen */ imgPhoto.Bitmap = picture.MakeBitmap(); imgPhoto.Alpha = 255; imgPhoto.Invalidate(); if (authInProgress) { displayMessage("Picture captured, connecting to server..", false); sendAuthRequest(scannedRFID, picture); } else { //Debug.Print("Picture captured but no authentication in progress"); } }
private void sendAuthRequest(string scannedRFID, GT.Picture capturedImage) { /* Code for sending rfid and picture to webserver */ if (true /*ethernetJ11D.IsNetworkUp*/) { string jsonString = getJsonString(scannedRFID, capturedImage); /*POSTContent jsonContent = POSTContent.CreateTextBasedContent(jsonString); * var req = HttpHelper.CreateHttpPostRequest(webserverUrl, jsonContent, "application/json"); * req.ResponseReceived += new HttpRequest.ResponseHandler(req_ResponseReceived); * req.SendRequest(); */ } else { Debug.Print("Authentication failed because network is down"); } authInProgress = false; timeOutTimer.Stop(); }
void camera_PictureCaptured(Camera sender, GT.Picture picture) { try { Debug.Print("picture.PictureData.Length: " + picture.PictureData.Length.ToString()); if (picture.PictureData.Length > 0) { string newFileName = currentFile.ToString() + ".jpg"; insertImageintoAzureBlob(picture); saveImageSDCard(picture, newFileName); } else { Debug.Print("Image not found, has a length <= 0"); } } catch (Exception ex) { Debug.Print("Error: " + ex.Message); //multicolorLED.BlinkRepeatedly(GT.Color.Red); } }
//Metodo para subir los archivos a un servidor private void sendBitmapToServer(GT.Picture picture) { if (ethernetJ11D.IsNetworkUp) { try { //POSTContent content = POSTContent.CreateBinaryBasedContent(currentBitmap.GetBitmap()); POSTContent fileToUpload = POSTContent.CreateBinaryBasedContent(picture.PictureData); HttpRequest pedido = HttpHelper.CreateHttpPostRequest("http://christianvergara.net16.net/upload.php?submit=true&action=upload", fileToUpload, "multipart/form-data"); pedido.SendRequest(); pedido.ResponseReceived += pedido_ResponseReceived; Debug.Print("Imagen enviada"); } catch (System.ObjectDisposedException oe) { Debug.Print("Error in sendBitmapToCloud(): " + oe.Message); } } }
void camera_PictureCaptured(Camera sender, GT.Picture picture) { imageDisplay.Background = new ImageBrush(picture.MakeBitmap()); lastPicture = picture; }
private void SendPicture(Picture picture) { if (Ethernet.Interface.NetworkInterface.IPAddress == "0.0.0.0") {return;} var req = (HttpWebRequest)WebRequest.Create(PostUrl); req.Method = "POST"; req.ContentType = "image/bmp"; req.UserAgent = "Gadgeteer"; req.Headers.Add("X-AuthKey", AuthKey); req.ContentLength = picture.PictureData.Length; try { using (Stream s = req.GetRequestStream()) { s.Write(picture.PictureData, 0, picture.PictureData.Length); } using (WebResponse resp = req.GetResponse()) { using (Stream respStream = resp.GetResponseStream()) { byte[] respBytes = new byte[respStream.Length]; respStream.Read(respBytes, 0, respBytes.Length); string respString = new string(System.Text.Encoding.UTF8.GetChars(respBytes)); Debug.Print(respString); } } } catch (Exception ex) { Debug.Print("exception : " + ex.Message); } finally { req.Dispose(); } }
private void PictureCaptured(Camera sender, Picture picture) { SavePicture(picture); Button.TurnLEDOff(); }
void camera_PictureCaptured(Camera sender, GT.Picture picture) { pic = picture; }
void camera_PictureCaptured(Camera sender, GT.Picture picture) { Debug.Print("camera_PictureCaptured method entered"); camera.TakePicture(); lastPicture = picture; }