{"id":43831678,"url":"https://github.com/photron-limited/pypuclib","last_synced_at":"2026-04-25T19:32:04.709Z","repository":{"id":45566033,"uuid":"362975062","full_name":"infinicam/pypuclib","owner":"infinicam","description":"python package for INFINICAM SDK","archived":false,"fork":false,"pushed_at":"2025-03-26T07:05:18.000Z","size":34019,"stargazers_count":9,"open_issues_count":7,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-26T08:22:11.873Z","etag":null,"topics":["camera","computer-vision","machine-vision","opencv","python"],"latest_commit_sha":null,"homepage":"https://www.photron.co.jp/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/infinicam.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-04-29T23:42:16.000Z","updated_at":"2025-03-26T07:03:21.000Z","dependencies_parsed_at":"2025-03-26T08:32:08.064Z","dependency_job_id":null,"html_url":"https://github.com/infinicam/pypuclib","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/infinicam/pypuclib","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinicam%2Fpypuclib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinicam%2Fpypuclib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinicam%2Fpypuclib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinicam%2Fpypuclib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/infinicam","download_url":"https://codeload.github.com/infinicam/pypuclib/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/infinicam%2Fpypuclib/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29147522,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T02:39:25.012Z","status":"ssl_error","status_checked_at":"2026-02-06T02:37:22.784Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["camera","computer-vision","machine-vision","opencv","python"],"created_at":"2026-02-06T03:16:23.541Z","updated_at":"2026-04-25T19:32:04.672Z","avatar_url":"https://github.com/infinicam.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pypuclib\n\npypuclib is python package for INFINICAM SDK [PUCLIB](https://www.photron.co.jp/products/hsvcam/infinicam/tech.html).\nThis package allows user to control  [INFINICAM UC-1](https://www.photron.co.jp/products/hsvcam/infinicam/) on python.\n\nhttps://user-images.githubusercontent.com/71418024/171789047-f61ddb07-27a4-4213-bff1-26cc0676d0b6.mp4\n\n*This is [tracking_sample](pypuclib/pypuclib_sample/tracking_sample.py) demo movie.\n\n## How to Use\n\n1. Install INFINICAM SDK [PUCLIB](https://www.photron.co.jp/products/hsvcam/infinicam/tech.html), driver, and Visual C++ Redistributable 2019.\n2. See [Install](#Install) section to install pypuclib package.\n3. See [Quick Start](#Quick-start-for-image-processing) section to start programming.\n\n## Install\n\nYou can install it in any of the following ways:\n\n* Open command prompt and install using pip from [pypi](https://pypi.org/).\n\n  ```\n  pip install pypuclib\n  ```\n\n  If you don't register environment variable for python path, use this command instead.\n\n  ```\n  py -m pip install pypuclib\n  ```\n\n* Install from source code.\n  \n  ```\n  git clone repositryURL\n  ```\n\n  Move current directory to pypuclib/pypuclib/ and install using this command.\n  \n  ```\n  pip install ./\n  ```\n\n## Quick Start for Image Processing\n\nTo connect the first detected camera:\n\n  ```python\n  cam = CameraFactory().create()\n  ```\n\nAnd grab the image:\n\n  ```python\n  xferdata = cam.grab()\n  ```\n\nTo decode image, get decoder object from camera and use it like:\n\n  ```python\n  decoder = cam.decoder()\n  img = decoder.decode(xferdata)\n  ```\n\nDecoded array is numpy array, so now you can use to imageprocessing package like opencv directory.\n\nIf you want to use only the resion of interest:\n\n  ```python\n  x = 0, y = 0, w = 128, h = 128\n  img = decoder.decode(xferdata, x, y, w, h)\n  ```\n\nThis can reduce the decoding time.\n\n## For High Speed Processing\n\nUse beginXfer and endXfer to get callback from C++.\n\n```python\n  # xfercallback from c++\n  def callback(data) :\n    seq = data.sequenceNo()\n    if oldSeq != seq:\n      # avoid same sequence number.\n\n\n  # beginn xfer and start callback background\n  cam.beginXfer(callback)\n\n  ~~ # some processing here\n\n  cam.endXfer()\n```\n\n## How to Run Samples\n\n1. Install pypuclib using pip.\n\n2. Download following sample source code.\n\n3. Run on python.\n\n```python\n  python hello_world.py\n```\n\n* [hello_world](pypuclib/pypuclib_sample/hello_world.py)\n\n  Sample of streaming a live image and saving a bitmap.\n  If a GPU device is available, decoding is done on the GPU. Otherwise, decoding is done on the CPU.\n\n* [create_movie](pypuclib/pypuclib_sample/create_movie.py)\n\n  Sample of saving videos with high speed streaming.\n\n* [tracking_sample](pypuclib/pypuclib_sample/tracking_sample.py)\n\n  Sample of real-time tracking at 1,000 fps.\n\n* [gui_sample](pypuclib/pypuclib_sample/gui_sample.py)\n\n  GUI sample for controlling camera parameters and recording.\n\n* [find_1000](pypuclib/pypuclib_sample/find1000/README.md)\n\n  This sample code implements the a deep learning network to detect objects such as people, cellphones etc.\n\n## Source Code Structure\n\nThis repository consists of three projects.\n\n* [pypuclib](pypuclib/pypuclib)\n  \n  Source code of python wrapper of PUCLIB\n\n* [pupuclib_sample](pypuclib/pypuclib_sample)\n\n  Python sample code using pypuclib\n\n* [pypuclib_test](pypuclib/pypuclib_test)\n\n  Unit test of pypuclib\n\n## Prerequisites\n\nTo build pypuclib, the following environment is required.\n\n* Installed Visual Studio 2019\n\n　  :warning: The MSVC compiler is required to build the package.\n\n　  :warning: This package is available for Windows only. \n\n## Issues\n\nDon't hesitate to ask any questions or issues on GitHub.\n\n#### developped by:\n\u003cimg src=\"doc/Photron_logo.png\" width=\"100\"\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphotron-limited%2Fpypuclib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphotron-limited%2Fpypuclib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphotron-limited%2Fpypuclib/lists"}