	{"id":68768,"date":"2023-02-01T16:00:03","date_gmt":"2023-02-01T16:00:03","guid":{"rendered":"https:\/\/www.artefact.com\/?post_type=blog&#038;p=68768"},"modified":"2024-09-20T17:45:55","modified_gmt":"2024-09-20T16:45:55","slug":"how-we-deployed-a-simple-wildlife-monitoring-system-on-google-cloud","status":"publish","type":"blog","link":"https:\/\/www.artefact.com\/br\/blog\/how-we-deployed-a-simple-wildlife-monitoring-system-on-google-cloud\/","title":{"rendered":"Como implantamos um sistema simples de monitoramento da vida selvagem no Google Cloud"},"content":{"rendered":"<p><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling article-author\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-background-color:#ffffff;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:calc( 1440px + 20px );margin-left: calc(-20px \/ 2 );margin-right: calc(-20px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_1_2 1_2 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:50%;--awb-margin-top-large:0px;--awb-spacing-right-large:10px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:10px;--awb-width-medium:50%;--awb-order-medium:0;--awb-spacing-right-medium:10px;--awb-spacing-left-medium:10px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:10px;--awb-spacing-left-small:10px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-1 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Autor<\/h2><\/div><img decoding=\"async\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27150%27%20height%3D%270%27%20viewBox%3D%270%200%20150%200%27%3E%3Crect%20width%3D%27150%27%20height%3D%270%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-orig-src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2023\/02\/Simone-Gayed-Said-.jpeg\" alt=\"Image\" class=\"lazyload artefact-elegant-image align-left article-author-image\" style=\"width: 150px; border-radius: 54% 46% 77% 23% \/ 74% 40% 60% 26%; overflow: hidden;\" width=\"150\" height=\"auto\" \/><div class=\"fusion-title title fusion-title-2 fusion-sep-none fusion-title-text fusion-title-size-three article-author-name-title\" style=\"--awb-margin-bottom-small:8px;\"><h3 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:20;line-height:1.2;\"><div class=\"l di\">\n<div class=\"dr bw l qn qo ds n\">Simone Gayed disse<\/div>\n<\/div><\/h3><\/div><div class=\"fusion-text fusion-text-1 article-author-description\" style=\"--awb-text-transform:none;\"><p>Engenheiro de aprendizado de m\u00e1quina, Artefact Benelux<\/p>\n<\/div><\/div><\/div><\/div><\/div><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-2 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-margin-top:40px;--awb-margin-bottom:40px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-center fusion-flex-justify-content-center fusion-flex-content-wrap\" style=\"max-width:calc( 1440px + 20px );margin-left: calc(-20px \/ 2 );margin-right: calc(-20px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-1 fusion_builder_column_1_1 1_1 fusion-flex-column fusion-flex-align-self-center fusion-column-inner-bg-wrapper\" style=\"--awb-padding-top:20px;--awb-padding-right:20px;--awb-padding-bottom:20px;--awb-padding-left:20px;--awb-overflow:hidden;--awb-inner-bg-size:cover;--awb-border-color:rgba(10,17,40,0.1);--awb-border-top:1px;--awb-border-right:1px;--awb-border-bottom:1px;--awb-border-left:1px;--awb-border-style:solid;--awb-border-radius:4px 4px 4px 4px;--awb-inner-bg-border-radius:4px 4px 4px 4px;--awb-inner-bg-overflow:hidden;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:10px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:10px;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:10px;--awb-spacing-left-medium:10px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:10px;--awb-spacing-left-small:10px;\"><span class=\"fusion-column-inner-bg hover-type-none\"><a class=\"fusion-column-anchor\" href=\"https:\/\/medium.com\/artefact-engineering-and-data-science\/how-we-deployed-a-simple-wildlife-monitoring-system-on-google-cloud-78b847cab10c\" rel=\"noopener noreferrer\" target=\"_blank\"><span class=\"fusion-column-inner-bg-image\"><\/span><\/a><\/span><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-center fusion-content-layout-row fusion-flex-align-items-center\"><div class=\"fusion-text fusion-text-2\"><p><u>Leia nosso artigo sobre<\/u><\/p>\n<\/div><div class=\"fusion-image-element\" style=\"--awb-margin-right:20px;--awb-margin-left:20px;--awb-max-width:150px;--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-1 hover-type-none\"><img decoding=\"async\" width=\"4000\" height=\"992\" title=\"M\u00e9dio Blog\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog.png\" data-orig-src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog.png\" alt class=\"lazyload img-responsive wp-image-60582\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%274000%27%20height%3D%27992%27%20viewBox%3D%270%200%204000%20992%27%3E%3Crect%20width%3D%274000%27%20height%3D%27992%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog-200x50.png 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog-400x99.png 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog-600x149.png 600w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog-800x198.png 800w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog-1200x298.png 1200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/04\/Medium-Blog.png 4000w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 4000px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-3\"><p>.<\/p>\n<\/div><\/div><\/div><\/div><\/div><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-3 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:calc( 1440px + 20px );margin-left: calc(-20px \/ 2 );margin-right: calc(-20px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-2 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:10px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:10px;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:10px;--awb-spacing-left-medium:10px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:10px;--awb-spacing-left-small:10px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-text fusion-text-4 description\"><p>Como Artefact, n\u00f3s nos preocupamos em impactar positivamente as pessoas, o meio ambiente e a comunidade. \u00c9 por isso que temos o compromisso de fazer parcerias com organiza\u00e7\u00f5es sem fins lucrativos que fazem desses valores os elementos b\u00e1sicos de sua vis\u00e3o.<br \/>\nPor isso, colaboramos com a Smart Parks, uma empresa holandesa que fornece solu\u00e7\u00f5es avan\u00e7adas de sensores para conservar a vida selvagem amea\u00e7ada e gerenciar com efici\u00eancia as \u00e1reas dos parques, fornecendo tecnologia de ponta.<\/p>\n<p>Nesta s\u00e9rie de publica\u00e7\u00f5es, narramos nossa jornada no projeto e na cria\u00e7\u00e3o de um sistema de ML para usar a m\u00eddia das armadilhas fotogr\u00e1ficas do Smart Parks. Em particular, o objetivo do projeto \u00e9 usar uma abordagem de ML para ingerir o data proveniente das armadilhas fotogr\u00e1ficas e, em seguida, fornecer insights, como a presen\u00e7a de pessoas ou tipos espec\u00edficos de animais nas imagens ou v\u00eddeos capturados pelas c\u00e2meras. Essas informa\u00e7\u00f5es s\u00e3o usadas pelos guardas florestais do parque para proteger melhor a vida selvagem e detectar mais rapidamente poss\u00edveis perigos, como ca\u00e7adores ilegais.<\/p>\n<\/div><\/div><\/div><\/div><\/div><article class=\"fusion-fullwidth fullwidth-box fusion-builder-row-4 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-justify-content-center fusion-flex-content-wrap\" style=\"max-width:calc( 1440px + 20px );margin-left: calc(-20px \/ 2 );margin-right: calc(-20px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-3 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:10px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:10px;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:10px;--awb-spacing-left-medium:10px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:10px;--awb-spacing-left-small:10px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-3 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Introdu\u00e7\u00e3o<\/h2><\/div><div class=\"fusion-text fusion-text-5\"><p><a href=\"https:\/\/www.smartparks.org\/\" target=\"_blank\" rel=\"noopener\">Parques inteligentes<\/a> precisava de um sistema de monitoramento da vida selvagem capaz de realizar as seguintes tarefas:<\/p>\n<\/div><ul style=\"--awb-line-height:27.2px;--awb-icon-width:27.2px;--awb-icon-height:27.2px;--awb-icon-margin:11.2px;--awb-content-margin:38.4px;\" class=\"fusion-checklist fusion-checklist-1 fusion-checklist-default type-icons paddingList dark-text\"><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">Ingerir a m\u00eddia (imagens e\/ou v\u00eddeos) proveniente de armadilhas fotogr\u00e1ficas em um \u00fanico local<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p>Detectar automaticamente a presen\u00e7a de humanos e animais na m\u00eddia<\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p>Acesse as previs\u00f5es no Earth Rangers, um aplicativo usado para gerenciar os parques e sua vida selvagem<\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p>Monitore a m\u00eddia proveniente das armadilhas fotogr\u00e1ficas<\/p>\n<\/div><\/li><\/ul><div class=\"fusion-text fusion-text-6\"><p>Nosso princ\u00edpio orientador aqui era o de favorecer a velocidade. Assim, quando come\u00e7amos, nossa \u00fanica prioridade era implementar um produto b\u00e1sico, mas totalmente funcional, de ponta a ponta o mais r\u00e1pido poss\u00edvel.<\/p>\n<p>Este ser\u00e1 o primeiro artigo de muitos e se concentrar\u00e1 no contexto do projeto, na vis\u00e3o de alto n\u00edvel do sistema projetado e nas vantagens de nossa solu\u00e7\u00e3o baseada no cloud. Nos pr\u00f3ximos artigos, vamos nos aprofundar em como conectar as armadilhas fotogr\u00e1ficas ao\u00a0<a href=\"https:\/\/cloud.google.com\/\" target=\"_blank\" rel=\"noopener\">Google Cloud Platform<\/a>\u00a0e endpoints externos usando uma ferramenta chamada\u00a0<a href=\"https:\/\/nodered.org\/\" target=\"_blank\" rel=\"noopener\">Node-RED<\/a>\u00a0e como projetar um aplicativo Web simples usando\u00a0<a href=\"https:\/\/streamlit.io\/\" target=\"_blank\" rel=\"noopener\">Streamlit<\/a>\u00a0para gerenciar as armadilhas fotogr\u00e1ficas colocadas nos parques.<\/p>\n<p>Vamos come\u00e7ar!<\/p>\n<\/div><div class=\"fusion-title title fusion-title-4 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Armadilhas para c\u00e2meras<\/h2><\/div><div class=\"fusion-text fusion-text-7\"><p>Antes de come\u00e7armos, vamos rever rapidamente o que s\u00e3o armadilhas fotogr\u00e1ficas e como elas podem ser usadas para apoiar a prote\u00e7\u00e3o e a conserva\u00e7\u00e3o dos animais.<\/p>\n<p>As armadilhas fotogr\u00e1ficas s\u00e3o dispositivos que possuem sensores embutidos para que, quando uma atividade for detectada na frente delas, uma foto ou um v\u00eddeo seja imediatamente capturado. Elas permitem que os guardas florestais e bi\u00f3logos da vida selvagem vejam nossas esp\u00e9cies semelhantes sem interferir em seu comportamento normal.<\/p>\n<p>Percorrer os parques e coletar informa\u00e7\u00f5es \u00e9 uma t\u00e9cnica v\u00e1lida, mas \u00e9 um processo caro, trabalhoso e que exige muitas pessoas. Al\u00e9m disso, h\u00e1 tamb\u00e9m o risco de encontrar animais selvagens perigosos ou, pior ainda, ca\u00e7adores ilegais.<\/p>\n<p>Embora diferentes t\u00e9cnicas de coleta de data tenham diferentes desvantagens, as armadilhas fotogr\u00e1ficas s\u00e3o uma excelente fonte. A grande vantagem das armadilhas fotogr\u00e1ficas \u00e9 que elas funcionam de forma cont\u00ednua e silenciosa e podem registrar data muito precisos sem perturbar o objeto fotografado. Elas podem ser \u00fateis tanto para monitorar sub-repticiamente poss\u00edveis atividades il\u00edcitas quanto para quantificar o n\u00famero de esp\u00e9cies diferentes em uma \u00e1rea e determinar seus padr\u00f5es de comportamento e atividade.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-5 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">Google Cloud Platform<\/h2><\/div><div class=\"fusion-text fusion-text-8\"><p>Para o armazenamento e o gerenciamento de m\u00eddia das armadilhas da c\u00e2mera, optamos por usar uma solu\u00e7\u00e3o baseada em cloud, mais especificamente, o Google Cloud Platform.<\/p>\n<p>O Google oferece solu\u00e7\u00f5es de armazenamento como\u00a0<a href=\"https:\/\/cloud.google.com\/storage\" target=\"_blank\" rel=\"noopener\">Armazenamento na nuvem do Google<\/a>, armazenamento de objetos com cache de borda integrado para armazenar data n\u00e3o estruturado, solu\u00e7\u00f5es de computa\u00e7\u00e3o como\u00a0<a href=\"https:\/\/cloud.google.com\/functions\" target=\"_blank\" rel=\"noopener\">Fun\u00e7\u00f5es de nuvem<\/a>, O senhor pode usar o Functions as a Service para executar c\u00f3digo orientado por eventos e tamb\u00e9m oferece APIs de IA \u00fateis, por exemplo:<\/p>\n<\/div><ul style=\"--awb-line-height:27.2px;--awb-icon-width:27.2px;--awb-icon-height:27.2px;--awb-icon-margin:11.2px;--awb-content-margin:38.4px;\" class=\"fusion-checklist fusion-checklist-2 fusion-checklist-default type-icons paddingList dark-text\"><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\"><a href=\"https:\/\/cloud.google.com\/vision\/?utm_source=google&amp;utm_medium=cpc&amp;utm_campaign=emea-nl-all-en-dr-bkws-all-all-trial-e-gcp-1011340&amp;utm_content=text-ad-none-any-DEV_c-CRE_171812959819-ADGP_Hybrid%20%7C%20BKWS%20-%20EXA%20%7C%20Txt%20~%20AI%20%26%20ML%20~%20Vision%20AI%23v3-KWID_43700071640826088-kwd-279066026141-userloc_1010659&amp;utm_term=KW_vision%20api%20google-NET_g-PLAC_&amp;gclid=Cj0KCQiA-JacBhC0ARIsAIxybyNkgzlYO5iQTQsDa4g6RZHolbuV-oWWD0wWpjPzbv-6ouaQQeO2oDAaAkgDEALw_wcB&amp;gclsrc=aw.ds\" target=\"_blank\" rel=\"noopener\">API do Cloud Vision<\/a>\u00a0- Servi\u00e7o de an\u00e1lise de imagens baseado em aprendizado de m\u00e1quina<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\"><a href=\"https:\/\/cloud.google.com\/video-intelligence\" target=\"_blank\" rel=\"noopener\">Intelig\u00eancia de v\u00eddeo na nuvem<\/a>\u00a0- Servi\u00e7o de an\u00e1lise de v\u00eddeo baseado em aprendizado de m\u00e1quina<\/div><\/li><\/ul><div class=\"fusion-text fusion-text-9\"><p id=\"73b3\" data-selectable-paragraph=\"\">Ter todos esses componentes em um \u00fanico ambiente unificado foi a solu\u00e7\u00e3o ideal para n\u00f3s e nos ajudou a fornecer uma solu\u00e7\u00e3o funcional em pouco tempo.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-6 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">O fluxo de trabalho<\/h2><\/div><div class=\"fusion-text fusion-text-10\"><p>Em primeiro lugar, a m\u00eddia \u00e9 carregada em um bucket do Google Cloud Storage; como exatamente isso acontece ser\u00e1 discutido no segundo artigo desta s\u00e9rie. O bucket \u00e9 organizado em pastas, uma para cada armadilha de c\u00e2mera. Depois que um arquivo \u00e9 carregado, uma fun\u00e7\u00e3o do Google Cloud \u00e9 acionada imediatamente, e essa fun\u00e7\u00e3o cuida das seguintes tarefas:<\/p>\n<\/div><ul style=\"--awb-line-height:27.2px;--awb-icon-width:27.2px;--awb-icon-height:27.2px;--awb-icon-margin:11.2px;--awb-content-margin:38.4px;\" class=\"fusion-checklist fusion-checklist-3 fusion-checklist-default type-icons paddingList dark-text\"><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">Leia a m\u00eddia carregada<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p>Chame a API do Cloud Vision ou do Cloud Video Intelligence para recuperar as previs\u00f5es<\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p>Arquivar as respostas da API em outro Cloud Storage Bucket<\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p>Enviar as previs\u00f5es para um endpoint fora do GCP<\/p>\n<\/div><\/li><\/ul><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-2 hover-type-none\"><img decoding=\"async\" width=\"1400\" height=\"282\" title=\"elefante1\" src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2023\/02\/elephant1.webp\" data-orig-src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2023\/02\/elephant1.webp\" alt class=\"lazyload img-responsive wp-image-68771\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%271400%27%20height%3D%27282%27%20viewBox%3D%270%200%201400%20282%27%3E%3Crect%20width%3D%271400%27%20height%3D%27282%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-srcset=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2023\/02\/elephant1-200x40.webp 200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2023\/02\/elephant1-400x81.webp 400w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2023\/02\/elephant1-600x121.webp 600w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2023\/02\/elephant1-800x161.webp 800w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2023\/02\/elephant1-1200x242.webp 1200w, https:\/\/www.artefact.com\/\/wp-content\/uploads\/2023\/02\/elephant1.webp 1400w\" data-sizes=\"auto\" data-orig-sizes=\"(max-width: 640px) 100vw, 1400px\" \/><\/span><\/div><div class=\"fusion-text fusion-text-11\"><p>Essa arquitetura oferece v\u00e1rias vantagens:<\/p>\n<\/div><ul style=\"--awb-line-height:27.2px;--awb-icon-width:27.2px;--awb-icon-height:27.2px;--awb-icon-margin:11.2px;--awb-content-margin:38.4px;\" class=\"fusion-checklist fusion-checklist-4 fusion-checklist-default type-icons paddingList dark-text\"><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><strong>Escalabilidade<\/strong>: Gra\u00e7as ao uso do Cloud Functions, a solu\u00e7\u00e3o pode ser dimensionada automaticamente com base no n\u00famero de solicita\u00e7\u00f5es (ou seja, o n\u00famero de m\u00eddias carregadas no bucket de entrada do Cloud Storage ao mesmo tempo)<\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><strong>Armazenamento barato e dur\u00e1vel<\/strong>: O armazenamento n\u00e3o estruturado data no Google Cloud Storage \u00e9 bastante econ\u00f4mico (apenas $0,026 por GB-m\u00eas para o n\u00edvel de armazenamento Standard) e, al\u00e9m disso, oferece a melhor durabilidade de objetos da categoria em um determinado ano<\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><strong>Automa\u00e7\u00e3o<\/strong>: O uso de todos esses servi\u00e7os juntos nos permite ter um pipeline totalmente automatizado, sem necessidade de interven\u00e7\u00e3o humana. Desde a ingest\u00e3o do data at\u00e9 a recupera\u00e7\u00e3o de previs\u00f5es, tudo \u00e9 executado automaticamente assim que uma nova m\u00eddia \u00e9 carregada<\/p>\n<\/div><\/li><\/ul><div class=\"fusion-title title fusion-title-7 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">APIs do Cloud Vision e do Cloud Video Intelligence<\/h2><\/div><div class=\"fusion-text fusion-text-12\"><p>O uso do aprendizado de m\u00e1quina, especificamente da vis\u00e3o computacional, para identificar automaticamente pessoas e animais em imagens ou v\u00eddeos teve avan\u00e7os significativos nos \u00faltimos anos e, atualmente, \u00e9 amplamente considerado um \u201cdivisor de \u00e1guas\u201d pelos pesquisadores da vida selvagem. Vamos nos concentrar mais nas APIs usadas.<\/p>\n<p><a href=\"https:\/\/cloud.google.com\/vision\/docs\" target=\"_blank\" rel=\"noopener\">API de vis\u00e3o<\/a>\u00a0e\u00a0<a href=\"https:\/\/cloud.google.com\/video-intelligence\" target=\"_blank\" rel=\"noopener\">API de intelig\u00eancia de v\u00eddeo<\/a>\u00a0oferecem modelos avan\u00e7ados de aprendizado de m\u00e1quina pr\u00e9-treinados por meio de APIs REST e RPC. A primeira foi criada para trabalhar com imagens, enquanto a segunda, como o nome sugere, trabalha com v\u00eddeos. Ambos s\u00e3o capazes de reconhecer automaticamente um grande n\u00famero de objetos, lugares e a\u00e7\u00f5es.<\/p>\n<p>Para este projeto, nos concentramos principalmente nesses tr\u00eas recursos fornecidos pelas APIs:<\/p>\n<\/div><ul style=\"--awb-line-height:27.2px;--awb-icon-width:27.2px;--awb-icon-height:27.2px;--awb-icon-margin:11.2px;--awb-content-margin:38.4px;\" class=\"fusion-checklist fusion-checklist-5 fusion-checklist-default type-icons paddingList dark-text\"><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><strong>Detec\u00e7\u00e3o de r\u00f3tulos<\/strong>: Ter uma ideia das entidades (por exemplo, animais, pessoas, ve\u00edculos) presentes na m\u00eddia. Com base nisso, seria poss\u00edvel criar regras que acionassem um alarme na presen\u00e7a de um conjunto espec\u00edfico de entidades<\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><strong>Detec\u00e7\u00e3o\/rastreamento de objetos<\/strong>: Para ter uma ideia mais precisa do local dos animais\/pessoas detectados na m\u00eddia. Diferentemente do caso da detec\u00e7\u00e3o de r\u00f3tulos, aqui tamb\u00e9m obtemos as anota\u00e7\u00f5es de caixa das detec\u00e7\u00f5es<\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><strong>Detec\u00e7\u00e3o de rostos\/pessoas<\/strong>: Para obter mais informa\u00e7\u00f5es sobre as pessoas detectadas, por exemplo, para entender suas emo\u00e7\u00f5es ou extrair suas roupas. Essas informa\u00e7\u00f5es adicionais poderiam ser usadas para distinguir os ca\u00e7adores furtivos das pessoas normais<\/p>\n<\/div><\/li><\/ul><div class=\"fusion-text fusion-text-13\"><p>O senhor pode brincar com a API do Vision apenas fazendo o upload de sua imagem pelo\u00a0<a class=\"ae it\" href=\"https:\/\/cloud.google.com\/vision\/docs\/drag-and-drop\" target=\"_blank\" rel=\"noopener\">aqui<\/a>.<\/p>\n<\/div><div class=\"fusion-image-element\" style=\"--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-3 hover-type-none\"><img decoding=\"async\" width=\"1200\" height=\"646\" title=\"elefante2\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%271200%27%20height%3D%27646%27%20viewBox%3D%270%200%201200%20646%27%3E%3Crect%20width%3D%271200%27%20height%3D%27646%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-orig-src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2023\/02\/elephant2.gif\" alt class=\"lazyload img-responsive wp-image-68772\"\/><\/span><\/div><div class=\"fusion-title title fusion-title-8 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-bottom-small:8px;\"><h2 class=\"fusion-title-heading title-heading-left fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:50;line-height:1.2;\">A trilha \u00e0 frente<\/h2><\/div><div class=\"fusion-text fusion-text-14\"><p>A jornada at\u00e9 agora \u00e9 a base para a jornada empolgante e impactante que temos pela frente. Com as ferramentas b\u00e1sicas instaladas em um futuro pr\u00f3ximo, poderemos criar muito valor n\u00e3o apenas para os Smart Parks, mas tamb\u00e9m para a conserva\u00e7\u00e3o da vida selvagem e muito mais!<\/p>\n<p>As pr\u00f3ximas etapas envolver\u00e3o essas \u00e1reas amplas de trabalho:<\/p>\n<\/div><ul style=\"--awb-line-height:27.2px;--awb-icon-width:27.2px;--awb-icon-height:27.2px;--awb-icon-margin:11.2px;--awb-content-margin:38.4px;\" class=\"fusion-checklist fusion-checklist-6 fusion-checklist-default type-icons paddingList dark-text\"><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<div>\n<p><strong>Experimenta\u00e7\u00e3o de modelos<\/strong>: At\u00e9 o momento, fizemos experi\u00eancias apenas com APIs ou modelos pr\u00e9-treinados, mas, no futuro, seria interessante criar um conjunto de imagens\/v\u00eddeos coletados pelas armadilhas fotogr\u00e1ficas. Rotul\u00e1-lo, manualmente ou usando o sistema que acabamos de apresentar, e depois us\u00e1-lo para treinar modelos personalizados de vis\u00e3o computacional para obter melhor precis\u00e3o<\/p>\n<\/div>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<div>\n<p><strong>Implementa\u00e7\u00e3o de casos de uso<\/strong>: O fato de j\u00e1 termos uma solu\u00e7\u00e3o totalmente automatizada nos permitir\u00e1 focar mais no desenvolvimento de casos de uso direcionados, ou seja, pensar realmente em como explorar as informa\u00e7\u00f5es recuperadas para causar impacto e ajudar os guardas florestais e todos os volunt\u00e1rios a proteger a vida selvagem dos parques<\/p>\n<\/div>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon awb-icon-check\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<div>\n<p><strong>IA de borda<\/strong>: No momento, a velocidade de execu\u00e7\u00e3o do nosso loop de previs\u00e3o \u00e9 satisfat\u00f3ria para o nosso caso de uso (alguns minutos). Ainda temos \u00e1reas de melhoria para nos aproximarmos de uma solu\u00e7\u00e3o em tempo real. A IA de borda, com um modelo implantado e executado mais pr\u00f3ximo do hardware real da armadilha da c\u00e2mera, \u00e9 uma op\u00e7\u00e3o que ajudaria a evitar viagens de ida e volta ao cloud<\/p>\n<\/div>\n<div class=\"ab cl lr ls go lt\" role=\"separator\"><\/div>\n<\/div><\/li><\/ul><div class=\"fusion-text fusion-text-15\"><p>Neste primeiro artigo, discutimos como criamos nosso pipeline escalon\u00e1vel totalmente automatizado no Google Cloud, o que nos permitiu ingerir m\u00eddia e usar APIs de aprendizado de m\u00e1quina para extrair insights dela. Ele fornece uma linha de base s\u00f3lida, f\u00e1cil e r\u00e1pida de implementar para qualquer tipo de projeto que envolva o consumo de m\u00eddia e o uso do aprendizado de m\u00e1quina para extrair insights deles.<\/p>\n<p>Obrigado por ler e vejo o senhor no <a href=\"https:\/\/www.artefact.com\/br\/blog\/\">pr\u00f3ximos artigos<\/a> da s\u00e9rie, onde explicaremos mais detalhadamente como a arquitetura apresentada \u00e9 efetivamente conectada \u00e0s armadilhas fotogr\u00e1ficas, e onde veremos o aplicativo da web projetado para gerenci\u00e1-las, portanto, fique atento!<\/p>\n<p><em>Agradecimentos especiais a Ma\u00ebl Deschamps por sua ajuda na revis\u00e3o do conte\u00fado deste post e a Tim van Dam, da Smart Parks, por seu apoio durante o projeto. Os senhores s\u00e3o demais!<\/em><\/p>\n<\/div><\/div><\/div><\/div><\/article><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-5 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-margin-top:40px;--awb-margin-bottom:40px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-center fusion-flex-justify-content-center fusion-flex-content-wrap\" style=\"max-width:calc( 1440px + 20px );margin-left: calc(-20px \/ 2 );margin-right: calc(-20px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-4 fusion_builder_column_1_1 1_1 fusion-flex-column fusion-flex-align-self-center\" style=\"--awb-padding-top:40px;--awb-padding-right:40px;--awb-padding-bottom:40px;--awb-padding-left:40px;--awb-overflow:hidden;--awb-bg-position:left center;--awb-bg-size:cover;--awb-border-color:rgba(10,17,40,0.1);--awb-border-style:solid;--awb-border-radius:4px 4px 4px 4px;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:10px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:10px;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:10px;--awb-spacing-left-medium:10px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:10px;--awb-spacing-left-small:10px;\"><div class=\"fusion-column-wrapper lazyload fusion-column-has-shadow fusion-flex-justify-content-center fusion-content-layout-column fusion-column-has-bg-image\" data-bg-url=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/background.jpg\" data-bg=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/background.jpg\"><div class=\"fusion-image-element\" style=\"text-align:center;--awb-margin-right:20px;--awb-margin-left:20px;--awb-max-width:150px;--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\"fusion-imageframe imageframe-none imageframe-4 hover-type-none\"><img decoding=\"async\" width=\"72\" height=\"41\" title=\"m\u00e9dio\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2772%27%20height%3D%2741%27%20viewBox%3D%270%200%2072%2041%27%3E%3Crect%20width%3D%2772%27%20height%3D%2741%27%20fill-opacity%3D%220%22%2F%3E%3C%2Fsvg%3E\" data-orig-src=\"https:\/\/www.artefact.com\/\/wp-content\/uploads\/2021\/03\/medium.png\" alt class=\"lazyload img-responsive wp-image-60927\"\/><\/span><\/div><div class=\"fusion-title title fusion-title-9 fusion-sep-none fusion-title-center fusion-title-text fusion-title-size-three\" style=\"--awb-margin-top:20px;--awb-margin-bottom:0px;--awb-margin-bottom-small:8px;\"><h3 class=\"fusion-title-heading title-heading-center fusion-responsive-typography-calculated\" style=\"margin:0;--fontSize:20;line-height:1.2;\">M\u00e9dia Blog por Artefact.<\/h3><\/div><div class=\"fusion-text fusion-text-16\" style=\"--awb-content-alignment:center;\"><p>Este artigo foi publicado inicialmente no <strong>Medium.com<\/strong>.<br \/>\nSiga-nos em nosso Medium Blog !<\/p>\n<\/div><div style=\"text-align:center;\"><a class=\"fusion-button button-flat button-medium button-default fusion-button-default button-1 fusion-button-default-span fusion-button-default-type\" target=\"_blank\" rel=\"noopener noreferrer\" href=\"https:\/\/medium.com\/artefact-engineering-and-data-science\/how-we-deployed-a-simple-wildlife-monitoring-system-on-google-cloud-78b847cab10c\"><span class=\"fusion-button-text awb-button__text awb-button__text--default\">Leia nosso artigo<\/span><\/a><\/div><\/div><\/div><\/div><\/div><\/p>","protected":false},"excerpt":{"rendered":"<p>Colaboramos com a Smart Parks, uma empresa holandesa que oferece solu\u00e7\u00f5es avan\u00e7adas de sensores para a conserva\u00e7\u00e3o de esp\u00e9cies selvagens amea\u00e7adas de extin\u00e7\u00e3o\u2026<\/p>","protected":false},"featured_media":68770,"parent":0,"template":"","meta":{"_acf_changed":false,"ep_exclude_from_search":false},"blog-category":[21939],"blog-language":[2991],"class_list":["post-68768","blog","type-blog","status-publish","has-post-thumbnail","hentry","blog-category-medium","blog-language-en"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.artefact.com\/br\/wp-json\/wp\/v2\/blog\/68768","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.artefact.com\/br\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.artefact.com\/br\/wp-json\/wp\/v2\/types\/blog"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.artefact.com\/br\/wp-json\/wp\/v2\/media\/68770"}],"wp:attachment":[{"href":"https:\/\/www.artefact.com\/br\/wp-json\/wp\/v2\/media?parent=68768"}],"wp:term":[{"taxonomy":"blog-category","embeddable":true,"href":"https:\/\/www.artefact.com\/br\/wp-json\/wp\/v2\/blog-category?post=68768"},{"taxonomy":"blog-language","embeddable":true,"href":"https:\/\/www.artefact.com\/br\/wp-json\/wp\/v2\/blog-language?post=68768"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}