{"id":29290,"date":"2023-06-09T07:00:00","date_gmt":"2023-06-09T14:00:00","guid":{"rendered":"https:\/\/cloudinary.com\/blog\/?p=29290"},"modified":"2025-11-17T05:46:12","modified_gmt":"2025-11-17T13:46:12","slug":"computer-vision-image-analysis-e-commerce-website","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website","title":{"rendered":"Computer Vision Image Analysis for Your E-commerce Website"},"content":{"rendered":"\n<p>A successful e-commerce website or app uses images that enhance the buyer&#8217;s experience. Appealing images can spell the difference between a buyer doing a quick perusal, or staying on your site for hours.<\/p>\n\n\n\n<p>As such, you might be tempted to spend time editing each image. At face value, it seems like you&#8217;ll need a human to do the job \u2014 to actually look at the images and make decisions about how to handle them, like which shade of purple would make the best background. However, doing this manually can quickly drain your resources, and computer vision can do these types of tasks just as well. <\/p>\n\n\n\n<p>If you work with a lot of images simultaneously, or if you welcome <a href=\"https:\/\/cloudinary.com\/documentation\/user_generated_content\">user-generated content<\/a> (UGC) on your website or app, computer vision image analysis can help make sure your site looks its very best.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What\u2019s Computer Vision Image Analysis?<\/h2>\n\n\n\n<p>Computer vision is a field of artificial intelligence (AI) that enables computers to \u201cobserve\u201d and \u201cunderstand\u201d the content of photos and videos. Image analysis means extracting meaningful information from that content. As a result, using computer vision image analysis gives insight into how to automate actions.&nbsp;<\/p>\n\n\n\n<p>If you manage images in bulk, you can use computer vision image analysis for your e-commerce website to automatically crop, size, and place each image in a way that looks natural.<\/p>\n\n\n\n<p>For example, if you\u2019re building an e-commerce app for an appliance retailer, computer vision can detect which appliance appears in the images. You can then easily write an app that automatically handles the image.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img width=\"150\" height=\"150\" data-public-id=\"Web_Assets\/blog\/sink\/sink.jpeg\" loading=\"lazy\" decoding=\"async\" data-id=\"29294\" src=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/w_150,h_150,c_fill,g_auto\/f_auto,q_auto\/v1685355448\/Web_Assets\/blog\/sink\/sink.jpeg?_i=AA\" alt=\"\" class=\"wp-post-29290 wp-image-29294\" data-format=\"jpeg\" data-transformations=\"f_auto,q_auto\" data-version=\"1685355448\" data-seo=\"1\" \/><figcaption class=\"wp-element-caption\">Sink<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img width=\"150\" height=\"150\" data-public-id=\"Web_Assets\/blog\/microwave\/microwave.jpeg\" loading=\"lazy\" decoding=\"async\" data-id=\"29293\" src=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/w_150,h_150,c_fill,g_auto\/f_auto,q_auto\/v1685355446\/Web_Assets\/blog\/microwave\/microwave.jpeg?_i=AA\" alt=\"\" class=\"wp-post-29290 wp-image-29293\" data-format=\"jpeg\" data-transformations=\"f_auto,q_auto\" data-version=\"1685355446\" data-seo=\"1\" \/><figcaption class=\"wp-element-caption\">Microwave<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img width=\"150\" height=\"150\" data-public-id=\"Web_Assets\/blog\/refrigerator\/refrigerator.jpeg\" loading=\"lazy\" decoding=\"async\" data-id=\"29292\" src=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/w_150,h_150,c_fill,g_auto\/f_auto,q_auto\/v1685355444\/Web_Assets\/blog\/refrigerator\/refrigerator.jpeg?_i=AA\" alt=\"\" class=\"wp-post-29290 wp-image-29292\" data-format=\"jpeg\" data-transformations=\"f_auto,q_auto\" data-version=\"1685355444\" data-seo=\"1\" \/><figcaption class=\"wp-element-caption\">Refrigerator<\/figcaption><\/figure>\n<\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">How Can I Use Computer Vision in My App?<\/h2>\n\n\n\n<p>With <a href=\"https:\/\/cloudinary.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">Cloudinary<\/a>, a platform that empowers you to manage your media files end-to-end.<\/p>\n\n\n\n<p>When you upload images, Cloudinary can use computer vision to return lots of information, including whether or not the image contains adult content, which objects are detected; the coordinates of any faces, the width, and height; the predominant colors; any detectable text&#8230; and so much more.<\/p>\n\n\n\n<p>Use that information to make decisions about how to handle your images. For example, don&#8217;t display images that have adult content, give the images an automatically generated title that reflects the recognized objects, place an overlay on each person, group images on your sites according to color scheme, or create a border around the images using predominant colors.<\/p>\n\n\n\n<p>The possibilities are endless!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Cloudinary Computer Vision Demo App<\/h2>\n\n\n\n<p>This demo shows how you can use Cloudinary&#8217;s computer vision to handle your images. You can use it as a starting point for embedding Cloudinary&#8217;s computer vision and image analysis in your e-commerce website.<\/p>\n\n\n\n<p>In this demo, you\u2019ll upload up to three images of your choice. Then, Cloudinary will automatically use computer vision to analyze them and transform them accordingly. You\u2019ll also see a description of your images based on computer vision.<\/p>\n\n\n\n<p>Go to <a href=\"https:\/\/github.com\/cloudinary-devs\/computer-vision-demo\">GitHub<\/a> to try it out.<\/p>\n\n\n\n<div>\n  <a href=\"https:\/\/github.com\/cloudinary-devs\/computer-vision-demo\" target=\"blank\">\n  <img decoding=\"async\" src=\"https:\/\/cloudinary-res.cloudinary.com\/image\/upload\/f_auto\/q_auto\/c_crop,h_1500,w_1100\/v1751472513\/docs\/computer_vision_demo3.png\" height=500px>\n  <\/a>\n<\/div> \n\n\n\n<h3 class=\"wp-block-heading\">Upload and Analyze Images in Your Own Product Environment<\/h3>\n\n\n\n<p>You can replicate all of the functionality described in this blog on your own product environment. Just <a href=\"https:\/\/cloudinary.com\/users\/register_free\" target=\"_blank\" rel=\"noreferrer noopener\">sign up<\/a> for your free Cloudinary account and save the cloud name and API Environment variable from your <a href=\"https:\/\/console.cloudinary.com\/console\" target=\"_blank\" rel=\"noreferrer noopener\">credentials<\/a>.&nbsp;<\/p>\n\n\n\n<p>Then, either copy and paste the <a href=\"https:\/\/github.com\/cloudinary-devs\/computer-vision-demo\" target=\"_blank\" rel=\"noreferrer noopener\">source code<\/a> onto your own environment.\u00a0<\/p>\n\n\n<div class='c-callout  c-callout--inline-title c-callout--note'><strong class='c-callout__title'>Note:<\/strong> <p>Don\u2019t forget to set your environment variable and configure the Upload widget in the <code>index.html<\/code> file with your cloud name.<\/p>\n<ul>\n<li>\n<p>When writing your own applications, follow your organization\u2019s policy on storing secrets and don\u2019t expose your API secret.<\/p>\n<\/li>\n<li>\n<p>Don\u2019t store your .env under version control for maximum security.<\/p>\n<\/li>\n<\/ul>\n<\/div>\n\n\n<p>Let\u2019s focus on some of the more interesting aspects of the demo you just experienced.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Request Computer Vision Image Analysis<\/h2>\n\n\n\n<p>You can select which types of computer vision analysis to perform on your uploaded images by creating an <a href=\"https:\/\/cloudinary.com\/documentation\/upload_presets\" target=\"_blank\" rel=\"noreferrer noopener\">upload preset<\/a>, a centrally defined set of upload options. The upload preset in the demo requests auto-tagging with confidence threshold, text recognition, and image moderation. In addition, it assigns a hardcoded tag, <code>computer_vision_demo<\/code>, so that you can later easily retrieve the newly uploaded images.<\/p>\n\n\n\n<p>You&#8217;ll need to create an upload preset in your environment only once. If you&#8217;re running the demo code in your product environment for the first time, uncomment this snippet in the <code>server.py<\/code> file to create the upload preset. If you\u2019ve run the demo before in your product environment, the upload preset already exists and you don&#8217;t need to run it again. <\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\">  <span class=\"hljs-comment\"># Create the upload preset only once:<\/span>\n  cloudinary.api.create_upload_preset(\n    name = <span class=\"hljs-string\">\"docs_computer_vision_demo\"<\/span>,\n    unsigned = <span class=\"hljs-keyword\">True<\/span>,  \n    use_filename=<span class=\"hljs-keyword\">True<\/span>,\n    folder=<span class=\"hljs-string\">\"docs\/computer_vision_demo\"<\/span>,\n    tags=<span class=\"hljs-string\">\"computer_vision_demo\"<\/span>,\n    colors= <span class=\"hljs-keyword\">True<\/span>,\n    faces= <span class=\"hljs-keyword\">True<\/span>,\n    categorization = <span class=\"hljs-string\">\"google_tagging\"<\/span>, auto_tagging = <span class=\"hljs-number\">0.7<\/span>,\n    ocr = <span class=\"hljs-string\">\"adv_ocr\"<\/span>,\n    moderation = <span class=\"hljs-string\">\"aws_rek\"<\/span>\n  )  <\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">The Upload Widget<\/h2>\n\n\n\n<p>In the demo, you&#8217;ll upload your images using the <a href=\"https:\/\/cloudinary.com\/documentation\/upload_widget\" target=\"_blank\" rel=\"noreferrer noopener\">Upload widget<\/a> with the <code>docs_computer_vision_demo<\/code> <a href=\"#request_computer_vision_image_analysis\" target=\"_blank\" rel=\"noreferrer noopener\">upload preset<\/a> applied. <\/p>\n\n\n\n<p>The Upload widget is a complete interactive user interface that enables visitors to your site to upload files to your website or app from a variety of sources, such as your local device, a remote URL, popular social media accounts, and more. In addition, the widget, which only requires a couple lines of JavaScript code to integrate, eliminates the need to develop in-house interactive media upload capabilities. Easy to use within any web development framework, the Upload widget is totally responsive to fit on any device. <\/p>\n\n\n\n<p>Feel free to use the Upload widget in your e-commerce website for any UGC you invite.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/c_scale,w_600\/bo_1px_solid_gray\/dpr_2.0\/f_auto\/q_auto\/docs\/widgets\/upload_widget2_big.png\" alt=\"Upload widget computer vision image analysis for your e-commerce website\" style=\"width:495px;height:393px\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Uploading Overlay Images<\/h2>\n\n\n\n<p>Depending on the computer vision image analysis retrieved for the uploaded images, this demo places sunglasses over any detected faces and underlays an iPhone beneath the images. <\/p>\n\n\n\n<p>Use this code to upload the images only the first time you run this demo in your product environment, so that these images are available to apply as overlays:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\"><span class=\"hljs-comment\"># Upload overlays only once:  <\/span>\n    cloudinary.uploader.upload(<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/v1572554533\/iphone.png\"<\/span>, public_id=\u201ciphone\u201d, unique_filename = <span class=\"hljs-keyword\">False<\/span>, overwrite=<span class=\"hljs-keyword\">True<\/span>)\n    cloudinary.uploader.upload(<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/v1532000565\/sunglasses_emoji.png\"<\/span>, public_id=\u201cl_sunglasses_emoji\u201d, unique_filename = <span class=\"hljs-keyword\">False<\/span>, overwrite=<span class=\"hljs-keyword\">True<\/span>) <\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-4 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img width=\"1024\" height=\"683\" data-public-id=\"Web_Assets\/blog\/ppl\/ppl.jpg\" loading=\"lazy\" decoding=\"async\" data-id=\"29329\" src=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/w_1024,h_683,c_scale\/f_auto,q_auto\/v1685377895\/Web_Assets\/blog\/ppl\/ppl.jpg?_i=AA\" alt=\"\" class=\"wp-post-29290 wp-image-29329\" data-format=\"jpg\" data-transformations=\"f_auto,q_auto\" data-version=\"1685377895\" data-seo=\"1\" srcset=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685377895\/Web_Assets\/blog\/ppl\/ppl.jpg?_i=AA 1200w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685377895\/Web_Assets\/blog\/ppl\/ppl.jpg?_i=AA 300w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685377895\/Web_Assets\/blog\/ppl\/ppl.jpg?_i=AA 768w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685377895\/Web_Assets\/blog\/ppl\/ppl.jpg?_i=AA 1024w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img width=\"1024\" height=\"683\" data-public-id=\"Web_Assets\/blog\/ppl_text\/ppl_text.jpg\" loading=\"lazy\" decoding=\"async\" data-id=\"29331\" src=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/w_1024,h_683,c_scale\/f_auto,q_auto\/v1685377890\/Web_Assets\/blog\/ppl_text\/ppl_text.jpg?_i=AA\" alt=\"\" class=\"wp-post-29290 wp-image-29331\" data-format=\"jpg\" data-transformations=\"f_auto,q_auto\" data-version=\"1685377890\" data-seo=\"1\" srcset=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685377890\/Web_Assets\/blog\/ppl_text\/ppl_text.jpg?_i=AA 2040w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685377890\/Web_Assets\/blog\/ppl_text\/ppl_text.jpg?_i=AA 300w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685377890\/Web_Assets\/blog\/ppl_text\/ppl_text.jpg?_i=AA 768w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685377890\/Web_Assets\/blog\/ppl_text\/ppl_text.jpg?_i=AA 1024w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685377890\/Web_Assets\/blog\/ppl_text\/ppl_text.jpg?_i=AA 1536w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Get Detailed Information About Each Image<\/h2>\n\n\n\n<p>Once you&#8217;ve uploaded your images and the applied computer vision using an upload preset, the demo retrieves that information and uses it to decide which action to take.<\/p>\n\n\n\n<p>First, create a list of identifiers for all the uploaded images and loop through the list so each image in the list is handled separately:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript shcb-wrap-lines\">assetList=cloudinary.api.resources_by_tag(<span class=\"hljs-string\">\"computer_vision_demo\"<\/span>)\n\n\n  <span class=\"hljs-keyword\">for<\/span> asset <span class=\"hljs-keyword\">in<\/span> assetList&#91;<span class=\"hljs-string\">'resources'<\/span>]:\n    publicIds.append(asset&#91;<span class=\"hljs-string\">\"public_id\"<\/span>])\n  . . . \n  for publicId <span class=\"hljs-keyword\">in<\/span> publicIds:<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Next, use the following code snippet to retrieve the full information about the image, including its computer vision image analysis:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\">     details=cloudinary.api.resource(publicId, \n                                    faces=<span class=\"hljs-keyword\">True<\/span>, \n                                    colors=<span class=\"hljs-keyword\">True<\/span>)<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p><code>faces=True<\/code> to include face coordinates in the response.<\/p>\n\n\n\n<p><code>colors=True<\/code> to include predominant colors in the response.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Sample Response<\/h4>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-7\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript shcb-wrap-lines\"><span class=\"hljs-string\">\"info\"<\/span>: {\n   <span class=\"hljs-string\">\"categorization\"<\/span>: {\n     <span class=\"hljs-string\">\"google_tagging\"<\/span>: {\n       <span class=\"hljs-string\">\"status\"<\/span>: <span class=\"hljs-string\">\"complete\"<\/span>,\n       <span class=\"hljs-string\">\"data\"<\/span>: &#91;\n         {<span class=\"hljs-string\">\"confidence\"<\/span>: <span class=\"hljs-number\">0.9827<\/span>,\n           <span class=\"hljs-string\">\"tag\"<\/span>: <span class=\"hljs-string\">\"Face\"<\/span>},\n         {<span class=\"hljs-string\">\"confidence\"<\/span>: <span class=\"hljs-number\">0.98<\/span>,\n           <span class=\"hljs-string\">\"tag\"<\/span>: <span class=\"hljs-string\">\"Smile\"<\/span>},\n         {<span class=\"hljs-string\">\"confidence\"<\/span>: <span class=\"hljs-number\">0.9455<\/span>,\n           <span class=\"hljs-string\">\"tag\"<\/span>: <span class=\"hljs-string\">\"Dog\"<\/span>},\n         . . .\n         {<span class=\"hljs-string\">\"confidence\"<\/span>: <span class=\"hljs-number\">0.5382<\/span>,\n           <span class=\"hljs-string\">\"tag\"<\/span>: <span class=\"hljs-string\">\"Family\"<\/span>}\n       ]\n     }\n   },\n   <span class=\"hljs-string\">\"ocr\"<\/span>: {\n     <span class=\"hljs-string\">\"adv_ocr\"<\/span>: {\n       <span class=\"hljs-string\">\"status\"<\/span>: <span class=\"hljs-string\">\"complete\"<\/span>,\n       <span class=\"hljs-string\">\"data\"<\/span>: &#91;\n         {}\n       ]\n     }\n   }\n },\n <span class=\"hljs-string\">\"public_id\"<\/span>: <span class=\"hljs-string\">\"docs\/computer_vision_demo\/happy-kids-playing-with-puppy_td792d\"<\/span>,\n <span class=\"hljs-string\">\"version\"<\/span>: <span class=\"hljs-number\">1684677941<\/span>,\n <span class=\"hljs-string\">\"tags\"<\/span>: &#91;\n   <span class=\"hljs-string\">\"child\"<\/span>,\n   <span class=\"hljs-string\">\"companion dog\"<\/span>,\n   <span class=\"hljs-string\">\"sports equipment\"<\/span>,\n   <span class=\"hljs-string\">\"toddler\"<\/span>,\n   . . .\n ],\n <span class=\"hljs-string\">\"derived\"<\/span>: &#91;],\n <span class=\"hljs-string\">\"height\"<\/span>: <span class=\"hljs-number\">675<\/span>,\n <span class=\"hljs-string\">\"colors\"<\/span>: &#91;\n   &#91;<span class=\"hljs-string\">\"#DDC9BC\"<\/span>, <span class=\"hljs-number\">13.9<\/span>],\n   &#91;<span class=\"hljs-string\">\"#E0EEF6\"<\/span>, <span class=\"hljs-number\">11.9<\/span>],\n  . . . \n   &#91;<span class=\"hljs-string\">\"#7E788E\"<\/span>,<span class=\"hljs-number\">0.5<\/span>]\n ],\n <span class=\"hljs-string\">\"next_cursor\"<\/span>: <span class=\"hljs-string\">\"da6058e1816cb9c892a7e0bff3956f9fea52a9ba8560bdb11a43adfe2896c074\"<\/span>,\n <span class=\"hljs-string\">\"moderation_status\"<\/span>: <span class=\"hljs-string\">\"approved\"<\/span>,\n <span class=\"hljs-string\">\"pages\"<\/span>: <span class=\"hljs-number\">1<\/span>,\n <span class=\"hljs-string\">\"asset_id\"<\/span>: <span class=\"hljs-string\">\"84aafb6fd6e416b1636b77f85c427d9c\"<\/span>,\n <span class=\"hljs-string\">\"secure_url\"<\/span>: <span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/hzxyensd5\/image\/upload\/v1684677941\/docs\/computer_vision_demo\/happy-kids-playing-with-puppy_td792d.jpg\"<\/span>,\n <span class=\"hljs-string\">\"url\"<\/span>: <span class=\"hljs-string\">\"http:\/\/res.cloudinary.com\/hzxyensd5\/image\/upload\/v1684677941\/docs\/computer_vision_demo\/happy-kids-playing-with-puppy_td792d.jpg\"<\/span>,\n <span class=\"hljs-string\">\"predominant\"<\/span>: {\n   <span class=\"hljs-string\">\"cloudinary\"<\/span>: &#91;\n     &#91;<span class=\"hljs-string\">\"white\"<\/span>, <span class=\"hljs-number\">38.4<\/span>],\n     &#91;<span class=\"hljs-string\">\"olive\"<\/span>, <span class=\"hljs-number\">24.3<\/span>],\n     . . . \n     &#91;<span class=\"hljs-string\">\"orange\"<\/span>, <span class=\"hljs-number\">9.9<\/span>],    \n   ],\n   <span class=\"hljs-string\">\"google\"<\/span>: &#91;\n     &#91;<span class=\"hljs-string\">\"white\"<\/span>, <span class=\"hljs-number\">38.4<\/span>],\n     &#91;<span class=\"hljs-string\">\"yellow\"<\/span>, <span class=\"hljs-number\">15.6<\/span>],\n     . . . \n     &#91;<span class=\"hljs-string\">\"brown\"<\/span>, <span class=\"hljs-number\">13.7<\/span>],\n   ]\n },\n <span class=\"hljs-string\">\"created_at\"<\/span>: <span class=\"hljs-string\">\"2023-05-21T14:05:41Z\"<\/span>,\n <span class=\"hljs-string\">\"format\"<\/span>: <span class=\"hljs-string\">\"jpg\"<\/span>,\n <span class=\"hljs-string\">\"bytes\"<\/span>: <span class=\"hljs-number\">162155<\/span>,\n <span class=\"hljs-string\">\"moderation\"<\/span>: &#91;\n   {\n     <span class=\"hljs-string\">\"status\"<\/span>: <span class=\"hljs-string\">\"approved\"<\/span>,\n     <span class=\"hljs-string\">\"kind\"<\/span>: <span class=\"hljs-string\">\"aws_rek\"<\/span>,\n     <span class=\"hljs-string\">\"response\"<\/span>: {\n       <span class=\"hljs-string\">\"moderation_model_version\"<\/span>: <span class=\"hljs-string\">\"6.1\"<\/span>,\n       <span class=\"hljs-string\">\"moderation_labels\"<\/span>: &#91;]\n     },\n     <span class=\"hljs-string\">\"updated_at\"<\/span>: <span class=\"hljs-string\">\"2023-05-21T14:05:42Z\"<\/span>\n   }\n ],\n <span class=\"hljs-string\">\"width\"<\/span>: <span class=\"hljs-number\">1080<\/span>,\n <span class=\"hljs-string\">\"etag\"<\/span>: <span class=\"hljs-string\">\"d307f75e75d39b900ee31633ac23ccba\"<\/span>,\n <span class=\"hljs-string\">\"resource_type\"<\/span>: <span class=\"hljs-string\">\"image\"<\/span>,\n <span class=\"hljs-string\">\"original_filename\"<\/span>: <span class=\"hljs-string\">\"happy-kids-playing-with-puppy\"<\/span>,\n <span class=\"hljs-string\">\"faces\"<\/span>: &#91;\n   &#91;<span class=\"hljs-number\">698<\/span>,<span class=\"hljs-number\">3<\/span>,<span class=\"hljs-number\">160<\/span>,<span class=\"hljs-number\">203<\/span>],\n   &#91;<span class=\"hljs-number\">201<\/span>,<span class=\"hljs-number\">59<\/span>,<span class=\"hljs-number\">140<\/span>,<span class=\"hljs-number\">179<\/span>],\n   &#91;<span class=\"hljs-number\">432<\/span>,<span class=\"hljs-number\">147<\/span>,<span class=\"hljs-number\">155<\/span>,<span class=\"hljs-number\">162<\/span>],\n   &#91;<span class=\"hljs-number\">739<\/span>,<span class=\"hljs-number\">452<\/span>,<span class=\"hljs-number\">87<\/span>,<span class=\"hljs-number\">99<\/span>]\n ],\n <span class=\"hljs-string\">\"usage\"<\/span>: {},\n <span class=\"hljs-string\">\"folder\"<\/span>: <span class=\"hljs-string\">\"docs\/computer_vision_demo\"<\/span>,\n <span class=\"hljs-string\">\"access_mode\"<\/span>: <span class=\"hljs-string\">\"public\"<\/span>,\n <span class=\"hljs-string\">\"type\"<\/span>: <span class=\"hljs-string\">\"upload\"<\/span>,\n <span class=\"hljs-string\">\"moderation_kind\"<\/span>: <span class=\"hljs-string\">\"aws_rek\"<\/span>\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-7\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Apply Actions Based on Computer Vision<\/h2>\n\n\n\n<p>Next, it&#8217;s time to decide how to handle each image based on the computer vision image analysis. <\/p>\n\n\n\n<p>The demo handles each image one at a time directly within the loop. <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Only Display an Asset That Shows Approved Content<\/h3>\n\n\n\n<p>Use Cloudinary\u2019s image moderation to make sure your site displays the appropriate assets:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-8\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\"><span class=\"hljs-keyword\">if<\/span> details&#91;<span class=\"hljs-string\">\"moderation\"<\/span>]&#91;<span class=\"hljs-number\">0<\/span>]&#91;<span class=\"hljs-string\">\"status\"<\/span>]==<span class=\"hljs-string\">\"approved\"<\/span>:\n   <span class=\"hljs-comment\"># Perform actions on the images based on computer vision image analysis.<\/span>\n   . . . \n<span class=\"hljs-keyword\">else<\/span>:\n   display=<span class=\"hljs-string\">\"no\"<\/span>\n   message=<span class=\"hljs-string\">\"This picture can't be displayed.\"<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-8\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">Use Computer Vision to Create a Description<\/h3>\n\n\n\n<p>The demo creates a title and description for each image. In particular, the description points out any words in the picture, the coordinates of any faces in the picture, image orientation, and predominant colors.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-9\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\">      <span class=\"hljs-comment\"># OCR<\/span>\n      <span class=\"hljs-keyword\">if<\/span> <span class=\"hljs-string\">\"textAnnotations\"<\/span> in details&#91;<span class=\"hljs-string\">\"info\"<\/span>]&#91;<span class=\"hljs-string\">\"ocr\"<\/span>]&#91;<span class=\"hljs-string\">\"adv_ocr\"<\/span>]&#91;<span class=\"hljs-string\">\"data\"<\/span>]&#91;<span class=\"hljs-number\">0<\/span>]:\n        word = details&#91;<span class=\"hljs-string\">\"info\"<\/span>]&#91;<span class=\"hljs-string\">\"ocr\"<\/span>]&#91;<span class=\"hljs-string\">\"adv_ocr\"<\/span>]&#91;<span class=\"hljs-string\">\"data\"<\/span>]&#91;<span class=\"hljs-number\">0<\/span>]\n        message=message+<span class=\"hljs-string\">\"This picture contains the phrase '\"<\/span> + word&#91;<span class=\"hljs-string\">\"textAnnotations\"<\/span>]&#91;<span class=\"hljs-number\">0<\/span>]&#91;<span class=\"hljs-string\">\"description\"<\/span>] + <span class=\"hljs-string\">\"'.\\n\"<\/span>\n      <span class=\"hljs-keyword\">else<\/span>:\n        message=message+<span class=\"hljs-string\">\"There aren't any words in this picture.\\n\\n\"<\/span>\n\n      <span class=\"hljs-comment\"># Face detection<\/span>\n      faces=len(details&#91;<span class=\"hljs-string\">\"faces\"<\/span>])\n   \n      <span class=\"hljs-keyword\">if<\/span> faces==<span class=\"hljs-number\">0<\/span>:\n        message=message+<span class=\"hljs-string\">\"There aren't any faces in this picture.\\n\\n\"<\/span>\n      elif faces==<span class=\"hljs-number\">1<\/span>:\n        coordinates = details&#91;<span class=\"hljs-string\">\"faces\"<\/span>]&#91;<span class=\"hljs-number\">0<\/span>]\n        message=message+<span class=\"hljs-string\">\"There is one face in this picture with coordinates: \"<\/span> + <span class=\"hljs-string\">' ,'<\/span>.join(str(e) <span class=\"hljs-keyword\">for<\/span> e in coordinates)+ <span class=\"hljs-string\">\"\\n\\n\"<\/span>\n      <span class=\"hljs-keyword\">else<\/span>:\n        message=message+<span class=\"hljs-string\">\"There are \"<\/span> + str(faces) + <span class=\"hljs-string\">\" faces in this picture with coordinates:\\n \"<\/span>\n        <span class=\"hljs-keyword\">for<\/span> coordinates in (details&#91;<span class=\"hljs-string\">\"faces\"<\/span>]):\n          message=message+<span class=\"hljs-string\">' '<\/span>.join(str(e) <span class=\"hljs-keyword\">for<\/span> e in coordinates)+<span class=\"hljs-string\">' \\n'<\/span>\n        message=message+<span class=\"hljs-string\">\"\\n\"<\/span>\n\n      <span class=\"hljs-comment\"># Orientation<\/span>\n      <span class=\"hljs-keyword\">if<\/span> details&#91;<span class=\"hljs-string\">\"width\"<\/span>]\/details&#91;<span class=\"hljs-string\">\"height\"<\/span>]&gt;<span class=\"hljs-number\">1<\/span>:\n        orientation=<span class=\"hljs-string\">\"landscape\"<\/span>\n        message=message+<span class=\"hljs-string\">\"The orientation is Landscape.\\n\\n\"<\/span>\n      elif details&#91;<span class=\"hljs-string\">\"width\"<\/span>]\/details&#91;<span class=\"hljs-string\">\"height\"<\/span>]==<span class=\"hljs-number\">1<\/span>:\n        orientation=<span class=\"hljs-string\">\"square\"<\/span>\n        message=message+<span class=\"hljs-string\">\"The picture is a square.\\n\\n\"<\/span>\n      <span class=\"hljs-keyword\">else<\/span>:\n        orientation=<span class=\"hljs-string\">\"portrait\"<\/span>\n        message=message+<span class=\"hljs-string\">\" The orientation is Portrait.\\n\\n\"<\/span>\n\n      <span class=\"hljs-comment\"># Colors<\/span>\n      color1=details&#91;<span class=\"hljs-string\">\"colors\"<\/span>]&#91;<span class=\"hljs-number\">0<\/span>]&#91;<span class=\"hljs-number\">0<\/span>]\n      color2=details&#91;<span class=\"hljs-string\">\"colors\"<\/span>]&#91;<span class=\"hljs-number\">1<\/span>]&#91;<span class=\"hljs-number\">0<\/span>]\n      message=message+<span class=\"hljs-string\">\"The predominant colors are \"<\/span> + details&#91;<span class=\"hljs-string\">\"colors\"<\/span>]&#91;<span class=\"hljs-number\">0<\/span>]&#91;<span class=\"hljs-number\">0<\/span>] + <span class=\"hljs-string\">\" and \"<\/span> +  details&#91;<span class=\"hljs-string\">\"colors\"<\/span>]&#91;<span class=\"hljs-number\">1<\/span>]&#91;<span class=\"hljs-number\">0<\/span>] + <span class=\"hljs-string\">\".\"<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-9\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">Use Computer Vision to Create Transformations<\/h3>\n\n\n\n<p>Cloudinary transforms your images on the fly. Use computer vision to tailor and personalize each image according to its content. The demo places an iPhone underlay that&#8217;s positioned according to the image orientation, places sunglasses over any detected face, and draws a border using the predominant colors.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-10\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php shcb-wrap-lines\"> <span class=\"hljs-comment\"># Build transformations<\/span>\n      place=url.find(<span class=\"hljs-string\">\"upload\/\"<\/span>)+<span class=\"hljs-number\">7<\/span>\n      <span class=\"hljs-comment\"># Add phone underlay<\/span>\n      <span class=\"hljs-keyword\">if<\/span> orientation==<span class=\"hljs-string\">\"portrait\"<\/span> <span class=\"hljs-keyword\">or<\/span> orientation==<span class=\"hljs-string\">\"square\"<\/span>:\n        transformation = url&#91; :place] +<span class=\"hljs-string\">\"u_iphone,w_1.7,h_1.7,fl_relative\/\"<\/span>+ transformation&#91;place: ]    \n      <span class=\"hljs-keyword\">else<\/span>:\n        transformation = url&#91; :place] +<span class=\"hljs-string\">\"u_iphone,a_180,w_1.7,h_1.7,fl_relative\/\"<\/span>+ transformation&#91;place: ]\n\n      <span class=\"hljs-comment\"># Place sunglasses over faces in images<\/span>\n      <span class=\"hljs-keyword\">if<\/span> faces&gt;<span class=\"hljs-number\">0<\/span>:\n        transformation=transformation&#91; :place] +<span class=\"hljs-string\">\"l_sunglasses_emoji\/fl_layer_apply,w_1.1,fl_region_relative,g_faces\/\"<\/span> + transformation&#91;place: ]\n             \n      <span class=\"hljs-comment\"># Make border using predominant colors<\/span>\n      <span class=\"hljs-keyword\">if<\/span> faces==<span class=\"hljs-number\">0<\/span>:\n        color1=color1.replace(<span class=\"hljs-string\">\"#\"<\/span>,<span class=\"hljs-string\">\"\"<\/span>)\n        color2=color2.replace(<span class=\"hljs-string\">\"#\"<\/span>,<span class=\"hljs-string\">\"\"<\/span>)\n        transformation = transformation&#91; :place] + <span class=\"hljs-string\">\"b_rgb:\"<\/span>+color1+<span class=\"hljs-string\">\"\/bo_35px_solid_rgb:\"<\/span>+color2+<span class=\"hljs-string\">\"\/\"<\/span>+ transformation&#91;place: ]\n\n      transformation=transformation&#91; :place] +<span class=\"hljs-string\">\"h_300\/f_auto\/q_auto\/\"<\/span> + transformation&#91;place: ]\n      transformations.append(transformation)\n      messages.append(message)<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-10\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Additional Possibilities<\/h2>\n\n\n\n<p>This demo demonstrates just a few of Cloudinary\u2019s computer vision image analysis capabilities for your e-commerce website. Here are a few other important things you could do with Cloudinary\u2019s computer vision:&nbsp;<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/cloudinary.com\/documentation\/analysis_on_upload#accessibility_analysis\" target=\"_blank\" rel=\"noreferrer noopener\">Analyze your images for accessibility<\/a> to help you to choose the best images for people with color blindness.&nbsp;<\/li>\n\n\n\n<li><a href=\"https:\/\/cloudinary.com\/documentation\/analysis_on_upload#semantic_data_extraction\" target=\"_blank\" rel=\"noreferrer noopener\">Return the perceptual hash (pHash) on the uploaded image<\/a> as a fingerprint that allows checking image similarity.&nbsp;<\/li>\n\n\n\n<li>Return a list of detected content using the <a href=\"https:\/\/cloudinary.com\/documentation\/cloudinary_ai_content_analysis_addon#automatic_image_tagging\" target=\"_blank\" rel=\"noreferrer noopener\">Cloudinary AI Content Analysis<\/a> add-on. It can be used together with the auto_tagging parameter to apply tags automatically.<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Return a list of facial attributes using the <a href=\"https:\/\/cloudinary.com\/documentation\/advanced_facial_attributes_detection_addon\" target=\"_blank\" rel=\"noreferrer noopener\">Advanced Facial Attribute Detection<\/a> add-on.<\/li>\n\n\n\n<li>Return a list of detected celebrities and facial attributes using the <a href=\"https:\/\/cloudinary.com\/documentation\/aws_rekognition_celebrity_and_face_detection_addon\" target=\"_blank\" rel=\"noreferrer noopener\">Amazon Rekognition Celebrity Detection<\/a> add-on. It can be used together with the auto_tagging parameter to apply tags automatically.<\/li>\n<\/ul>\n\n\n\n<p>See the <a href=\"https:\/\/cloudinary.com\/documentation\/analysis_on_upload\" target=\"_blank\" rel=\"noreferrer noopener\">documentation<\/a> for more ideas!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Developers With a \u201cVision\u201d Using Computer Vision<\/h2>\n\n\n\n<p>You\u2019ve just gotten a taste of some of the cool things you can do with Cloudinary using computer vision image analysis for your e-commerce website. Cloudinary takes the place of a human to \u201cobserve\u201d and \u201cunderstand\u201d the content of photos and videos, only faster than any human possibly could. After that, it\u2019s up to you to write an app that automates image handling based on Cloudinary\u2019s insights.<\/p>\n\n\n\n<p>How can your business use computer vision to augment your unique offering?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A successful e-commerce website or app uses images that enhance the buyer&#8217;s experience. Appealing images can spell the difference between a buyer doing a quick perusal, or staying on your site for hours. As such, you might be tempted to spend time editing each image. At face value, it seems like you&#8217;ll need a human [&hellip;]<\/p>\n","protected":false},"author":52,"featured_media":29494,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[336,98],"class_list":["post-29290","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-ai","tag-e-commerce"],"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>Computer Vision Image Analysis for Your E-commerce Website<\/title>\n<meta name=\"description\" content=\"Save resources by letting Cloudinary handle the images on your e-commerce website using computer vision image analysis.\" \/>\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\/computer-vision-image-analysis-e-commerce-website\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Computer Vision Image Analysis for Your E-commerce Website\" \/>\n<meta property=\"og:description\" content=\"Save resources by letting Cloudinary handle the images on your e-commerce website using computer vision image analysis.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2023-06-09T14:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-17T13:46:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685735031\/Blog-computer-vision\/Blog-computer-vision.jpg?_i=AA\" \/>\n\t<meta property=\"og:image:width\" content=\"2000\" \/>\n\t<meta property=\"og:image:height\" content=\"1100\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"sharonyelenik\" \/>\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\/computer-vision-image-analysis-e-commerce-website#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website\"},\"author\":{\"name\":\"sharonyelenik\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/dc4e70df8d22a9cfdad676a82fa92a73\"},\"headline\":\"Computer Vision Image Analysis for Your E-commerce Website\",\"datePublished\":\"2023-06-09T14:00:00+00:00\",\"dateModified\":\"2025-11-17T13:46:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website\"},\"wordCount\":1363,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685735031\/Blog-computer-vision\/Blog-computer-vision.jpg?_i=AA\",\"keywords\":[\"AI\",\"E-commerce\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2023\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website\",\"url\":\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website\",\"name\":\"Computer Vision Image Analysis for Your E-commerce Website\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685735031\/Blog-computer-vision\/Blog-computer-vision.jpg?_i=AA\",\"datePublished\":\"2023-06-09T14:00:00+00:00\",\"dateModified\":\"2025-11-17T13:46:12+00:00\",\"description\":\"Save resources by letting Cloudinary handle the images on your e-commerce website using computer vision image analysis.\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685735031\/Blog-computer-vision\/Blog-computer-vision.jpg?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685735031\/Blog-computer-vision\/Blog-computer-vision.jpg?_i=AA\",\"width\":2000,\"height\":1100},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Computer Vision Image Analysis for Your E-commerce Website\"}]},{\"@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\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/dc4e70df8d22a9cfdad676a82fa92a73\",\"name\":\"sharonyelenik\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6565cdd768a04e9b6ea3932764886209dd9de8baeeef1504eaad8fe776677f92?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6565cdd768a04e9b6ea3932764886209dd9de8baeeef1504eaad8fe776677f92?s=96&d=mm&r=g\",\"caption\":\"sharonyelenik\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Computer Vision Image Analysis for Your E-commerce Website","description":"Save resources by letting Cloudinary handle the images on your e-commerce website using computer vision image analysis.","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\/computer-vision-image-analysis-e-commerce-website","og_locale":"en_US","og_type":"article","og_title":"Computer Vision Image Analysis for Your E-commerce Website","og_description":"Save resources by letting Cloudinary handle the images on your e-commerce website using computer vision image analysis.","og_url":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website","og_site_name":"Cloudinary Blog","article_published_time":"2023-06-09T14:00:00+00:00","article_modified_time":"2025-11-17T13:46:12+00:00","og_image":[{"width":2000,"height":1100,"url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685735031\/Blog-computer-vision\/Blog-computer-vision.jpg?_i=AA","type":"image\/jpeg"}],"author":"sharonyelenik","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website"},"author":{"name":"sharonyelenik","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/dc4e70df8d22a9cfdad676a82fa92a73"},"headline":"Computer Vision Image Analysis for Your E-commerce Website","datePublished":"2023-06-09T14:00:00+00:00","dateModified":"2025-11-17T13:46:12+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website"},"wordCount":1363,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685735031\/Blog-computer-vision\/Blog-computer-vision.jpg?_i=AA","keywords":["AI","E-commerce"],"inLanguage":"en-US","copyrightYear":"2023","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website","url":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website","name":"Computer Vision Image Analysis for Your E-commerce Website","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685735031\/Blog-computer-vision\/Blog-computer-vision.jpg?_i=AA","datePublished":"2023-06-09T14:00:00+00:00","dateModified":"2025-11-17T13:46:12+00:00","description":"Save resources by letting Cloudinary handle the images on your e-commerce website using computer vision image analysis.","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685735031\/Blog-computer-vision\/Blog-computer-vision.jpg?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685735031\/Blog-computer-vision\/Blog-computer-vision.jpg?_i=AA","width":2000,"height":1100},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/computer-vision-image-analysis-e-commerce-website#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Computer Vision Image Analysis for Your E-commerce Website"}]},{"@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":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/dc4e70df8d22a9cfdad676a82fa92a73","name":"sharonyelenik","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6565cdd768a04e9b6ea3932764886209dd9de8baeeef1504eaad8fe776677f92?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6565cdd768a04e9b6ea3932764886209dd9de8baeeef1504eaad8fe776677f92?s=96&d=mm&r=g","caption":"sharonyelenik"}}]}},"jetpack_featured_media_url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685735031\/Blog-computer-vision\/Blog-computer-vision.jpg?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/29290","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\/52"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/comments?post=29290"}],"version-history":[{"count":67,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/29290\/revisions"}],"predecessor-version":[{"id":39297,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/29290\/revisions\/39297"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/29494"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=29290"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=29290"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=29290"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}