Reconhecimento de Imagem em Python

Este programa permite detectar faces em um sistema de CFTV, permitindo a o posterior reconhecimento.

Roda em linux e Windows

import sys
import numpy as np
import cv2

#Pega o nome do arquivo a ser analisado
Arquivo = sys.argv[1]

# load an color image in grayscale
img = cv2.imread(Arquivo)
print("Carregado:%s",Arquivo)

classificador = cv2.CascadeClassifier("/projetos/python/cv/face.xml")



imagemCinza = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

facesDetectadas = classificador.detectMultiScale(imagemCinza, scaleFactor=1.5, minSize=(100,100))

for (x,y,l, a ) in facesDetectadas:
 print("Face:",x,y)

cv2.destroyAllWindows()
print("Finalizou")

 

Este exemplo simples é utilizado no sistema de identificação de CFTV de minha casa.

 

Python Exemplo de Arquivo

Exemplo de criação de Arquivo em Python

 

#Criando Python estrutura de Arquivos

#Estrutura de Log
#criado por Marcelo Maurin Martins

import sys

 

#Abre log
def AbreLog():
return(open(“analisa.log”,”r”))

 

def FechaLog(Log):
Log.close()

def processalinha(linha):
output = linha #por enquanto nao faz nada
print(“Linha:”,linha)
return output

def LeLog(Log):
for linha in Log.readlines():
processalinha(linha)

def CriaLog():
Log = open(“analisa.log”,”w”)
for conta in [1,2,3,4,5,6,7,8,9,10]:
Log.write(“teste\n”)
FechaLog(Log)

def main():
print(“Programa de analise de Dados”)
CriaLog()
Log = AbreLog()
LeLog(Log)
FechaLog(Log)

#inicia
main()

Exemplo de dicionário em Python

Segue exemplo de Dicionário em Python

#criado por marcelo maurin
 #14/04/2018

dic_Apps={
 1:"Arduino",
 2:"Delphi",
 3:"C##",
 4:"c++",
 5:"PYTHON"
 }

print("Imprimindo:")
 print("Dicionario:",dic_Apps)
 print("Chaves:",dic_Apps.keys())
 print("Valores:",dic_Apps.values())
 print("Todos itens:",dic_Apps.items())

for chave in dic_Apps.keys():
 print("chave:",chave)
 for valor in dic_Apps.values():
 print("Valor:",valor)
 for item in dic_Apps.items():
 print("Item:",item)

Programação PHP Integrada ao R

O Desenvolvimento e analise de dados não é tarefa fácil.

Integrar o R com outras linguagens é o segredo para analisar grande volume de dados em tempo real, gerando vetores e gráficos.

Um exemplo deste é a Webapi que criei para linguagem PHP:

http://maurinsoft.com.br:8090/ws/graphic.php

Esta web api, gera um arquivo de imagem com um gráfico.

Ao chamar o URL, é chamado em tempo de execução um script em R, que gera a imagem e armazena em um repositório.

É possível criar diversos scripts com o mesmo URL, basta indicar nos parametros o script em R que deverá ser rodado.

No caso do default.R, lê as informações processadas do sensor de chuva, que aponta quando ocorre precipitação de chuva em minha casa.

Valore altos de 900 até 1024, indicam tempo seco.

A imagem é armazenada neste endereço.

Neste exemplo, o R processou o seguinte comando SQL

select

devvalue, dtupdate

from logdevpar

where

devparname=’dev3′

and iddevice=’2′

and (dtupdate>=( DATE_SUB(CONCAT(CURDATE(), ‘ 00:00:00’), INTERVAL 1 DAY) ))

order by dtupdate

limit 100

 

Exemplo de script de Tabela

Segue um exemplo criado por mim, para criar uma tabela no Mysql

 

#Criando Tabela Parametros de Devices

use casadb;

CREATE TABLE devpar (

iddevpar INT NOT NULL AUTO_INCREMENT PRIMARY KEY, iddevice int not null,

devparname VARCHAR(25),

devparobs  VARCHAR(500),

devvalue VARCHAR(500)

);

#Cria Indices para pesquisa

CREATE INDEX idx_devpar_iddevpar ON devpar(iddevpar);

CREATE INDEX idx_devpar_iddevice ON devpar(iddevice);

#Cria chaves estrangeiras

ALTER TABLE devpar

ADD CONSTRAINT fk_devpar_iddevice

FOREIGN KEY ( iddevice )

REFERENCES devices ( iddevice );

Escolhendo o melhor tipo de grafico em R

A seleção de um bom exemplo de gráfico pode te auxiliar a provar ou apresentar uma idéia ou informação.Ref.: https://www.ibpad.com.br/blog/analise-de-dados/qual-e-o-grafico-mais-adequado/

Segue documento que visa auxiliar esta escolha:

http://maurinsoft.com.br/download/Tipos de Grafico R.pdf

 

Exemplo de Conexão com RStudio em Mysql

Segue um exemplo prático de obtenção de dados do Banco Mysql usando R

#install.packages(“dbConnect”,type=”source”)
library(RMySQL)
library(dbConnect)

con = dbConnect(MySQL(), user=’user’, password=’passwrd’, dbname=’SMSdb’, host=’192.168.1.211′)

dbListTables(con)

#Create table in R from Mysql table
myQuery = “select * from jobs”

str(df)

telefone= “16981434112”

 

#my_d_query=paste(“select * from jobs where telefone = ‘”,telefone,”‘ “)
my_d_query=paste(“select * from jobs “)
out_df= dbGetQuery(con,my_d_query)

dbWriteTable(con,”out_df”,out_df, overwrite=TRUE, append=FALSE)
dbDisconnect(con)

 

Instalando Mysql Conection em RStudio

O Procedimento a seguir foi extraído do seguinte artigo com variances:

http://db.rstudio.com/databases/my-sql/

Em Tools > Install Packages instale os seguintes pacotes:

  • RMySQL
  • devtools
  • dbConnect

Instale o ODBC e a lib do Mysql

Restart RStudio

Segue exemplo de conexão com Mysql

#install.packages(“dbConnect”,type=”source”)
library(RMySQL)
library(dbConnect)

con = dbConnect(MySQL(), user='<user>’, password='<password>’, dbname=’SMSdb’, host=’192.168.1.211′)

dbListTables(con)

#Create table in R from Mysql table
myQuery = “select * from jobs”

str(df)

telefone= “16981434112”

 

my_d_query=paste(“select * from jobs where telefone = ‘”,telefone,”‘ “)
out_df= dbGetQuery(con,my_d_query)

dbWriteTable(con,”out_df”,out_df, overwrite=TRUE, append=FALSE)
dbDisconnect(con)