{"id":21183157,"url":"https://github.com/jonathanschilling/irb","last_synced_at":"2025-07-10T00:33:04.056Z","repository":{"id":44792925,"uuid":"254220180","full_name":"jonathanschilling/irb","owner":"jonathanschilling","description":"InfraTec IRBIS thermographic image (*.irb) file reader in Java","archived":false,"fork":false,"pushed_at":"2024-07-07T20:19:30.000Z","size":5730,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-07-08T11:55:47.319Z","etag":null,"topics":["fileformat","infrared","irb"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jonathanschilling.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":"2020-04-08T23:04:52.000Z","updated_at":"2024-07-07T20:19:33.000Z","dependencies_parsed_at":"2024-06-22T01:43:31.723Z","dependency_job_id":"407bc1ef-6d7c-4ef8-98fe-60a963a432d1","html_url":"https://github.com/jonathanschilling/irb","commit_stats":{"total_commits":41,"total_committers":3,"mean_commits":"13.666666666666666","dds":"0.19512195121951215","last_synced_commit":"b625e7ba282bf9981c4516cd6af07b7e9fafbfeb"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonathanschilling%2Firb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonathanschilling%2Firb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonathanschilling%2Firb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonathanschilling%2Firb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jonathanschilling","download_url":"https://codeload.github.com/jonathanschilling/irb/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225606612,"owners_count":17495551,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["fileformat","infrared","irb"],"created_at":"2024-11-20T17:59:28.279Z","updated_at":"2024-11-20T17:59:28.933Z","avatar_url":"https://github.com/jonathanschilling.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# irb\n\nA reader in pure Java for the `*.irb` file format by InfraTec,  \ninspired by https://github.com/tomsoftware/Irbis-File-Format .\n\nThis program can be used either as a Maven dependency within another program\nor as a stand-alone commandline utility.  \nThe ready-to-use jar can be downloaded here:\n[irb-1.1.0.jar](https://github.com/jonathanschilling/irb/releases/download/v1.1.0/irb-1.1.0.jar)\n\n## Legal disclaimer\n\nThis is a pure hobby project. No copyright infringements or similar is intended.  \nPlease inform the author about possible legal issues before turning to a lawyer.\n\n\n## Building\n\n1. Download and install build dependencies\n   1. JDK 1.8 (or any newer version)\n   2. Maven\n2. Build a runnable self-contained jar file:\n\n```bash\n\u003e mvn clean package\n```\n\nThe output will be at `target/irb-1.1.0.jar`.\n\n## Use as a Maven dependency\n\nYou can include this project as a dependency in Maven:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003ede.labathome\u003c/groupId\u003e\n    \u003cartifactId\u003eirb\u003c/artifactId\u003e\n    \u003cversion\u003e1.0.3\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\nFIXME: The latest released version on Maven Central is still `1.0.3`.\n\n## Command-line Usage\n\nRun-time dependencies for use with JyPlot:\n- Python3 packages\n  - matplotlib\n    - Requires libjpeg and zlib development headers for *pillow*\n  - numpy\n\nExecute the jar with the `*.irb` file as first command line argument:\n \n```bash\n\u003e java -jar irb-1.1.0.jar AB020300.irb\n```\n\nIt can also be run in headless mode, where no attempt will be made to plot the image using JyPlot:\n\n```bash\n\u003e java -jar irb-1.1.0.jar --headless AB020300.irb\n```\n\nThis will generate two text output files and a direct PNG equivalent of the data:\n * `AB020300.irb.img_0.dat` contains the raw image data in degree Celsius as a two-dimensional matrix.\n   Each line in the file contains the temperatures for each pixel of the corresponding line of the image.\n   The first line corresponds to the top of the image for easy plotting with e.g. Gnuplot:\n   ```\n   plot 'AB020300.irb.img_0.dat' matrix w image\n   ```\n * `AB020300.irb.meta_0.json` contains the meta-data of the image in the JSON format.\n * `AB020300.irb.img_0.png` contains a direct PNG export of the image data\n   with the temperature in degree Celsius mapped to a `jet`-like colorbar.\n\nIf not run in headless mode, a direct plot of the image is tried using JyPlot.\nThis requires to have a Python installation with `matplotlib` and `numpy` on your `$PATH`.\nA temporary Python script file is created in a folder `PythonScript` in your home directory.\nThis will be executed by the default `python` command.\nIf JyPlot cannot find your `python` installation, it will print a corresponding stack trace of error messages.\nYou can fix this by telling JyPlot about your Python installation by creating a text file\n`~/PythonScript/PYTHON_PATH.txt` which contains the absolute path to your Python executable\n(`python` on Linux and Mac, `python.exe` on Windows).\n\nThe text output files should nevertheless get created.\n\n## Video Files\n\nSince `v1.1.0`, this tool can read and export video files.\nIf video data is detected, each frame found in the given file is exported\nin the same way as the headless data (see above).\nAssuming the input file is `video_file.irb`, the output files would be named as follows:\n * `video_file_\u003cframeIdx\u003e_\u003cimageIdx\u003e_img.dat` is the text file containing a `height`x`width` matrix of the temperature in degrees Celsius\n * `video_file_\u003cframeIdx\u003e_\u003cimageIdx\u003e_meta.json` is the JSON file containing the meta-data of the respective frame\n * `video_file_\u003cframeIdx\u003e_\u003cimageIdx\u003e.png` is a raw PNG for quickly having a look. No colorbar is plotted yet\nIn these file names, `\u003cframeIdx\u003e` is the frame index, counting the frames up from 0.\nSimilarly, `\u003cimageIdx\u003e` is the index of the exported image in the given frame.\n(I don't know why there would be more than one image per video frame, but you never know...)\n\n## Contributers\n\n * [jonathanschilling](https://github.com/jonathanschilling)\n * [benjaminSchilling33](https://github.com/benjaminschilling33)\n * [uhoefel](https://github.com/uhoefel)\n\n## License\n\nSPDX-License-Identifier: Apache-2.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonathanschilling%2Firb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjonathanschilling%2Firb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonathanschilling%2Firb/lists"}