
Kit de desenvolvimento de software Python
Manual do usuário

Kit de desenvolvimento de software Python
PCO pede que você leia atentamente e siga as instruções deste documento.
Para qualquer dúvida ou comentário, não hesite em contactar-nos a qualquer momento.
telefone: +49 (0) 9441 2005 50
fax: +49 (0) 9441 2005 20
endereço postal: Excelitas PCO GmbH Donaupark 11 93309 Kelheim, Alemanha
e-mail: info@pco.de
web: www.pco.de
manual do usuário pco.python 0.1.7
Lançado em dezembro de 2021
© Copyright Excelitas PCO GmbH
Este trabalho está licenciado sob a Licença Creative Commons Atribuição-Sem Derivados 4.0 Internacional. Para view uma cópia desta licença, visite http://creativecommons.org/licenses/by-nd/4.0/ ou envie uma carta para Creative Commons, PO Box 1866, Mountain View, CA 94042, EUA.
Em geral
O pacote Python pco oferece todas as funções para trabalhar com câmeras pco baseadas no atual pco.sdk. Todas as bibliotecas compartilhadas para comunicação com a câmera e posterior processamento de imagens estão incluídas.
- Classe de câmera fácil de usar
- API poderosa para pco.sdk
- Gravação e processamento de imagens com gravador pco
1.1 Instalação
Instalar a partir do pypi (recomendado):
$ pip instalar pco
1.2 Uso básico
importar matplotlib.pyplot como plt
importar PCO
com pco.Camera() como cam:
cam.record()
imagem, meta = cam.image()
plt.imshow(imagem, cmap='cinza')
plt.mostrar()
1.3 Registro de eventos e erros
Para ativar a saída de registro, crie o objeto Camera com o parâmetro debuglevel=.
O nível de depuração pode ser definido como um dos seguintes valores:
- 'off' Desativa todas as saídas.
- 'error' Mostra apenas mensagens de erro.
- 'verbose' Mostra todas as mensagens.
- 'extra detalhado' Mostra todas as mensagens e valores.
O nível de depuração padrão é 'desligado'.
pco.Camera(debuglevel='verbose')
…
[][sdk] get_camera_type: OK.
O tempo opcionalamp= parâmetro ativa um tag na saída impressa. Os valores possíveis são: 'ligado' e 'desligado'. O valor padrão é 'desligado'.
pco.Camera(debuglevel='verbose',timestamp='ligado')
…
[2019-11-25 15:54:15.317855 / 0.016 s] [][sdk] get_camera_type: OK.
Documentação da API
A classe pco.Camera oferece os seguintes métodos:
- record() gera, configura e inicia uma nova instância de gravador.
- stop() interrompe a gravação atual.
- close() fecha a câmera ativa atual e libera os recursos ocupados.
- image() retorna uma imagem do gravador como um array numpy.
- images() retorna todas as imagens gravadas do gravador como uma lista de arrays numpy.
- image_average() retorna a média da imagem. Esta imagem é calculada a partir de todas as imagens gravadas no buffer.
- set_exposure_time() define o tempo de exposição da câmera.
- wait_for_first_image() espera pela primeira imagem disponível na memória do gravador.
A classe pco.Camera possui a seguinte variável:
- configuração
A classe pco.Camera possui os seguintes objetos:
- SDK oferece acesso direto a todas as funções subjacentes do pco.sdk.
- gravador oferece acesso direto a todas as funções subjacentes do gravador pco.
2.1 Métodos
Esta seção descreve todos os métodos oferecidos pela classe pco.Camera.
2.1.1 Registro
Descrição Cria, configura e inicia uma nova instância de gravador. Toda a configuração da câmera deve ser definida antes de chamar record(). O comando set_exposure_time() é a única exceção. Esta função não tem efeito no objeto gravador e pode ser acessada durante a gravação.
Protótipo registro def(self, number_of_images=1, mode='sequence'):
Parâmetro
| Nome | Descrição |
| número_de_imagens | Define o número de imagens alocadas no driver. A RAM do PC limita o valor máximo. |
| modo | No modo 'sequência', esta função bloqueia durante a gravação. O gravador para automaticamente quando o número_de_imagens é atingido. No modo 'sequência sem bloqueio', esta função é sem bloqueio. O status deve ser verificado antes de ler uma imagem. Este modo é usado para ler imagens durante a gravação, por exemplo, miniaturas. No modo 'ring buffer' esta função não é bloqueadora. O status deve ser verificado antes de ler uma imagem. O gravador não interrompe a gravação quando o número_de_imagens é atingido. Quando isso acontecer, as imagens mais antigas serão substituídas. No modo 'fifo', esta função não é bloqueadora. O status deve ser verificado antes de ler uma imagem. Quando o número_de_imagens no fifo é atingido, as imagens a seguir são descartadas até que as imagens sejam lidas no fifo. |
Parada 2.1.2
Descrição Interrompe a gravação atual. Nos modos 'ring buffer' e 'fifo', esta função deve ser chamada pelo usuário. Nos modos 'sequência' e 'sequência sem bloqueio', esta função é chamada automaticamente quando o número_de_imagens é atingido.
Protótipo def parar(auto):
2.1.3 Fechar
Descrição Fecha a câmera ativada e libera os recursos bloqueados. Esta função deve ser chamada antes que o aplicativo seja encerrado. Caso contrário, os recursos permanecem ocupados.
Protótipo def fechar(auto):
Esta função é chamada automaticamente se o objeto câmera for criado pela instrução with. Uma chamada explícita para close() não é mais necessária.
com pco.Camera() como cam: # faça algumas coisas
2.1.4 Imagem
Descrição Retorna uma imagem do gravador. O tipo da imagem é numpy.ndarray. Essa matriz é moldada dependendo da resolução e do ROI da imagem.
Protótipo imagem def(self, número_da_imagem=0, roi=Nenhum):
Parâmetro
| Nome | Descrição |
| número_da_imagem | Especifica o número da imagem a ser lida. No modo 'sequência' ou 'sequência sem bloqueio', o índice do gravador corresponde ao número da imagem. Se image_number estiver definido como 0xFFFFFFFF, a última imagem gravada será copiada. Isto permite criar uma pré-visualização ao vivoview durante a gravação. |
| rei | Define a região de interesse. Somente esta região da imagem é copiada para o valor de retorno. |
Example >>> cam.record(número_de_imagens=1, modo='sequência')
>>> imagem, meta = cam.image()
>>> digite(imagem) numpy.ndarray
>>> imagem.forma (2160, 2560)
>>> imagem, metadados = cam.image(roi=(1, 1, 300, 300))
>>> imagem.forma (300, 300)
2.1.5 Imagens
Descrição Retorna todas as imagens gravadas do gravador como uma lista de matrizes numpy.
Protótipo imagens def(self, roi=Nenhum, blocksize=Nenhum):
Parâmetro
| Nome | Descrição |
| rei | Define a região de interesse. Somente esta região da imagem é copiada para o valor de retorno. |
| tamanho do bloco | Define o número máximo de imagens que são retornadas. Este parâmetro só é útil no modo 'fifo' e sob condições especiais. |
Example >>> cam.record(número_de_imagens=20, modo='sequência')
>>> imagens, metadados = cam.images()
>>> len(imagens) 20
>>> para imagem em imagens:
…
print('Média: {:7.2f} DN'.format(image.mean()))
…
Média: 2147.64 DN
Média: 2144.61 DN
…
>>> imagens = cam.images(roi=(1, 1, 300, 300))
>>> imagens[0].forma (300, 300)
2.1.6 Imagem_média
Descrição Retorna a imagem média. Esta imagem é calculada a partir de todas as imagens gravadas no buffer.
Protótipo def image_average(self, roi=Nenhum):
Parâmetro
| Nome | Descrição |
| rei | Define a região de interesse. Somente esta região da imagem é copiada para o valor de retorno. |
Example >>> cam.record(número_de_imagens=100, modo='sequência')
>>> média = cam.image_average()
>>> média = cam.image_average(roi=(1, 1, 300, 300))
2.1.7 Definir_tempo_de_exposição
Descrição Define o tempo de exposição da câmera.
Protótipo def set_exposure_time(self, exposure_time):
Parâmetro
| Nome | Descrição |
| período de exposição | Deve ser fornecido como valor flutuante ou inteiro na unidade 'segundo'. Os valores subjacentes para a função sdk.set_delay_exposure_time(0, 'ms', time, timebase) serão calculados automaticamente. O tempo de atraso é definido como 0. |
Example >>> cam.set_exposure_time(0.001)
>>> cam.set_exposure_time(1e-3)
2.1.8 Espera_pela_primeira_imagem
Descrição Aguarda a primeira imagem disponível na memória do gravador. No modo gravador 'sequência sem bloqueio', 'buffer de anel'. e 'fifo', a função record() retorna imediatamente. Portanto, esta função pode ser usada para aguardar imagens da câmera antes de chamar image(), images() ou image_average().
Protótipo def wait_for_first_image(self):
2.2 Configuração de Variáveis
Os parâmetros da câmera são atualizados alterando a variável de configuração.
cam.configuration = {'tempo de exposição': 10e-3,
'roi': (1, 1, 512, 512),
'tempoamp': 'ascii',
'taxa de pixels': 100_000_000,
'gatilho': 'sequência automática',
'adquirir': 'automático',
'metadados': 'ligado',
'binning': (1, 1)}
A variável só pode ser alterada antes da função record() ser chamada. É um dicionário com um certo número de entradas. Nem todos os elementos possíveis precisam ser especificados. Os seguintesample código apenas altera a 'taxa de pixel' e não afeta nenhum outro elemento da configuração.
com pco.Camera() como cam:
cam.configuration = {'taxa de pixels': 286_000_000}
cam.record()
…
2.3 objetos
Esta seção descreve todos os objetos oferecidos pela classe pco.Camera.
2.3.1 SDK
O objeto SDK permite acesso direto a todas as funções subjacentes do pco.sdk.
>>> cam.sdk.get_temperature()
{'temperatura do sensor': 7.0, 'temperatura da câmera': 38.2, 'temperatura de energia': 36.7}
Todos os valores de retorno das funções SDK são dicionários. Nem todas as configurações da câmera são atualmente cobertas pela classe Camera. Configurações especiais devem ser definidas diretamente chamando a respectiva função SDK.
2.3.2 Gravador
O objeto rec oferece acesso direto a todas as funções subjacentes do gravador pco. Não é necessário chamar diretamente um método de classe de gravador. Todas as funções são totalmente cobertas pelos métodos da classe Camera.
https://www.pco.de/applications/
| pco europa +49 9441 2005 50 info@pco.de pco.de |
PCA América +1 866 678 4566 info@pco-tech.com pco-tech. com |
PCO Ásia +65 6549 7054 info@pco-imaging.com pco-imagem.com |
china +86 512 67634643 info@pco.cn pco.cn |


Documentos / Recursos
![]() | Kit de desenvolvimento de software Python |
Referências
- Escritura - Atribuição-SemDerivações 4.0 Internacional - Creative Commonscreativecommons.org
- mailto:info@pco.depco.de
- PCO | Excelitaswww.pco.de
- PCO | Excelitaswww.pco.de
- Manual do usuáriomanual.tools
