{"id":29587,"date":"2023-06-21T05:30:00","date_gmt":"2023-06-21T12:30:00","guid":{"rendered":"https:\/\/cloudinary.com\/blog\/?p=29587"},"modified":"2026-03-26T07:11:35","modified_gmt":"2026-03-26T14:11:35","slug":"generative-ai-remove-objects-images","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images","title":{"rendered":"AI Object Remover | Edit Images by Removing Unwanted Objects"},"content":{"rendered":"<div class=\"wp-block-cloudinary-markdown \"><\/div>\n\n\n<p>If you and your creative or technical team frequently handle image editing, you know the time and effort it takes to remove unwanted elements from images, especially at scale. Whether you work in real estate, travel and hospitality, advertising, or any other industry, the demand for image editing is constant, and more complex tasks like object removal can significantly slow down your team&#8217;s workflow. Hence, we&#8217;re excited to present Cloudinary&#8217;s latest innovations in generative AI.<\/p>\n\n\n\n<p>Try out Generative Remove and other cutting edge-features at our new&nbsp;<a href=\"http:\/\/ai.cloudinary.com\/\">Generative AI Playground<\/a>. You can use Cloudinary\u2019s AI object remover with our free-for-life plan. <a href=\"https:\/\/cloudinary.com\/users\/register\/free\">Sign up today<\/a> and get started!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Introducing the Generative Remove Feature by Cloudinary<\/h2>\n\n\n\n<p>Our Programmable Media product now includes the experimental&nbsp;<a href=\"https:\/\/cloudinary.com\/documentation\/transformation_reference#e_gen_remove\">Generative Remove feature<\/a>, which uses state-of-the-art technology such as open-set object detection and powerful generative AI capabilities through stable diffusion to provide AI image remove object functionality.&nbsp;<\/p>\n\n\n\n<p>Using Generative Remove, you can effortlessly remove unwanted objects, text, and specific user-defined regions from your images. Technical and creative teams with repetitive object removal tasks can now accomplish this at scale using Cloudinary&#8217;s APIs.<\/p>\n\n\n<div class='c-callout  c-callout--inline-title c-callout--note'><strong class='c-callout__title'>Note:<\/strong> <p>For more information please check out the <a href=\"https:\/\/cloudinary.com\/documentation\/transformation_reference#e_gen_remove\">documentation<\/a> or try the <a href=\"https:\/\/ai.cloudinary.com\/demos\/remove\">demo<\/a>.<\/p>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Use Cases for an AI Object Remover<\/h3>\n\n\n\n<p>The Intelligent Generative Remove feature has a wide range of applications across industries.&nbsp;<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Real estate.<\/strong> Remove unwanted items to enhance a listing&#8217;s imagery. Example: Remove a car from an otherwise perfect property photo.<\/li>\n\n\n\n<li><strong>E-commerce and fashion.<\/strong> Remove unwanted accessories or props to focus on the primary product. Example: A shot of a model wearing multiple jewelry pieces, remove a bracelet and focus on earrings.<\/li>\n\n\n\n<li><strong>Social media. <\/strong>Get rid of distracting or unwanted elements from <a href=\"https:\/\/cloudinary.com\/documentation\/user_generated_content\">user-generated content<\/a>. Example: Photobombers in the background of a great selfie.<\/li>\n\n\n\n<li><strong>Ad agencies. <\/strong>Remove logos or other branding elements when reusing your images for other clients. Example: Remove a logo from a billboard in the background of another brand\u2019s banner photo.<\/li>\n\n\n\n<li><strong>Travel and hospitality. <\/strong>Enhance scenic imagery by removing unwanted elements such as vehicles, litter, and even people.&nbsp;<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">How to Use Cloudinary\u2019s AI Object Remover<\/h2>\n\n\n\n<p>Using the Intelligent Generative Remove feature is easy. First, upload your images to your Cloudinary product environment. Once an image is uploaded, you can utilize our URL-based API (or any of our SDKs) to build the transformation using the <code>e_gen_remove<\/code> command.<\/p>\n\n\n\n<p>For more information, check out the <a href=\"https:\/\/cloudinary.com\/documentation\/effects_and_artistic_enhancements#generative_remove\" target=\"_blank\" rel=\"noreferrer noopener\">documentation page<\/a> for the feature or look at the examples below.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Examples&nbsp;<\/h3>\n\n\n\n<style type=\"text\/css\">\n    #map_canvas img,\n    #map_canvas embed,\n    #map_canvas object,\n    .map_canvas img,\n    .map_canvas embed,\n    .map_canvas object {\n        max-width: none !important;\n    }\n\n    .left {\n        float: left !important;\n    }\n\n    .right {\n        float: right !important;\n    }\n\n    .text-left {\n        text-align: left !important;\n    }\n\n    .text-right {\n        text-align: right !important;\n    }\n\n    .text-center {\n        text-align: center !important;\n    }\n\n    .text-justify {\n        text-align: justify !important;\n    }\n\n    .hide {\n        display: none;\n    }\n\n    .antialiased {\n        -webkit-font-smoothing: antialiased;\n    }\n\n    img {\n        display: inline-block;\n        vertical-align: middle;\n    }\n\n    textarea {\n        height: auto;\n        min-height: 50px;\n    }\n\n    select {\n        width: 100%;\n    }\n\n    \/* Grid HTML Classes *\/\n    .row {\n        width: 100%;\n        margin-left: auto;\n        margin-right: auto;\n        margin-top: 0;\n        margin-bottom: 0;\n        max-width: 62.5em;\n        *zoom: 1;\n    }\n    .row:before,\n    .row:after {\n        content: \" \";\n        display: table;\n    }\n    .row:after {\n        clear: both;\n    }\n    .row.collapse .column,\n    .row.collapse .columns {\n        position: relative;\n        padding-left: 0;\n        padding-right: 0;\n        float: left;\n    }\n    .row .row {\n        width: auto;\n        margin-left: -0.9375em;\n        margin-right: -0.9375em;\n        margin-top: 0;\n        margin-bottom: 0;\n        max-width: none;\n        *zoom: 1;\n    }\n    .row .row:before,\n    .row .row:after {\n        content: \" \";\n        display: table;\n    }\n    .row .row:after {\n        clear: both;\n    }\n    .row .row.collapse {\n        width: auto;\n        margin: 0;\n        max-width: none;\n        *zoom: 1;\n    }\n    .row .row.collapse:before,\n    .row .row.collapse:after {\n        content: \" \";\n        display: table;\n    }\n    .row .row.collapse:after {\n        clear: both;\n    }\n\n    .column,\n    .columns {\n        position: relative;\n        padding-left: 0.9375em;\n        padding-right: 0.9375em;\n        width: 100%;\n        float: left;\n    }\n\n    @media only screen {\n        .column,\n        .columns {\n            position: relative;\n            padding-left: 0.9375em;\n            padding-right: 0.9375em;\n            float: left;\n        }\n\n        .small-1 {\n            position: relative;\n            width: 8.33333%;\n        }\n\n        .small-2 {\n            position: relative;\n            width: 16.66667%;\n        }\n\n        .small-3 {\n            position: relative;\n            width: 25%;\n        }\n\n        .small-4 {\n            position: relative;\n            width: 33.33333%;\n        }\n\n        .small-5 {\n            position: relative;\n            width: 41.66667%;\n        }\n\n        .small-6 {\n            position: relative;\n            width: 50%;\n        }\n\n        .small-7 {\n            position: relative;\n            width: 58.33333%;\n        }\n\n        .small-8 {\n            position: relative;\n            width: 66.66667%;\n        }\n\n        .small-9 {\n            position: relative;\n            width: 75%;\n        }\n\n        .small-10 {\n            position: relative;\n            width: 83.33333%;\n        }\n\n        .small-11 {\n            position: relative;\n            width: 91.66667%;\n        }\n\n        .small-12 {\n            position: relative;\n            width: 100%;\n        }\n\n        .small-offset-0 {\n            position: relative;\n            margin-left: 0%;\n        }\n\n        .small-offset-1 {\n            position: relative;\n            margin-left: 8.33333%;\n        }\n\n        .small-offset-2 {\n            position: relative;\n            margin-left: 16.66667%;\n        }\n\n        .small-offset-3 {\n            position: relative;\n            margin-left: 25%;\n        }\n\n        .small-offset-4 {\n            position: relative;\n            margin-left: 33.33333%;\n        }\n\n        .small-offset-5 {\n            position: relative;\n            margin-left: 41.66667%;\n        }\n\n        .small-offset-6 {\n            position: relative;\n            margin-left: 50%;\n        }\n\n        .small-offset-7 {\n            position: relative;\n            margin-left: 58.33333%;\n        }\n\n        .small-offset-8 {\n            position: relative;\n            margin-left: 66.66667%;\n        }\n\n        .small-offset-9 {\n            position: relative;\n            margin-left: 75%;\n        }\n\n        .small-offset-10 {\n            position: relative;\n            margin-left: 83.33333%;\n        }\n\n        [class*=\"column\"] + [class*=\"column\"]:last-child {\n            float: right;\n        }\n\n        [class*=\"column\"] + [class*=\"column\"].end {\n            float: left;\n        }\n\n        .column.small-centered,\n        .columns.small-centered {\n            position: relative;\n            margin-left: auto;\n            margin-right: auto;\n            float: none !important;\n        }\n    }\n    \/* Styles for screens that are atleast 768px; *\/\n    @media only screen and (min-width: 768px) {\n        .large-1 {\n            position: relative;\n            width: 8.33333%;\n        }\n\n        .large-2 {\n            position: relative;\n            width: 16.66667%;\n        }\n\n        .large-3 {\n            position: relative;\n            width: 25%;\n        }\n\n        .large-4 {\n            position: relative;\n            width: 33.33333%;\n        }\n\n        .large-5 {\n            position: relative;\n            width: 41.66667%;\n        }\n\n        .large-6 {\n            position: relative;\n            width: 50%;\n        }\n\n        .large-7 {\n            position: relative;\n            width: 58.33333%;\n        }\n\n        .large-8 {\n            position: relative;\n            width: 66.66667%;\n        }\n\n        .large-9 {\n            position: relative;\n            width: 75%;\n        }\n\n        .large-10 {\n            position: relative;\n            width: 83.33333%;\n        }\n\n        .large-11 {\n            position: relative;\n            width: 91.66667%;\n        }\n\n        .large-12 {\n            position: relative;\n            width: 100%;\n        }\n\n        .row .large-offset-0 {\n            position: relative;\n            margin-left: 0%;\n        }\n\n        .row .large-offset-1 {\n            position: relative;\n            margin-left: 8.33333%;\n        }\n\n        .row .large-offset-2 {\n            position: relative;\n            margin-left: 16.66667%;\n        }\n\n        .row .large-offset-3 {\n            position: relative;\n            margin-left: 25%;\n        }\n\n        .row .large-offset-4 {\n            position: relative;\n            margin-left: 33.33333%;\n        }\n\n        .row .large-offset-5 {\n            position: relative;\n            margin-left: 41.66667%;\n        }\n\n        .row .large-offset-6 {\n            position: relative;\n            margin-left: 50%;\n        }\n\n        .row .large-offset-7 {\n            position: relative;\n            margin-left: 58.33333%;\n        }\n\n        .row .large-offset-8 {\n            position: relative;\n            margin-left: 66.66667%;\n        }\n\n        .row .large-offset-9 {\n            position: relative;\n            margin-left: 75%;\n        }\n\n        .row .large-offset-10 {\n            position: relative;\n            margin-left: 83.33333%;\n        }\n\n        .row .large-offset-11 {\n            position: relative;\n            margin-left: 91.66667%;\n        }\n\n        .push-1 {\n            position: relative;\n            left: 8.33333%;\n            right: auto;\n        }\n\n        .pull-1 {\n            position: relative;\n            right: 8.33333%;\n            left: auto;\n        }\n\n        .push-2 {\n            position: relative;\n            left: 16.66667%;\n            right: auto;\n        }\n\n        .pull-2 {\n            position: relative;\n            right: 16.66667%;\n            left: auto;\n        }\n\n        .push-3 {\n            position: relative;\n            left: 25%;\n            right: auto;\n        }\n\n        .pull-3 {\n            position: relative;\n            right: 25%;\n            left: auto;\n        }\n\n        .push-4 {\n            position: relative;\n            left: 33.33333%;\n            right: auto;\n        }\n\n        .pull-4 {\n            position: relative;\n            right: 33.33333%;\n            left: auto;\n        }\n\n        .push-5 {\n            position: relative;\n            left: 41.66667%;\n            right: auto;\n        }\n\n        .pull-5 {\n            position: relative;\n            right: 41.66667%;\n            left: auto;\n        }\n\n        .push-6 {\n            position: relative;\n            left: 50%;\n            right: auto;\n        }\n\n        .pull-6 {\n            position: relative;\n            right: 50%;\n            left: auto;\n        }\n\n        .push-7 {\n            position: relative;\n            left: 58.33333%;\n            right: auto;\n        }\n\n        .pull-7 {\n            position: relative;\n            right: 58.33333%;\n            left: auto;\n        }\n\n        .push-8 {\n            position: relative;\n            left: 66.66667%;\n            right: auto;\n        }\n\n        .pull-8 {\n            position: relative;\n            right: 66.66667%;\n            left: auto;\n        }\n\n        .push-9 {\n            position: relative;\n            left: 75%;\n            right: auto;\n        }\n\n        .pull-9 {\n            position: relative;\n            right: 75%;\n            left: auto;\n        }\n\n        .push-10 {\n            position: relative;\n            left: 83.33333%;\n            right: auto;\n        }\n\n        .pull-10 {\n            position: relative;\n            right: 83.33333%;\n            left: auto;\n        }\n\n        .push-11 {\n            position: relative;\n            left: 91.66667%;\n            right: auto;\n        }\n\n        .pull-11 {\n            position: relative;\n            right: 91.66667%;\n            left: auto;\n        }\n\n        .column.large-centered,\n        .columns.large-centered {\n            position: relative;\n            margin-left: auto;\n            margin-right: auto;\n            float: none !important;\n        }\n\n        .column.large-uncentered,\n        .columns.large-uncentered {\n            margin-left: 0;\n            margin-right: 0;\n            float: left !important;\n        }\n\n        .column.large-uncentered.opposite,\n        .columns.large-uncentered.opposite {\n            float: right !important;\n        }\n    }\n\n    .twentytwenty-horizontal .twentytwenty-handle:before,\n    .twentytwenty-horizontal .twentytwenty-handle:after,\n    .twentytwenty-vertical .twentytwenty-handle:before,\n    .twentytwenty-vertical .twentytwenty-handle:after {\n        content: \" \";\n        display: block;\n        background: white;\n        position: absolute;\n        z-index: 30;\n        -webkit-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);\n        -moz-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);\n        box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);\n    }\n\n    .twentytwenty-horizontal .twentytwenty-handle:before,\n    .twentytwenty-horizontal .twentytwenty-handle:after {\n        width: 3px;\n        height: 9999px;\n        left: 50%;\n        margin-left: -1.5px;\n    }\n\n    .twentytwenty-vertical .twentytwenty-handle:before,\n    .twentytwenty-vertical .twentytwenty-handle:after {\n        width: 9999px;\n        height: 3px;\n        top: 50%;\n        margin-top: -1.5px;\n    }\n\n    .twentytwenty-before-label,\n    .twentytwenty-after-label,\n    .twentytwenty-overlay {\n        position: absolute;\n        top: 0;\n        width: 100%;\n        height: 100%;\n    }\n\n    .twentytwenty-before-label,\n    .twentytwenty-after-label,\n    .twentytwenty-overlay {\n        -webkit-transition-duration: 0.5s;\n        -moz-transition-duration: 0.5s;\n        transition-duration: 0.5s;\n    }\n\n    .twentytwenty-before-label,\n    .twentytwenty-after-label {\n        -webkit-transition-property: opacity;\n        -moz-transition-property: opacity;\n        transition-property: opacity;\n    }\n\n    .twentytwenty-before-label:before,\n    .twentytwenty-after-label:before {\n        color: white;\n        font-size: 13px;\n        letter-spacing: 0.1em;\n    }\n\n    .twentytwenty-before-label:before,\n    .twentytwenty-after-label:before {\n        position: absolute;\n        background: rgba(255, 255, 255, 0.2);\n        line-height: 38px;\n        padding: 0 20px;\n        -webkit-border-radius: 2px;\n        -moz-border-radius: 2px;\n        border-radius: 2px;\n    }\n\n    .twentytwenty-horizontal .twentytwenty-before-label:before,\n    .twentytwenty-horizontal .twentytwenty-after-label:before {\n        top: 50%;\n        margin-top: -19px;\n    }\n\n    .twentytwenty-vertical .twentytwenty-before-label:before,\n    .twentytwenty-vertical .twentytwenty-after-label:before {\n        left: 50%;\n        margin-left: -45px;\n        text-align: center;\n        width: 90px;\n    }\n\n    .twentytwenty-left-arrow,\n    .twentytwenty-right-arrow,\n    .twentytwenty-up-arrow,\n    .twentytwenty-down-arrow {\n        width: 0;\n        height: 0;\n        border: 6px inset transparent;\n        position: absolute;\n    }\n\n    .twentytwenty-left-arrow,\n    .twentytwenty-right-arrow {\n        top: 50%;\n        margin-top: -6px;\n    }\n\n    .twentytwenty-up-arrow,\n    .twentytwenty-down-arrow {\n        left: 50%;\n        margin-left: -6px;\n    }\n\n    .twentytwenty-container {\n        -webkit-box-sizing: content-box;\n        -moz-box-sizing: content-box;\n        box-sizing: content-box;\n        z-index: 0;\n        overflow: hidden;\n        position: relative;\n        -webkit-user-select: none;\n        -moz-user-select: none;\n        -ms-user-select: none;\n    }\n    .twentytwenty-container img {\n        max-width: 100%;\n        position: absolute;\n        top: 0;\n        display: block;\n    }\n    .twentytwenty-container.active .twentytwenty-overlay,\n    .twentytwenty-container.active :hover.twentytwenty-overlay {\n        background: rgba(0, 0, 0, 0);\n    }\n    .twentytwenty-container.active .twentytwenty-overlay .twentytwenty-before-label,\n    .twentytwenty-container.active .twentytwenty-overlay .twentytwenty-after-label,\n    .twentytwenty-container.active :hover.twentytwenty-overlay .twentytwenty-before-label,\n    .twentytwenty-container.active :hover.twentytwenty-overlay .twentytwenty-after-label {\n        opacity: 0;\n    }\n    .twentytwenty-container * {\n        -webkit-box-sizing: content-box;\n        -moz-box-sizing: content-box;\n        box-sizing: content-box;\n    }\n\n    .twentytwenty-before-label {\n        opacity: 0;\n    }\n    .twentytwenty-before-label:before {\n        content: attr(data-content);\n    }\n\n    .twentytwenty-after-label {\n        opacity: 0;\n    }\n    .twentytwenty-after-label:before {\n        content: attr(data-content);\n    }\n\n    .twentytwenty-horizontal .twentytwenty-before-label:before {\n        left: 10px;\n    }\n\n    .twentytwenty-horizontal .twentytwenty-after-label:before {\n        right: 10px;\n    }\n\n    .twentytwenty-vertical .twentytwenty-before-label:before {\n        top: 10px;\n    }\n\n    .twentytwenty-vertical .twentytwenty-after-label:before {\n        bottom: 10px;\n    }\n\n    .twentytwenty-overlay {\n        -webkit-transition-property: background;\n        -moz-transition-property: background;\n        transition-property: background;\n        background: rgba(0, 0, 0, 0);\n        z-index: 25;\n    }\n    .twentytwenty-overlay:hover {\n        background: rgba(0, 0, 0, 0.5);\n    }\n    .twentytwenty-overlay:hover .twentytwenty-after-label {\n        opacity: 1;\n    }\n    .twentytwenty-overlay:hover .twentytwenty-before-label {\n        opacity: 1;\n    }\n\n    .twentytwenty-before {\n        z-index: 20;\n    }\n\n    .twentytwenty-after {\n        z-index: 10;\n    }\n\n    .twentytwenty-handle {\n        height: 38px;\n        width: 38px;\n        position: absolute;\n        left: 50%;\n        top: 50%;\n        margin-left: -22px;\n        margin-top: -22px;\n        border: 3px solid white;\n        -webkit-border-radius: 1000px;\n        -moz-border-radius: 1000px;\n        border-radius: 1000px;\n        -webkit-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);\n        -moz-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);\n        box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);\n        z-index: 40;\n        cursor: pointer;\n    }\n\n    .twentytwenty-horizontal .twentytwenty-handle:before {\n        bottom: 50%;\n        margin-bottom: 22px;\n        -webkit-box-shadow: 0 3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n        -moz-box-shadow: 0 3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n        box-shadow: 0 3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n    }\n    .twentytwenty-horizontal .twentytwenty-handle:after {\n        top: 50%;\n        margin-top: 22px;\n        -webkit-box-shadow: 0 -3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n        -moz-box-shadow: 0 -3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n        box-shadow: 0 -3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n    }\n\n    .twentytwenty-vertical .twentytwenty-handle:before {\n        left: 50%;\n        margin-left: 22px;\n        -webkit-box-shadow: 3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n        -moz-box-shadow: 3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n        box-shadow: 3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n    }\n    .twentytwenty-vertical .twentytwenty-handle:after {\n        right: 50%;\n        margin-right: 22px;\n        -webkit-box-shadow: -3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n        -moz-box-shadow: -3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n        box-shadow: -3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);\n    }\n\n    .twentytwenty-left-arrow {\n        border-right: 6px solid white;\n        left: 50%;\n        margin-left: -17px;\n    }\n\n    .twentytwenty-right-arrow {\n        border-left: 6px solid white;\n        right: 50%;\n        margin-right: -17px;\n    }\n\n    .twentytwenty-up-arrow {\n        border-bottom: 6px solid white;\n        top: 50%;\n        margin-top: -17px;\n    }\n\n    .twentytwenty-down-arrow {\n        border-top: 6px solid white;\n        bottom: 50%;\n        margin-bottom: -17px;\n    }\n\n    p.code {\n        padding: 5px 10px;\n        color: #fff;\n        background-color: #000044;\n        font-size: 14px;\n        font-family: georgia;\n        border-radius: 10px;\n    }\n\n    .small {\n        font-size: 0.8rem;\n        line-height: 1rem;\n    }\n\n    p.code span {\n        color: dodgerblue;\n        font-weight: bold;\n        font-size: 16px;\n        font-family: georgia;\n        font-family: georgia;\n    }\n    @media only screen and (max-width: 410px) {\n        p.code {\n            display: none;\n        }\n    }\n<\/style>\n\n<div class=\"row\">\n    <div class=\"large-12 columns\" style=\"padding: 0;\">\n        <div class=\"twentytwenty-container\">\n            <img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/f_auto,q_auto\/c_fill,w_1500,h_850\/v1686334315\/pm\/phone_there\">\n            <img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/f_auto,q_auto\/c_fill,w_1500,h_850\/v1686334315\/pm\/phone_gone\">\n        <\/div>\n    <\/div>\n<\/div>\n\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/jquery\/3.2.1\/jquery.min.js\"><\/script>\n<script async=\"\" src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/jquery.event.move\/2.0.1\/jquery.event.move.js\"><\/script>\n<script async=\"\" src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/mhayes-twentytwenty\/1.0.0\/js\/jquery.twentytwenty.min.js\"><\/script>\n\n<script>\n    $(function(){\n      $(\".twentytwenty-container[data-orientation!='vertical']\").twentytwenty({default_offset_pct: 0.5});\n    });\n<\/script>\n\n\n<cld-code-widget\n      class=\"wp-block-cloudinary-transformation-widget c-code-widget\"\n      snippets=\"[{&quot;sdkId&quot;:&quot;nodejs&quot;,&quot;framework&quot;:&quot;nodejs&quot;,&quot;language&quot;:&quot;nodejs&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(\\&quot;pm\\\/phone_there\\&quot;, {effect: \\&quot;gen_remove:prompt_phone\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(\\&quot;pm\\\/phone_there\\&quot;, {effect: \\&quot;gen_remove:prompt_phone\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Node.js&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_2&quot;,&quot;framework&quot;:&quot;react_2&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;phone\\&quot;))\\n  .setVersion(1686334315);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;phone\\&quot;))\\n  .setVersion(1686334315);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;react&quot;,&quot;framework&quot;:&quot;react&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;pm\\\/phone_there\\&quot; &gt; &lt;Transformation effect=\\&quot;gen_remove:prompt_phone\\&quot; \\\/&gt; &lt;\\\/Image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;pm\\\/phone_there\\&quot; &gt;\\n\\t&lt;Transformation effect=\\&quot;gen_remove:prompt_phone\\&quot; \\\/&gt;\\n&lt;\\\/Image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;cloudinary-react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue_2&quot;,&quot;framework&quot;:&quot;vue_2&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;phone\\&quot;))\\n  .setVersion(1686334315);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;phone\\&quot;))\\n  .setVersion(1686334315);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/vue&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue&quot;,&quot;framework&quot;:&quot;vue&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;pm\\\/phone_there\\&quot; &gt; &lt;cld-transformation effect=\\&quot;gen_remove:prompt_phone\\&quot; \\\/&gt; &lt;\\\/cld-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;pm\\\/phone_there\\&quot; &gt;\\n\\t&lt;cld-transformation effect=\\&quot;gen_remove:prompt_phone\\&quot; \\\/&gt;\\n&lt;\\\/cld-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;cloudinary-vue&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular_2&quot;,&quot;framework&quot;:&quot;angular_2&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;phone\\&quot;))\\n  .setVersion(1686334315);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;phone\\&quot;))\\n  .setVersion(1686334315);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/ng&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular&quot;,&quot;framework&quot;:&quot;angular&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;pm\\\/phone_there\\&quot; &gt; &lt;cl-transformation effect=\\&quot;gen_remove:prompt_phone\\&quot;&gt; &lt;\\\/cl-transformation&gt; &lt;\\\/cl-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;pm\\\/phone_there\\&quot; &gt;\\n\\t&lt;cl-transformation effect=\\&quot;gen_remove:prompt_phone\\&quot;&gt;\\n\\t&lt;\\\/cl-transformation&gt;\\n&lt;\\\/cl-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/angular-5.x&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js_2&quot;,&quot;framework&quot;:&quot;js_2&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;phone\\&quot;))\\n  .setVersion(1686334315);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;phone\\&quot;))\\n  .setVersion(1686334315);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js&quot;,&quot;framework&quot;:&quot;js&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.imageTag(&#039;pm\\\/phone_there&#039;, {effect: \\&quot;gen_remove:prompt_phone\\&quot;}).toHtml();&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.imageTag(&#039;pm\\\/phone_there&#039;, {effect: \\&quot;gen_remove:prompt_phone\\&quot;}).toHtml();&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;cloudinary-core&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;python&quot;,&quot;framework&quot;:&quot;python&quot;,&quot;language&quot;:&quot;python&quot;,&quot;rawCodeSnippet&quot;:&quot;CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;).image(effect=\\&quot;gen_remove:prompt_phone\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;).image(effect=\\&quot;gen_remove:prompt_phone\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Python&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;php_2&quot;,&quot;framework&quot;:&quot;php_2&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;(new ImageTag(&#039;pm\\\/phone_there&#039;))\\n\\t-&gt;effect(Effect::generativeRemove()-&gt;prompt(\\&quot;phone\\&quot;))\\n\\t-&gt;version(1686334315);&quot;,&quot;codeSnippet&quot;:&quot;(new ImageTag(&#039;pm\\\/phone_there&#039;))\\n\\t-&gt;effect(Effect::generativeRemove()-&gt;prompt(\\&quot;phone\\&quot;))\\n\\t-&gt;version(1686334315);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;php&quot;,&quot;framework&quot;:&quot;php&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;pm\\\/phone_there\\&quot;, array(\\&quot;effect\\&quot;=&gt;\\&quot;gen_remove:prompt_phone\\&quot;))&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;pm\\\/phone_there\\&quot;, array(\\&quot;effect\\&quot;=&gt;\\&quot;gen_remove:prompt_phone\\&quot;))&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;java&quot;,&quot;framework&quot;:&quot;java&quot;,&quot;language&quot;:&quot;java&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().effect(\\&quot;gen_remove:prompt_phone\\&quot;)).imageTag(\\&quot;pm\\\/phone_there\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().effect(\\&quot;gen_remove:prompt_phone\\&quot;)).imageTag(\\&quot;pm\\\/phone_there\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Java&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;ruby&quot;,&quot;framework&quot;:&quot;ruby&quot;,&quot;language&quot;:&quot;ruby&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;pm\\\/phone_there\\&quot;, effect: \\&quot;gen_remove:prompt_phone\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;pm\\\/phone_there\\&quot;, effect: \\&quot;gen_remove:prompt_phone\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Ruby&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;csharp&quot;,&quot;framework&quot;:&quot;csharp&quot;,&quot;language&quot;:&quot;csharp&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Effect(\\&quot;gen_remove:prompt_phone\\&quot;)).BuildImageTag(\\&quot;pm\\\/phone_there\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Effect(\\&quot;gen_remove:prompt_phone\\&quot;)).BuildImageTag(\\&quot;pm\\\/phone_there\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;.NET&quot;,&quot;packageName&quot;:&quot;CloudinaryDotNet&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;dart&quot;,&quot;framework&quot;:&quot;dart&quot;,&quot;language&quot;:&quot;dart&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;pm\\\/phone_there&#039;).transformation(Transformation()\\n\\t.effect(Effect.generativeRemove().prompt(\\&quot;phone\\&quot;))\\n\\t.version(1686334315));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;pm\\\/phone_there&#039;).transformation(Transformation()\\n\\t.effect(Effect.generativeRemove().prompt(\\&quot;phone\\&quot;))\\n\\t.version(1686334315));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Dart&quot;,&quot;packageName&quot;:&quot;cloudinary_dart&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;swift&quot;,&quot;framework&quot;:&quot;swift&quot;,&quot;language&quot;:&quot;swift&quot;,&quot;rawCodeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setEffect(\\&quot;gen_remove:prompt_phone\\&quot;)).generate(\\&quot;pm\\\/phone_there\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;codeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setEffect(\\&quot;gen_remove:prompt_phone\\&quot;)).generate(\\&quot;pm\\\/phone_there\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;iOS&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;5.x&quot;},{&quot;sdkId&quot;:&quot;android&quot;,&quot;framework&quot;:&quot;android&quot;,&quot;language&quot;:&quot;android&quot;,&quot;rawCodeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().effect(\\&quot;gen_remove:prompt_phone\\&quot;)).generate(\\&quot;pm\\\/phone_there\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().effect(\\&quot;gen_remove:prompt_phone\\&quot;)).generate(\\&quot;pm\\\/phone_there\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Android&quot;,&quot;packageName&quot;:&quot;cloudinary-android&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;flutter&quot;,&quot;framework&quot;:&quot;flutter&quot;,&quot;language&quot;:&quot;flutter&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;pm\\\/phone_there&#039;).transformation(Transformation()\\n\\t.effect(Effect.generativeRemove().prompt(\\&quot;phone\\&quot;))\\n\\t.version(1686334315));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;pm\\\/phone_there&#039;).transformation(Transformation()\\n\\t.effect(Effect.generativeRemove().prompt(\\&quot;phone\\&quot;))\\n\\t.version(1686334315));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Flutter&quot;,&quot;packageName&quot;:&quot;cloudinary_flutter&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;kotlin&quot;,&quot;framework&quot;:&quot;kotlin&quot;,&quot;language&quot;:&quot;kotlin&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;pm\\\/phone_there\\&quot;)\\n\\t effect(Effect.generativeRemove() { prompt(\\&quot;phone\\&quot;) })\\n\\t version(1686334315) \\n}.generate()&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;pm\\\/phone_there\\&quot;)\\n\\t effect(Effect.generativeRemove() { prompt(\\&quot;phone\\&quot;) })\\n\\t version(1686334315) \\n}.generate()&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Kotlin&quot;,&quot;packageName&quot;:&quot;kotlin-url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;jquery&quot;,&quot;framework&quot;:&quot;jquery&quot;,&quot;language&quot;:&quot;jquery&quot;,&quot;rawCodeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;pm\\\/phone_there\\&quot;, {effect: \\&quot;gen_remove:prompt_phone\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;pm\\\/phone_there\\&quot;, {effect: \\&quot;gen_remove:prompt_phone\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;jQuery&quot;,&quot;packageName&quot;:&quot;cloudinary-jquery&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_native&quot;,&quot;framework&quot;:&quot;react_native&quot;,&quot;language&quot;:&quot;react_native&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;phone\\&quot;))\\n  .setVersion(1686334315);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/phone_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;phone\\&quot;))\\n  .setVersion(1686334315);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React Native&quot;,&quot;packageName&quot;:&quot;cloudinary-react-native&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;}]\"\n      parsed-url=\"{&quot;url&quot;:&quot;https:\\\/\\\/res.cloudinary.com\\\/demo\\\/image\\\/upload\\\/e_gen_remove:prompt_phone\\\/v1686334315\\\/pm\\\/phone_there&quot;,&quot;cloud_name&quot;:&quot;demo&quot;,&quot;host&quot;:&quot;res.cloudinary.com&quot;,&quot;type&quot;:&quot;upload&quot;,&quot;resource_type&quot;:&quot;image&quot;,&quot;transformation&quot;:[{&quot;effect&quot;:&quot;gen_remove:prompt_phone&quot;}],&quot;transformation_string&quot;:&quot;e_gen_remove:prompt_phone&quot;,&quot;url_suffix&quot;:&quot;&quot;,&quot;version&quot;:&quot;1686334315&quot;,&quot;secure&quot;:true,&quot;public_id&quot;:&quot;pm\\\/phone_there&quot;,&quot;extension&quot;:&quot;&quot;,&quot;format&quot;:&quot;&quot;,&quot;format_code&quot;:true,&quot;url_code&quot;:false,&quot;signature&quot;:&quot;&quot;,&quot;private_cdn&quot;:false,&quot;result_asset_type&quot;:&quot;image&quot;}\"\n      with-url=\"true\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget>\n\n\n<br>\n\n\n\n<div class=\"row\" style=\"margin-top: 20px;\">\n    <div class=\"large-12 columns\" style=\"padding: 0;\">\n        <div class=\"twentytwenty-container\">\n            <img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/f_auto,q_auto\/c_fill,w_1500,h_850\/a_hflip\/v1686334878\/pm\/legs_there\">\n            <img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/demo\/image\/upload\/f_auto,q_auto\/c_fill,w_1500,h_850\/a_hflip\/v1686334878\/pm\/legs_gone\">\n        <\/div>\n    <\/div>\n<\/div>\n\n\n<cld-code-widget\n      class=\"wp-block-cloudinary-transformation-widget c-code-widget\"\n      snippets=\"[{&quot;sdkId&quot;:&quot;nodejs&quot;,&quot;framework&quot;:&quot;nodejs&quot;,&quot;language&quot;:&quot;nodejs&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(\\&quot;pm\\\/legs_there\\&quot;, {effect: \\&quot;gen_remove:prompt_legs\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(\\&quot;pm\\\/legs_there\\&quot;, {effect: \\&quot;gen_remove:prompt_legs\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Node.js&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_2&quot;,&quot;framework&quot;:&quot;react_2&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;legs\\&quot;))\\n  .setVersion(1686334878);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;legs\\&quot;))\\n  .setVersion(1686334878);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;react&quot;,&quot;framework&quot;:&quot;react&quot;,&quot;language&quot;:&quot;react&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;pm\\\/legs_there\\&quot; &gt; &lt;Transformation effect=\\&quot;gen_remove:prompt_legs\\&quot; \\\/&gt; &lt;\\\/Image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;Image publicId=\\&quot;pm\\\/legs_there\\&quot; &gt;\\n\\t&lt;Transformation effect=\\&quot;gen_remove:prompt_legs\\&quot; \\\/&gt;\\n&lt;\\\/Image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React&quot;,&quot;packageName&quot;:&quot;cloudinary-react&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue_2&quot;,&quot;framework&quot;:&quot;vue_2&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;legs\\&quot;))\\n  .setVersion(1686334878);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;legs\\&quot;))\\n  .setVersion(1686334878);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/vue&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;vue&quot;,&quot;framework&quot;:&quot;vue&quot;,&quot;language&quot;:&quot;vue&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;pm\\\/legs_there\\&quot; &gt; &lt;cld-transformation effect=\\&quot;gen_remove:prompt_legs\\&quot; \\\/&gt; &lt;\\\/cld-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cld-image public-id=\\&quot;pm\\\/legs_there\\&quot; &gt;\\n\\t&lt;cld-transformation effect=\\&quot;gen_remove:prompt_legs\\&quot; \\\/&gt;\\n&lt;\\\/cld-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Vue.js&quot;,&quot;packageName&quot;:&quot;cloudinary-vue&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular_2&quot;,&quot;framework&quot;:&quot;angular_2&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;legs\\&quot;))\\n  .setVersion(1686334878);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;legs\\&quot;))\\n  .setVersion(1686334878);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/ng&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;angular&quot;,&quot;framework&quot;:&quot;angular&quot;,&quot;language&quot;:&quot;angular&quot;,&quot;rawCodeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;pm\\\/legs_there\\&quot; &gt; &lt;cl-transformation effect=\\&quot;gen_remove:prompt_legs\\&quot;&gt; &lt;\\\/cl-transformation&gt; &lt;\\\/cl-image&gt;&quot;,&quot;codeSnippet&quot;:&quot;&lt;cl-image public-id=\\&quot;pm\\\/legs_there\\&quot; &gt;\\n\\t&lt;cl-transformation effect=\\&quot;gen_remove:prompt_legs\\&quot;&gt;\\n\\t&lt;\\\/cl-transformation&gt;\\n&lt;\\\/cl-image&gt;&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Angular&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/angular-5.x&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js_2&quot;,&quot;framework&quot;:&quot;js_2&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;legs\\&quot;))\\n  .setVersion(1686334878);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;legs\\&quot;))\\n  .setVersion(1686334878);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;@cloudinary\\\/url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;js&quot;,&quot;framework&quot;:&quot;js&quot;,&quot;language&quot;:&quot;js&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.imageTag(&#039;pm\\\/legs_there&#039;, {effect: \\&quot;gen_remove:prompt_legs\\&quot;}).toHtml();&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.imageTag(&#039;pm\\\/legs_there&#039;, {effect: \\&quot;gen_remove:prompt_legs\\&quot;}).toHtml();&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;JS&quot;,&quot;packageName&quot;:&quot;cloudinary-core&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;python&quot;,&quot;framework&quot;:&quot;python&quot;,&quot;language&quot;:&quot;python&quot;,&quot;rawCodeSnippet&quot;:&quot;CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;).image(effect=\\&quot;gen_remove:prompt_legs\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;).image(effect=\\&quot;gen_remove:prompt_legs\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Python&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;php_2&quot;,&quot;framework&quot;:&quot;php_2&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;(new ImageTag(&#039;pm\\\/legs_there&#039;))\\n\\t-&gt;effect(Effect::generativeRemove()-&gt;prompt(\\&quot;legs\\&quot;))\\n\\t-&gt;version(1686334878);&quot;,&quot;codeSnippet&quot;:&quot;(new ImageTag(&#039;pm\\\/legs_there&#039;))\\n\\t-&gt;effect(Effect::generativeRemove()-&gt;prompt(\\&quot;legs\\&quot;))\\n\\t-&gt;version(1686334878);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;php&quot;,&quot;framework&quot;:&quot;php&quot;,&quot;language&quot;:&quot;php&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;pm\\\/legs_there\\&quot;, array(\\&quot;effect\\&quot;=&gt;\\&quot;gen_remove:prompt_legs\\&quot;))&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;pm\\\/legs_there\\&quot;, array(\\&quot;effect\\&quot;=&gt;\\&quot;gen_remove:prompt_legs\\&quot;))&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;PHP&quot;,&quot;packageName&quot;:&quot;cloudinary_php&quot;,&quot;packageStatus&quot;:&quot;legacy&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;java&quot;,&quot;framework&quot;:&quot;java&quot;,&quot;language&quot;:&quot;java&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().effect(\\&quot;gen_remove:prompt_legs\\&quot;)).imageTag(\\&quot;pm\\\/legs_there\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.url().transformation(new Transformation().effect(\\&quot;gen_remove:prompt_legs\\&quot;)).imageTag(\\&quot;pm\\\/legs_there\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Java&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;ruby&quot;,&quot;framework&quot;:&quot;ruby&quot;,&quot;language&quot;:&quot;ruby&quot;,&quot;rawCodeSnippet&quot;:&quot;cl_image_tag(\\&quot;pm\\\/legs_there\\&quot;, effect: \\&quot;gen_remove:prompt_legs\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cl_image_tag(\\&quot;pm\\\/legs_there\\&quot;, effect: \\&quot;gen_remove:prompt_legs\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Ruby&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;csharp&quot;,&quot;framework&quot;:&quot;csharp&quot;,&quot;language&quot;:&quot;csharp&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Effect(\\&quot;gen_remove:prompt_legs\\&quot;)).BuildImageTag(\\&quot;pm\\\/legs_there\\&quot;)&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.Api.UrlImgUp.Transform(new Transformation().Effect(\\&quot;gen_remove:prompt_legs\\&quot;)).BuildImageTag(\\&quot;pm\\\/legs_there\\&quot;)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;.NET&quot;,&quot;packageName&quot;:&quot;CloudinaryDotNet&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;dart&quot;,&quot;framework&quot;:&quot;dart&quot;,&quot;language&quot;:&quot;dart&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;pm\\\/legs_there&#039;).transformation(Transformation()\\n\\t.effect(Effect.generativeRemove().prompt(\\&quot;legs\\&quot;))\\n\\t.version(1686334878));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;pm\\\/legs_there&#039;).transformation(Transformation()\\n\\t.effect(Effect.generativeRemove().prompt(\\&quot;legs\\&quot;))\\n\\t.version(1686334878));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Dart&quot;,&quot;packageName&quot;:&quot;cloudinary_dart&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;swift&quot;,&quot;framework&quot;:&quot;swift&quot;,&quot;language&quot;:&quot;swift&quot;,&quot;rawCodeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setEffect(\\&quot;gen_remove:prompt_legs\\&quot;)).generate(\\&quot;pm\\\/legs_there\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;codeSnippet&quot;:&quot;imageView.cldSetImage(cloudinary.createUrl().setTransformation(CLDTransformation().setEffect(\\&quot;gen_remove:prompt_legs\\&quot;)).generate(\\&quot;pm\\\/legs_there\\&quot;)!, cloudinary: cloudinary)&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;iOS&quot;,&quot;packageName&quot;:&quot;cloudinary&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;5.x&quot;},{&quot;sdkId&quot;:&quot;android&quot;,&quot;framework&quot;:&quot;android&quot;,&quot;language&quot;:&quot;android&quot;,&quot;rawCodeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().effect(\\&quot;gen_remove:prompt_legs\\&quot;)).generate(\\&quot;pm\\\/legs_there\\&quot;);&quot;,&quot;codeSnippet&quot;:&quot;MediaManager.get().url().transformation(new Transformation().effect(\\&quot;gen_remove:prompt_legs\\&quot;)).generate(\\&quot;pm\\\/legs_there\\&quot;);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Android&quot;,&quot;packageName&quot;:&quot;cloudinary-android&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;3.x&quot;},{&quot;sdkId&quot;:&quot;flutter&quot;,&quot;framework&quot;:&quot;flutter&quot;,&quot;language&quot;:&quot;flutter&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image(&#039;pm\\\/legs_there&#039;).transformation(Transformation()\\n\\t.effect(Effect.generativeRemove().prompt(\\&quot;legs\\&quot;))\\n\\t.version(1686334878));&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image(&#039;pm\\\/legs_there&#039;).transformation(Transformation()\\n\\t.effect(Effect.generativeRemove().prompt(\\&quot;legs\\&quot;))\\n\\t.version(1686334878));&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Flutter&quot;,&quot;packageName&quot;:&quot;cloudinary_flutter&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;kotlin&quot;,&quot;framework&quot;:&quot;kotlin&quot;,&quot;language&quot;:&quot;kotlin&quot;,&quot;rawCodeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;pm\\\/legs_there\\&quot;)\\n\\t effect(Effect.generativeRemove() { prompt(\\&quot;legs\\&quot;) })\\n\\t version(1686334878) \\n}.generate()&quot;,&quot;codeSnippet&quot;:&quot;cloudinary.image {\\n\\tpublicId(\\&quot;pm\\\/legs_there\\&quot;)\\n\\t effect(Effect.generativeRemove() { prompt(\\&quot;legs\\&quot;) })\\n\\t version(1686334878) \\n}.generate()&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;Kotlin&quot;,&quot;packageName&quot;:&quot;kotlin-url-gen&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;},{&quot;sdkId&quot;:&quot;jquery&quot;,&quot;framework&quot;:&quot;jquery&quot;,&quot;language&quot;:&quot;jquery&quot;,&quot;rawCodeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;pm\\\/legs_there\\&quot;, {effect: \\&quot;gen_remove:prompt_legs\\&quot;})&quot;,&quot;codeSnippet&quot;:&quot;$.cloudinary.image(\\&quot;pm\\\/legs_there\\&quot;, {effect: \\&quot;gen_remove:prompt_legs\\&quot;})&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;jQuery&quot;,&quot;packageName&quot;:&quot;cloudinary-jquery&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;2.x&quot;},{&quot;sdkId&quot;:&quot;react_native&quot;,&quot;framework&quot;:&quot;react_native&quot;,&quot;language&quot;:&quot;react_native&quot;,&quot;rawCodeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;legs\\&quot;))\\n  .setVersion(1686334878);&quot;,&quot;codeSnippet&quot;:&quot;new CloudinaryImage(\\&quot;pm\\\/legs_there\\&quot;)\\n  .effect(generativeRemove().prompt(\\&quot;legs\\&quot;))\\n  .setVersion(1686334878);&quot;,&quot;status&quot;:0,&quot;statusText&quot;:&quot;Ok&quot;,&quot;displayName&quot;:&quot;React Native&quot;,&quot;packageName&quot;:&quot;cloudinary-react-native&quot;,&quot;packageStatus&quot;:&quot;&quot;,&quot;packageVersion&quot;:&quot;1.x&quot;}]\"\n      parsed-url=\"{&quot;url&quot;:&quot;https:\\\/\\\/res.cloudinary.com\\\/demo\\\/image\\\/upload\\\/e_gen_remove:prompt_legs\\\/v1686334878\\\/pm\\\/legs_there&quot;,&quot;cloud_name&quot;:&quot;demo&quot;,&quot;host&quot;:&quot;res.cloudinary.com&quot;,&quot;type&quot;:&quot;upload&quot;,&quot;resource_type&quot;:&quot;image&quot;,&quot;transformation&quot;:[{&quot;effect&quot;:&quot;gen_remove:prompt_legs&quot;}],&quot;transformation_string&quot;:&quot;e_gen_remove:prompt_legs&quot;,&quot;url_suffix&quot;:&quot;&quot;,&quot;version&quot;:&quot;1686334878&quot;,&quot;secure&quot;:true,&quot;public_id&quot;:&quot;pm\\\/legs_there&quot;,&quot;extension&quot;:&quot;&quot;,&quot;format&quot;:&quot;&quot;,&quot;format_code&quot;:true,&quot;url_code&quot;:false,&quot;signature&quot;:&quot;&quot;,&quot;private_cdn&quot;:false,&quot;result_asset_type&quot;:&quot;image&quot;}\"\n      with-url=\"true\"\n    >\n      <span class=\"u-visually-hidden\">Loading code examples<\/span>\n    <\/cld-code-widget>\n\n\n<p><em>When Programmable Media receives a remove command for a given image, our technology attempts to detect the object supplied in the prompt. If we find the suggested element, we will remove it. Next, our inpainting generative AI will fill the now-blank area based on its surroundings.<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Technologies Used<\/h2>\n\n\n\n<p>Let\u2019s get technical for a moment!<\/p>\n\n\n\n<p>Cloudinary&#8217;s Intelligent Generative Remove feature utilizes <code>open-set object detection<\/code>. This technology helps software recognize and understand different objects in an image without being specifically trained to find them.&nbsp;<\/p>\n\n\n\n<p>This method offers our Generative Remove feature much more flexibility in detecting anything a user can mark for removal.<\/p>\n\n\n\n<p>For example, the feature can adapt and recognize new objects and variations of known objects that may have a variety of shapes and dimensions.&nbsp;<\/p>\n\n\n\n<p>This adaptability makes Generative Remove robust in various real-world scenarios where the appearance of objects of the same type (cars, for example) may vary significantly.<\/p>\n\n\n\n<p>By using open-set object detection, Cloudinary&#8217;s Generative Remove feature can be more flexible and adaptable in recognizing and removing different objects from images. Once the object is identified, the popular Stable Diffusion model is applied to remove and then fill the newly blank area to match the context of its surroundings, also known as inpainting.&nbsp;<\/p>\n\n\n\n<p>By analyzing the nearby image information, Stable Diffusion ensures that the inpainted area blends seamlessly with the rest of the image.&nbsp;<\/p>\n\n\n\n<p>This level of quality is critical for teams who want to maintain the integrity of the image while also creating an aesthetically pleasing result, primarily when the Remove feature is utilized at scale.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Programmable Media and Generative AI &#8211; What\u2019s Next?<\/h2>\n\n\n\n<p>We\u2019re working on Generative AI Transformation features and improving functionality to Programmable media. Coming soon:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Generative Fill.<\/strong> Outpainting can pad an existing image with new contextually-aware image fills. This will be extremely useful for teams who must create adaptations for various devices in various aspect ratios and extend the image instead of adding a pad. This feature will also leverage Stable Diffusion to achieve esthetically pleasing results.<\/li>\n\n\n\n<li><strong>Generative Replace<\/strong>. The next iteration of the remove feature, where a detected object can be replaced with another. This would again make use of open-set detection and stable diffusion. A sample use case here is replacing one object with another based on your audience, for example, replacing a can of beer with a bottle of juice if an image is meant to be used in a campaign targeted to those under the legal drinking age.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>Cloudinary\u2019s Generative Remove feature empowers users to remove unwanted elements from images effortlessly, leveraging state-of-the-art technology for object detection and inpainting technologies through our Programmable Media product. This feature further strengthens Cloudinary\u2019s goal of intelligent automation: where eliminating time-consuming tasks enhances productivity and frees creative teams to focus on more strategic endeavors.<\/p>\n\n\n\n<p>We\u2019re committed to ongoing innovation and introducing advanced functionalities like intelligent element erasing, element replacement, and outpainting. Incorporating generative AI features such as erase and replace ensures a comprehensive and versatile image editing experience within our Programmable Media platform. <a href=\"https:\/\/cloudinary.com\/users\/register\/free\">Try it out today and see the difference for yourself<\/a>!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you and your creative or technical team frequently handle image editing, you know the time and effort it takes to remove unwanted elements from images, especially at scale. Whether you work in real estate, travel and hospitality, advertising, or any other industry, the demand for image editing is constant, and more complex tasks like [&hellip;]<\/p>\n","protected":false},"author":87,"featured_media":29600,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[336,409],"class_list":["post-29587","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-ai","tag-generative-ai"],"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>AI Object Remover | Edit Images by Removing Unwanted Objects<\/title>\n<meta name=\"description\" content=\"Cloudinary\u2019s generative AI object remover makes image editing a snap, and you can use it for free.\" \/>\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\/generative-ai-remove-objects-images\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AI Object Remover | Edit Images by Removing Unwanted Objects\" \/>\n<meta property=\"og:description\" content=\"Cloudinary\u2019s generative AI object remover makes image editing a snap, and you can use it for free.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2023-06-21T12:30:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-26T14:11:35+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685047909\/Blog-generative-ai\/Blog-generative-ai.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=\"melindapham\" \/>\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\/generative-ai-remove-objects-images#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images\"},\"author\":{\"name\":\"melindapham\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9\"},\"headline\":\"AI Object Remover | Edit Images by Removing Unwanted Objects\",\"datePublished\":\"2023-06-21T12:30:00+00:00\",\"dateModified\":\"2026-03-26T14:11:35+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images\"},\"wordCount\":930,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685047909\/Blog-generative-ai\/Blog-generative-ai.jpg?_i=AA\",\"keywords\":[\"AI\",\"Generative AI\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2023\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images\",\"url\":\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images\",\"name\":\"AI Object Remover | Edit Images by Removing Unwanted Objects\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685047909\/Blog-generative-ai\/Blog-generative-ai.jpg?_i=AA\",\"datePublished\":\"2023-06-21T12:30:00+00:00\",\"dateModified\":\"2026-03-26T14:11:35+00:00\",\"description\":\"Cloudinary\u2019s generative AI object remover makes image editing a snap, and you can use it for free.\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685047909\/Blog-generative-ai\/Blog-generative-ai.jpg?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685047909\/Blog-generative-ai\/Blog-generative-ai.jpg?_i=AA\",\"width\":2000,\"height\":1100,\"caption\":\"Image showing two versions of a plated meal using AI image remove object technology to remove one of the items in the meal\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AI Object Remover | Edit Images by Removing Unwanted Objects\"}]},{\"@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\/0d5ad601e4c3b5be89245dfb14be42d9\",\"name\":\"melindapham\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g\",\"caption\":\"melindapham\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"AI Object Remover | Edit Images by Removing Unwanted Objects","description":"Cloudinary\u2019s generative AI object remover makes image editing a snap, and you can use it for free.","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\/generative-ai-remove-objects-images","og_locale":"en_US","og_type":"article","og_title":"AI Object Remover | Edit Images by Removing Unwanted Objects","og_description":"Cloudinary\u2019s generative AI object remover makes image editing a snap, and you can use it for free.","og_url":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images","og_site_name":"Cloudinary Blog","article_published_time":"2023-06-21T12:30:00+00:00","article_modified_time":"2026-03-26T14:11:35+00:00","og_image":[{"width":2000,"height":1100,"url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685047909\/Blog-generative-ai\/Blog-generative-ai.jpg?_i=AA","type":"image\/jpeg"}],"author":"melindapham","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images"},"author":{"name":"melindapham","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9"},"headline":"AI Object Remover | Edit Images by Removing Unwanted Objects","datePublished":"2023-06-21T12:30:00+00:00","dateModified":"2026-03-26T14:11:35+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images"},"wordCount":930,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685047909\/Blog-generative-ai\/Blog-generative-ai.jpg?_i=AA","keywords":["AI","Generative AI"],"inLanguage":"en-US","copyrightYear":"2023","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images","url":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images","name":"AI Object Remover | Edit Images by Removing Unwanted Objects","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685047909\/Blog-generative-ai\/Blog-generative-ai.jpg?_i=AA","datePublished":"2023-06-21T12:30:00+00:00","dateModified":"2026-03-26T14:11:35+00:00","description":"Cloudinary\u2019s generative AI object remover makes image editing a snap, and you can use it for free.","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685047909\/Blog-generative-ai\/Blog-generative-ai.jpg?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685047909\/Blog-generative-ai\/Blog-generative-ai.jpg?_i=AA","width":2000,"height":1100,"caption":"Image showing two versions of a plated meal using AI image remove object technology to remove one of the items in the meal"},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/generative-ai-remove-objects-images#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"AI Object Remover | Edit Images by Removing Unwanted Objects"}]},{"@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\/0d5ad601e4c3b5be89245dfb14be42d9","name":"melindapham","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g","caption":"melindapham"}}]}},"jetpack_featured_media_url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1685047909\/Blog-generative-ai\/Blog-generative-ai.jpg?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/29587","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\/87"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/comments?post=29587"}],"version-history":[{"count":32,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/29587\/revisions"}],"predecessor-version":[{"id":39957,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/29587\/revisions\/39957"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/29600"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=29587"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=29587"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=29587"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}