{"id":16644841,"url":"https://github.com/toyama0919/embulk-filter-google_vision_api","last_synced_at":"2025-09-22T03:13:24.598Z","repository":{"id":68320900,"uuid":"79094708","full_name":"toyama0919/embulk-filter-google_vision_api","owner":"toyama0919","description":null,"archived":false,"fork":false,"pushed_at":"2017-02-03T01:57:44.000Z","size":12,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-09T20:27:42.762Z","etag":null,"topics":["embulk","image-recognition"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","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/toyama0919.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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,"zenodo":null}},"created_at":"2017-01-16T07:42:11.000Z","updated_at":"2023-09-24T17:32:14.000Z","dependencies_parsed_at":"2023-02-22T23:01:23.713Z","dependency_job_id":null,"html_url":"https://github.com/toyama0919/embulk-filter-google_vision_api","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/toyama0919/embulk-filter-google_vision_api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toyama0919%2Fembulk-filter-google_vision_api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toyama0919%2Fembulk-filter-google_vision_api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toyama0919%2Fembulk-filter-google_vision_api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toyama0919%2Fembulk-filter-google_vision_api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/toyama0919","download_url":"https://codeload.github.com/toyama0919/embulk-filter-google_vision_api/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toyama0919%2Fembulk-filter-google_vision_api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275797834,"owners_count":25530254,"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","status":"online","status_checked_at":"2025-09-18T02:00:09.552Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["embulk","image-recognition"],"created_at":"2024-10-12T08:12:28.354Z","updated_at":"2025-09-22T03:13:24.584Z","avatar_url":"https://github.com/toyama0919.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Google Vision Api filter plugin for Embulk\n\nGoogle Vision Api filter plugin for Embulk.\n\nVery easy image recognition.\n\n## Overview\n\n* **Plugin type**: filter\n\n## Configuration\n\n- **out_key_name**: out_key_name (string)\n- **image_path_key_name**: image_path_key_name (string)\n- **features**: features (array)\n  - **type**: FACE_DETECTION or LANDMARK_DETECTION or LOGO_DETECTION or LABEL_DETECTION or TEXT_DETECTION or SAFE_SEARCH_DETECTION or IMAGE_PROPERTIES (string)\n  - **maxResults**: maxResults (integer)\n- **delay**: delay (integer, default: 0)\n- **image_num_per_request**: image_num_per_request (integer, default: 16)\n- **google_api_key**: google_api_key (string, default: ENV['GOOGLE_API_KEY'])\n\n## Example\n\n### input\n```yaml\n    - { image_path: 'http://www.embulk.org/docs/_images/embulk-logo.png' }\n```\n\n* respond localfile path and http URI(http://〜) and GCS Image(gs://〜).\n\n### setting\n```yaml\nfilters:\n  - type: google_vision_api\n    image_path_key_name: image_path\n    out_key_name: image_info\n    image_num_per_request: 5\n    features: \n      - {type: FACE_DETECTION, \"maxResults\":5 }\n      - {type: LANDMARK_DETECTION, \"maxResults\":5 }\n      - {type: LOGO_DETECTION, \"maxResults\":5 }\n      - {type: LABEL_DETECTION, \"maxResults\":5 }\n      - {type: TEXT_DETECTION, \"maxResults\":5 }\n      - {type: SAFE_SEARCH_DETECTION, \"maxResults\":5 }\n      - {type: IMAGE_PROPERTIES, \"maxResults\":5 }\n```\n\n### output\n```\nimage_path (string) : http://www.embulk.org/docs/_images/embulk-logo.png\nimage_info (  json) : {\"labelAnnotations\":[{\"mid\":\"/m/0dwx7\",\"description\":\"logo\",\"score\":0.86478204},{\"mid\":\"/m/03gq5hm\",\"description\":\"font\",\"score\":0.8472268},{\"mid\":\"/m/0215n\",\"description\":\"cartoon\",\"score\":0.82311255},{\"mid\":\"/m/03g09t\",\"description\":\"clip art\",\"score\":0.69382942},{\"mid\":\"/m/01cd9\",\"description\":\"brand\",\"score\":0.59691668}],\"textAnnotations\":[{\"locale\":\"id\",\"description\":\"embulk\\n\",\"boundingPoly\":{\"vertices\":[{\"x\":67,\"y\":475},{\"x\":812,\"y\":475},{\"x\":812,\"y\":629},{\"x\":67,\"y\":629}]}},{\"description\":\"embulk\",\"boundingPoly\":{\"vertices\":[{\"x\":68,\"y\":475},{\"x\":813,\"y\":475},{\"x\":813,\"y\":629},{\"x\":68,\"y\":629}]}}],\"safeSearchAnnotation\":{\"adult\":\"VERY_UNLIKELY\",\"spoof\":\"UNLIKELY\",\"medical\":\"UNLIKELY\",\"violence\":\"VERY_UNLIKELY\"},\"imagePropertiesAnnotation\":{\"dominantColors\":{\"colors\":[{\"color\":{\"red\":231,\"green\":59,\"blue\":11},\"score\":0.26240975,\"pixelFraction\":0.029842343},{\"color\":{\"red\":243,\"green\":176,\"blue\":124},\"score\":0.0057866224,\"pixelFraction\":0.010698198},{\"color\":{\"red\":252,\"green\":250,\"blue\":248},\"score\":0.0025187095,\"pixelFraction\":0.6255005},{\"color\":{\"red\":232,\"green\":79,\"blue\":16},\"score\":0.17388013,\"pixelFraction\":0.023773775},{\"color\":{\"red\":225,\"green\":75,\"blue\":27},\"score\":0.14469221,\"pixelFraction\":0.034909911},{\"color\":{\"red\":222,\"green\":52,\"blue\":17},\"score\":0.13995738,\"pixelFraction\":0.018768769},{\"color\":{\"red\":243,\"green\":106,\"blue\":31},\"score\":0.090499125,\"pixelFraction\":0.025525525},{\"color\":{\"red\":243,\"green\":128,\"blue\":38},\"score\":0.064238794,\"pixelFraction\":0.050425425},{\"color\":{\"red\":242,\"green\":104,\"blue\":47},\"score\":0.033798043,\"pixelFraction\":0.014451952},{\"color\":{\"red\":238,\"green\":131,\"blue\":65},\"score\":0.027836611,\"pixelFraction\":0.010948448}]}}}\n```\n\n## Vision API Limits\n\n| Type of Limit | Usage Limit |\n|:-----------|------------:|\n| MB per image |  4 MB |\n| MB per request |  8 MB |\n| Requests per second | 10 |\n| Requests per feature per day | 700,000 |\n| Requests per feature per month | 20,000,000 |\n| Images per second | 8 |\n| Images per request |  16 |\n\nsee. [Usage Limits  \\|  Google Cloud Vision API  \\|  Google Cloud Platform](https://cloud.google.com/vision/limits)\n\n\n## Build\n\n```\n$ rake\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoyama0919%2Fembulk-filter-google_vision_api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftoyama0919%2Fembulk-filter-google_vision_api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoyama0919%2Fembulk-filter-google_vision_api/lists"}