{"id":21581,"date":"2017-10-18T17:39:22","date_gmt":"2017-10-18T17:39:22","guid":{"rendered":"http:\/\/how_to_automate_image_moderation_with_amazon_rekognition"},"modified":"2024-05-27T15:08:24","modified_gmt":"2024-05-27T22:08:24","slug":"how_to_automate_image_moderation_with_amazon_rekognition","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition","title":{"rendered":"How to Automate Image Moderation with Amazon Rekognition"},"content":{"rendered":"<div class=\"wp-block-cloudinary-markdown \"><p>Allowing your users to upload their own images to your website can increase user engagement, retention and monetization. However, allowing your users to upload any image they want to, may lead to some of your users uploading inappropriate images to your application. These images may offend other users or even cause your site to violate standards or regulations.<\/p>\n<p>If you have any ads appearing on your site, you also need to protect your advertiser\u2019s brands by ensuring that they don\u2019t appear alongside any adult content. Some advertising networks are very intolerant and blacklist any website that displays adult content, even if that content was submitted by users.<\/p>\n<p>Cloudinary\u2019s image management solution already provides a manual moderation web interface and API to help do this efficiently. However, manual moderation is time consuming and is not instantaneous, and so we wanted to provide an additional option &#8211; automatic moderation of images as your users upload them.<\/p>\n<h2>Introducing the Amazon Rekognition AI Moderation add-on<\/h2>\n<p>Cloudinary provides an add-on for <a href=\"https:\/\/aws.amazon.com\/rekognition\/\">Amazon Rekognition\u2019s<\/a> image moderation service based on deep learning algorithms, fully integrated into Cloudinary\u2019s image management and manipulation pipeline. With Amazon Rekognition\u2019s AI Moderation add-on, you can extend Cloudinary\u2019s powerful cloud-based image media library and delivery capabilities with automatic, artificial intelligence-based moderation of your photos. Protect your users from explicit and suggestive adult content in your user-uploaded images, making sure that no offensive photos are displayed to your web and mobile viewers.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/cloudinary-res.cloudinary.com\/image\/upload\/amazon_aws_chart.jpg\" alt=\"Moderation with Rekognition\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"1170\" height=\"516\"\/><\/p>\n<h2>Enabling automatic image moderation by Amazon Rekognition<\/h2>\n<p>To request <a href=\"https:\/\/cloudinary.com\/glossary\/moderation\">moderation<\/a> while uploading an image, simply set the <code>moderation<\/code> upload API parameter to <code>aws_rek<\/code>:<\/p>\n<cld-code-widget\n      class=\" c-code-widget\"\n      snippets=\"[{&quot;sdkId&quot;:&quot;ruby&quot;,&quot;framework&quot;:&quot;ruby&quot;,&quot;language&quot;:&quot;ruby&quot;,&quot;displayName&quot;:&quot;Ruby&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;Cloudinary::Uploader.upload(\\&quot;sample_image.jpg\\&quot;, \\n  :moderation =&gt; \\&quot;aws_rek\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;Cloudinary::Uploader.upload(\\&quot;sample_image.jpg\\&quot;, \\n  :moderation =&gt; \\&quot;aws_rek\\&quot;)&quot;},{&quot;sdkId&quot;:&quot;php&quot;,&quot;framework&quot;:&quot;php&quot;,&quot;language&quot;:&quot;php&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;rawCodeSnippet&quot;:&quot;\\\\Cloudinary\\\\Uploader::upload(\\&quot;sample_image.jpg\\&quot;, \\n  array(\\&quot;moderation\\&quot; =&gt; \\&quot;aws_rek\\&quot;));&quot;,&quot;codeSnippet&quot;:&quot;\\\\Cloudinary\\\\Uploader::upload(\\&quot;sample_image.jpg\\&quot;, \\n  array(\\&quot;moderation\\&quot; =&gt; \\&quot;aws_rek\\&quot;));&quot;},{&quot;sdkId&quot;:&quot;python&quot;,&quot;framework&quot;:&quot;python&quot;,&quot;language&quot;:&quot;python&quot;,&quot;displayName&quot;:&quot;Python&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;sample_image.jpg\\&quot;,\\n  moderation = \\&quot;aws_rek\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;sample_image.jpg\\&quot;,\\n  moderation = \\&quot;aws_rek\\&quot;)&quot;},{&quot;sdkId&quot;:&quot;nodejs&quot;,&quot;framework&quot;:&quot;nodejs&quot;,&quot;language&quot;:&quot;javascript&quot;,&quot;displayName&quot;:&quot;Node.js&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.v2.uploader.upload(\\&quot;sample_image.jpg\\&quot;, \\n  {moderation: \\&quot;aws_rek\\&quot;},\\n  function(error, result){console.log(result);});&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.v2.uploader.upload(\\&quot;sample_image.jpg\\&quot;, \\n  {moderation: \\&quot;aws_rek\\&quot;},\\n  function(error, result){console.log(result);});&quot;},{&quot;sdkId&quot;:&quot;java&quot;,&quot;framework&quot;:&quot;java&quot;,&quot;language&quot;:&quot;java&quot;,&quot;displayName&quot;:&quot;Java&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.uploader().upload(\\&quot;sample_image.jpg\\&quot;, \\n  ObjectUtils.asMap(\\&quot;moderation\\&quot;, \\&quot;aws_rek\\&quot;));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.uploader().upload(\\&quot;sample_image.jpg\\&quot;, \\n  ObjectUtils.asMap(\\&quot;moderation\\&quot;, \\&quot;aws_rek\\&quot;));&quot;}]\"\n      parsed-url=\"[]\"\n      with-url=\"false\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget>\n<p>The uploaded image is automatically sent to Amazon Rekognition for moderation: Amazon Rekognition assigns a moderation confidence score (0 &#8211; 100) indicating the chances that an image belongs to an offensive content category. The default moderation confidence level is 0.5 unless specifically overridden (see below), and all images classified by Amazon Rekognition with a value greater than the moderation confidence level are classified as \u2018rejected\u2019. Otherwise, their status is set to \u2018approved\u2019, with all results included in the upload response.<\/p>\n<p>This means that your user can be instantaneously alerted to the fact if their image was rejected, improving the end user experience (no waiting for approval or suddenly finding their image gone at a later date due to manual moderation). A rejected image is moved to a secondary backup repository, and is not automatically delivered. If you choose, you can manually review rejected images and mark them as approved if appropriate as described later in this article.<\/p>\n<h2>Fine-tuning the image moderation<\/h2>\n<p>The automatic moderation can be configured for different content categories, allowing you to fine-tune what kinds of images you deem acceptable or objectionable. By default, any image that Amazon Rekognition determines to be adult content with a confidence score of over 50% is automatically rejected. This minimum confidence score can be overridden for any of the categories with a new default value (see the <a href=\"https:\/\/cloudinary.com\/documentation\/aws_rekognition_ai_moderation_addon\">documentation<\/a> for a breakdown of the available categories). For example, to request moderation for the <code>supermodel<\/code> image, with the moderation confidence level set to 0.75 for the \u2018Female Swimwear or Underwear\u2019 sub-category, 0.6 for the \u2018Explicit Nudity\u2019 top-level category (overriding the default for all its child categories as well) and exclude the \u2018Revealing Clothes\u2019 category:<\/p>\n<cld-code-widget\n      class=\" c-code-widget\"\n      snippets=\"[{&quot;sdkId&quot;:&quot;ruby&quot;,&quot;framework&quot;:&quot;ruby&quot;,&quot;language&quot;:&quot;ruby&quot;,&quot;displayName&quot;:&quot;Ruby&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;Cloudinary::Uploader.upload(\\&quot;supermodel.jpg\\&quot;, \\n  :moderation =&gt; \\&quot;aws_rek:female_underwear:0.75:explicit_nudity:0.6:revealing_clothes:ignore\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;Cloudinary::Uploader.upload(\\&quot;supermodel.jpg\\&quot;, \\n  :moderation =&gt; \\&quot;aws_rek:female_underwear:0.75:explicit_nudity:0.6:revealing_clothes:ignore\\&quot;)&quot;},{&quot;sdkId&quot;:&quot;php&quot;,&quot;framework&quot;:&quot;php&quot;,&quot;language&quot;:&quot;php&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;rawCodeSnippet&quot;:&quot;\\\\Cloudinary\\\\Uploader::upload(\\&quot;supermodel.jpg\\&quot;, \\n  array(\\&quot;moderation\\&quot; =&gt; \\&quot;aws_rek:female_underwear:0.75:explicit_nudity:0.6:revealing_clothes:ignore\\&quot;));&quot;,&quot;codeSnippet&quot;:&quot;\\\\Cloudinary\\\\Uploader::upload(\\&quot;supermodel.jpg\\&quot;, \\n  array(\\&quot;moderation\\&quot; =&gt; \\&quot;aws_rek:female_underwear:0.75:explicit_nudity:0.6:revealing_clothes:ignore\\&quot;));&quot;},{&quot;sdkId&quot;:&quot;python&quot;,&quot;framework&quot;:&quot;python&quot;,&quot;language&quot;:&quot;python&quot;,&quot;displayName&quot;:&quot;Python&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;supermodel.jpg\\&quot;,\\n  moderation = \\&quot;aws_rek:female_underwear:0.75:explicit_nudity:0.6:revealing_clothes:ignore\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.uploader.upload(\\&quot;supermodel.jpg\\&quot;,\\n  moderation = \\&quot;aws_rek:female_underwear:0.75:explicit_nudity:0.6:revealing_clothes:ignore\\&quot;)&quot;},{&quot;sdkId&quot;:&quot;nodejs&quot;,&quot;framework&quot;:&quot;nodejs&quot;,&quot;language&quot;:&quot;javascript&quot;,&quot;displayName&quot;:&quot;Node.js&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.v2.uploader.upload(\\&quot;supermodel.jpg\\&quot;, \\n  {moderation: \\&quot;aws_rek:female_underwear:0.75:explicit_nudity:0.6:revealing_clothes:ignore\\&quot;},\\n  function(error, result){console.log(result);});&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.v2.uploader.upload(\\&quot;supermodel.jpg\\&quot;, \\n  {moderation: \\&quot;aws_rek:female_underwear:0.75:explicit_nudity:0.6:revealing_clothes:ignore\\&quot;},\\n  function(error, result){console.log(result);});&quot;},{&quot;sdkId&quot;:&quot;java&quot;,&quot;framework&quot;:&quot;java&quot;,&quot;language&quot;:&quot;java&quot;,&quot;displayName&quot;:&quot;Java&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.uploader().upload(\\&quot;supermodel.jpg\\&quot;, \\n  ObjectUtils.asMap(\\&quot;moderation\\&quot;, \\&quot;aws_rek:female_underwear:0.75:explicit_nudity:0.6:revealing_clothes:ignore\\&quot;));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.uploader().upload(\\&quot;supermodel.jpg\\&quot;, \\n  ObjectUtils.asMap(\\&quot;moderation\\&quot;, \\&quot;aws_rek:female_underwear:0.75:explicit_nudity:0.6:revealing_clothes:ignore\\&quot;));&quot;}]\"\n      parsed-url=\"[]\"\n      with-url=\"false\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget>\n<h2>Manage moderated images<\/h2>\n<p>No matter how powerful and reliable an artificial intelligence algorithm is, it can never be 100% accurate, and in some cases of moderation, \u201caccuracy\u201d might be suggestive. Furthermore, you may configure your moderation tool to err on the conservative side, which may result in an occasional rejected image that may have been OK.<\/p>\n<p>While the automated moderation minimizes efforts and provides instantaneous results, you may sometimes want to adjust the moderation status of a specific image manually.<\/p>\n<p>You can also use the API or web interface to alter the automatic moderation decision. You can browse rejected or approved images, and then manually approve or reject them as needed. If you choose to approve a previously rejected image, the original version of the rejected image will be restored from backup, and if you choose to reject a previously approved image, cache invalidation will be performed for the image so it will be erased from all the CDN cache servers.<\/p>\n<p>For more information, see the detailed <a href=\"\/documentation\/aws_rekognition_ai_moderation_addon\">documentation<\/a>.<\/p>\n<h2>Moderation made easy<\/h2>\n<p>Moderating your user-generated images is important to protect your brand and keep your users and advertisers happy. With the <a href=\"\/documentation\/aws_rekognition_ai_moderation_addon\">Amazon Rekognition AI Moderation<\/a> add-on, you can provide feedback within the upload stream and fine-tune the filters that you use to determine what kinds of images you deem acceptable or objectionable. Automated moderation can help you to improve photo sharing sites, forums, dating apps, content platforms for children, eCommerce platforms and marketplaces, and more.<\/p>\n<p><a href=\"https:\/\/cloudinary.com\/users\/login?RelayState=%2Fconsole%2Faddons?#aws_rek_moderation\" target=\"_blank\"><img alt= \"aws rekognition\" src=https:\/\/res.cloudinary.com\/demo\/image\/upload\/f_auto,q_auto\/aws_rek_ai_moderation.png><\/img><\/a><\/p>\n<p>The add-on is available with all Cloudinary plans, with a free tier for you to try it out. If you don\u2019t have a Cloudinary account yet, sign up for a free account <a href=\"https:\/\/cloudinary.com\/users\/register\/free\">here<\/a>.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":41,"featured_media":21582,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[336,25,85,91,119,176,203,214,229,257],"class_list":["post-21581","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-ai","tag-asset-management","tag-deep-learning","tag-django","tag-file-upload","tag-java","tag-moderation","tag-node","tag-php","tag-ruby-on-rails"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.6 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Automatically moderate your user uploaded images<\/title>\n<meta name=\"description\" content=\"Auto moderate user uploaded images with Amazon Rekognition&#039;s AI moderation add-on integrated directly within Cloudinary&#039;s image management pipeline\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Automate Image Moderation with Amazon Rekognition\" \/>\n<meta property=\"og:description\" content=\"Auto moderate user uploaded images with Amazon Rekognition&#039;s AI moderation add-on integrated directly within Cloudinary&#039;s image management pipeline\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2017-10-18T17:39:22+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-27T22:08:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/v1649723867\/Web_Assets\/blog\/Rekognition_moderation_blog\/Rekognition_moderation_blog-png?_i=AA\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"NewsArticle\",\"@id\":\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition\"},\"author\":{\"name\":\"\",\"@id\":\"\"},\"headline\":\"How to Automate Image Moderation with Amazon Rekognition\",\"datePublished\":\"2017-10-18T17:39:22+00:00\",\"dateModified\":\"2024-05-27T22:08:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition\"},\"wordCount\":8,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649723867\/Web_Assets\/blog\/Rekognition_moderation_blog\/Rekognition_moderation_blog.png?_i=AA\",\"keywords\":[\"AI\",\"Asset Management\",\"Deep Learning\",\"Django\",\"File-upload\",\"Java\",\"Moderation\",\"Node\",\"PHP\",\"Ruby on Rails\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2017\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition\",\"url\":\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition\",\"name\":\"Automatically moderate your user uploaded images\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649723867\/Web_Assets\/blog\/Rekognition_moderation_blog\/Rekognition_moderation_blog.png?_i=AA\",\"datePublished\":\"2017-10-18T17:39:22+00:00\",\"dateModified\":\"2024-05-27T22:08:24+00:00\",\"description\":\"Auto moderate user uploaded images with Amazon Rekognition's AI moderation add-on integrated directly within Cloudinary's image management pipeline\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649723867\/Web_Assets\/blog\/Rekognition_moderation_blog\/Rekognition_moderation_blog.png?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649723867\/Web_Assets\/blog\/Rekognition_moderation_blog\/Rekognition_moderation_blog.png?_i=AA\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Automate Image Moderation with Amazon Rekognition\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"name\":\"Cloudinary Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cloudinary.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\",\"name\":\"Cloudinary Blog\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"width\":312,\"height\":60,\"caption\":\"Cloudinary Blog\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Automatically moderate your user uploaded images","description":"Auto moderate user uploaded images with Amazon Rekognition's AI moderation add-on integrated directly within Cloudinary's image management pipeline","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition","og_locale":"en_US","og_type":"article","og_title":"How to Automate Image Moderation with Amazon Rekognition","og_description":"Auto moderate user uploaded images with Amazon Rekognition's AI moderation add-on integrated directly within Cloudinary's image management pipeline","og_url":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition","og_site_name":"Cloudinary Blog","article_published_time":"2017-10-18T17:39:22+00:00","article_modified_time":"2024-05-27T22:08:24+00:00","og_image":[{"width":1920,"height":1080,"url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/v1649723867\/Web_Assets\/blog\/Rekognition_moderation_blog\/Rekognition_moderation_blog-png?_i=AA","type":"image\/png"}],"twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition"},"author":{"name":"","@id":""},"headline":"How to Automate Image Moderation with Amazon Rekognition","datePublished":"2017-10-18T17:39:22+00:00","dateModified":"2024-05-27T22:08:24+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition"},"wordCount":8,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649723867\/Web_Assets\/blog\/Rekognition_moderation_blog\/Rekognition_moderation_blog.png?_i=AA","keywords":["AI","Asset Management","Deep Learning","Django","File-upload","Java","Moderation","Node","PHP","Ruby on Rails"],"inLanguage":"en-US","copyrightYear":"2017","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition","url":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition","name":"Automatically moderate your user uploaded images","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649723867\/Web_Assets\/blog\/Rekognition_moderation_blog\/Rekognition_moderation_blog.png?_i=AA","datePublished":"2017-10-18T17:39:22+00:00","dateModified":"2024-05-27T22:08:24+00:00","description":"Auto moderate user uploaded images with Amazon Rekognition's AI moderation add-on integrated directly within Cloudinary's image management pipeline","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649723867\/Web_Assets\/blog\/Rekognition_moderation_blog\/Rekognition_moderation_blog.png?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649723867\/Web_Assets\/blog\/Rekognition_moderation_blog\/Rekognition_moderation_blog.png?_i=AA","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/how_to_automate_image_moderation_with_amazon_rekognition#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Automate Image Moderation with Amazon Rekognition"}]},{"@type":"WebSite","@id":"https:\/\/cloudinary.com\/blog\/#website","url":"https:\/\/cloudinary.com\/blog\/","name":"Cloudinary Blog","description":"","publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cloudinary.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cloudinary.com\/blog\/#organization","name":"Cloudinary Blog","url":"https:\/\/cloudinary.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","width":312,"height":60,"caption":"Cloudinary Blog"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":""}]}},"jetpack_featured_media_url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649723867\/Web_Assets\/blog\/Rekognition_moderation_blog\/Rekognition_moderation_blog.png?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/21581","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/users\/41"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/comments?post=21581"}],"version-history":[{"count":11,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/21581\/revisions"}],"predecessor-version":[{"id":33959,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/21581\/revisions\/33959"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/21582"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=21581"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=21581"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=21581"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}