{"id":24505732,"url":"https://github.com/caseymcc/imglib","last_synced_at":"2026-04-29T19:03:14.054Z","repository":{"id":56697123,"uuid":"305147639","full_name":"caseymcc/imglib","owner":"caseymcc","description":null,"archived":false,"fork":false,"pushed_at":"2022-01-08T19:02:26.000Z","size":109,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-01T23:19:06.018Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/caseymcc.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}},"created_at":"2020-10-18T16:36:56.000Z","updated_at":"2022-01-08T19:02:30.000Z","dependencies_parsed_at":"2022-08-15T23:31:08.990Z","dependency_job_id":null,"html_url":"https://github.com/caseymcc/imglib","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/caseymcc/imglib","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caseymcc%2Fimglib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caseymcc%2Fimglib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caseymcc%2Fimglib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caseymcc%2Fimglib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/caseymcc","download_url":"https://codeload.github.com/caseymcc/imglib/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/caseymcc%2Fimglib/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32439301,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T18:12:22.909Z","status":"ssl_error","status_checked_at":"2026-04-29T18:11:33.322Z","response_time":110,"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":[],"created_at":"2025-01-21T23:31:25.670Z","updated_at":"2026-04-29T19:03:14.037Z","avatar_url":"https://github.com/caseymcc.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# imglib - This is a work in progress (WIP)\n\nimglib is a simple image library based on templates. All of the functions included work on your data types with a little bit of template vodoo.\n\nExpected features (WIP)\n- IO\n- color convertion\n- resize\n- opengl/opencl/cuda support\n- equality testing\n\nimglib works with a concept of an image. It expects images to have a location (system memory, cuda, opencl, etc...), format (RGB, RGBA, etc...), bit depth of channels (8bit, 16bit, etc...), width, stride (line lenght if padded), height, data (buffer) and data size. There is a SimpleImage class in the library that can be used but it is really setup to use whatever image class you already have defined.\n\nTo get imglib to use your data structure you need to define the following im the imglib namespace.\n\n````\nnamespace imglib\n{\n  template\u003c\u003e\n  Format format\u003c{YourType}\u003e(const _Image \u0026){return Format::Unknown;}\n\n  template\u003c\u003e\n  Depth depth\u003c{YourType}\u003e(const _Image \u0026){return Depth::Unknown;}\n  \n  template\u003c\u003e\n  Location location\u003c{YourType}\u003e(const _Image \u0026){return Location::System;}\n  \n  template\u003c\u003e\n  size_t width\u003c{YourType}\u003e(const _Image \u0026){return 0;}\n  \n  template\u003c\u003e\n  size_t height\u003c{YourType}\u003e(const _Image \u0026){return 0;}\n  \n  template\u003c\u003e\n  size_t stride\u003c{YourType}\u003e(const _Image \u0026){return 0;}\n  \n  template\u003c\u003e\n  size_t nativeId\u003c{YourType}\u003e(const _Image \u0026){return 0;}\n\n  template\u003c\u003e\n  uint8_t *data\u003c{YourType}\u003e(_Image \u0026){return nullptr;}\n  \n  template\u003c\u003e\n  size_t dataSize\u003c{YourType}\u003e(const _Image \u0026){return 0;}\n\n  template\u003c\u003e\n  bool resize\u003c{YourType}\u003e(_Image \u0026image, Format format, Depth depth, size_t width, size_t height){return false;}\n}\n````\nAn example of how to do this can be seen with the `SimpleImage` in the simpleImage.h file.\n\nOnce the above functions are defined you can make any calls to the library, like\n````\n#include \u003cimglib/simpleImage.h\u003e\n#include \u003cimglib/imageIo.h\u003e\n\nSimpleImage image;\n\nimglib::load(image, \"test.jpg\");\n````\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaseymcc%2Fimglib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcaseymcc%2Fimglib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcaseymcc%2Fimglib/lists"}