{"id":3961,"date":"2022-08-31T16:40:06","date_gmt":"2022-08-31T16:40:06","guid":{"rendered":"https:\/\/billsbud.org\/?p=3961"},"modified":"2022-08-31T16:40:06","modified_gmt":"2022-08-31T16:40:06","slug":"dall%c2%b7e-introducing-outpainting","status":"publish","type":"post","link":"https:\/\/billsbud.org\/?p=3961","title":{"rendered":"DALL\u00b7E: Introducing Outpainting"},"content":{"rendered":"<p><!--kg-card-begin: markdown--><\/p>\n<div class=\"js-excerpt\">\n<img decoding=\"async\" src=\"https:\/\/openai.com\/content\/images\/2022\/08\/outpainting-social.png\" alt=\"DALL&#xB7;E: Introducing Outpainting\"><\/p>\n<p>Extend creativity and tell a bigger story with DALL-E images of any size<\/p>\n<\/div>\n<div class=\"js-custom-media\">\n<figure class=\"position-relative overflow-hidden js-painting\">\n    <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/draft-20220829a\/emma.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"d-block mb-0\" style=\"width: 100%; max-width: none;\"><figcaption class=\"mt-0 pl-0.5\">Original outpainting by Emma Catnip<\/figcaption><\/figure>\n<\/div>\n<p>Today we&#x2019;re introducing Outpainting, a new feature which helps users extend their creativity by continuing an image beyond its original borders &#x2014; adding visual elements in the same style, or taking a story in new directions &#x2014; simply by using a natural language description.<\/p>\n<p><script>\n  const toggle = (value) => {\n    const endResult = document.querySelector('.js-end-result');\n    const timelapse = document.querySelector('.js-timelapse');<\/p>\n<p>    if (value === 'end-result') {\n      endResult.style.display = 'block';\n      timelapse.style.display = 'none';\n      timelapse.pause();\n      timelapse.currentTime = 0;\n    } else if (value === 'timelapse') {\n      endResult.style.display = 'none';\n      timelapse.style.display = 'block';\n      timelapse.play();\n    }\n  }\n<\/script><\/p>\n<div class=\"wide\">\n<div class=\"switch mx-auto mb-0.5\">\n    <input type=\"radio\" class=\"switch-input\" name=\"view1\" value=\"end-result-switch\" id=\"end-result-switch\" onchange=\"toggle(&apos;end-result&apos;)\" checked><br \/>\n    <label for=\"end-result-switch\" class=\"switch-label switch-label-off small-caps\">End-result<\/label><br \/>\n    <input type=\"radio\" class=\"switch-input\" name=\"view1\" value=\"timelapse-switch\" id=\"timelapse-switch\" onchange=\"toggle(&apos;timelapse&apos;)\"><br \/>\n    <label for=\"timelapse-switch\" class=\"switch-label switch-label-on small-caps\">Timelapse<\/label><br \/>\n    <span class=\"switch-selection\"><\/span>\n  <\/div>\n<figure>\n<div class=\"js-end-result js-painting mb-1\" data-expand-container>\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/draft-20220826a\/girl-with-a-pearl-earring.jpeg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"js-end-result mb-0\">\n    <\/div>\n<p>    <video src=\"https:\/\/cdn.openai.com\/outpainting\/draft-20220829b\/girl-with-a-pearl-earring-bts-cropped.mp4\" class=\"js-timelapse\" style=\"display: none;\" playsinline muted loop><\/video><figcaption class=\"d-flex flex-column\">\n      <span><span>Original:<\/span> Girl with a Pearl Earring by Johannes Vermeer<\/span><br \/>\n      <span><span>Outpainting:<\/span> August Kamp<\/span><br \/>\n    <\/figcaption><\/figure>\n<\/div>\n<p><a href=\"https:\/\/openai.com\/dall-e-2\/\">DALL&#xB7;E<\/a>&#x2019;s Edit feature already enables changes within a generated or uploaded image &#x2014; a capability known as Inpainting. Now, with Outpainting, users can extend the original image, creating large-scale images in any aspect ratio. Outpainting takes into account the image&#x2019;s existing visual elements &#x2014; including shadows, reflections, and textures &#x2014; to maintain the context of the original image.<\/p>\n<p>More than one million people are using DALL&#xB7;E, the AI system that generates original images and artwork from a natural language description, as a creative tool today. Artists have already created remarkable images with the new Outpainting feature, and helped us better understand its capabilities in the process.<\/p>\n<div class=\"my-3 js-flickity position-relative\">\n<figure class=\"js-flickity-cell d-flex flex-column\" style=\"width: 100%; min-width: 100%; max-width: 100%; margin: 0 8px;\">\n<div style=\"aspect-ratio: 1 \/ 1;\" class=\"mb-1 w-100\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/1.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"d-block mb-0\">\n    <\/div><figcaption class=\"d-flex flex-column\">\n      <span>Original outpainting by Tyna Eloundou<\/span><br \/>\n    <\/figcaption><\/figure>\n<figure class=\"js-flickity-cell d-flex flex-column\" style=\"width: 100%; min-width: 100%; max-width: 100%; margin: 0 8px;\">\n<div style=\"aspect-ratio: 1 \/ 1;\" class=\"mb-1 w-100\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/2.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"d-block mb-0\">\n    <\/div><figcaption class=\"d-flex flex-column\">\n      <span>Original outpainting by OpenAI<\/span><br \/>\n    <\/figcaption><\/figure>\n<figure class=\"js-flickity-cell d-flex flex-column\" style=\"width: 100%; min-width: 100%; max-width: 100%; margin: 0 8px;\">\n<div style=\"aspect-ratio: 1400 \/ 1360;\" class=\"mb-1 w-100\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/3.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"d-block mb-0\">\n    <\/div><figcaption class=\"d-flex flex-column\">\n      <span>Outpainting by David Schnurr<\/span><br \/>\n    <\/figcaption><\/figure>\n<figure class=\"js-flickity-cell d-flex flex-column\" style=\"width: 100%; min-width: 100%; max-width: 100%; margin: 0 8px;\">\n<div style=\"aspect-ratio: 1400 \/ 1015;\" class=\"mb-1 w-100\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/4.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"d-block mb-0\">\n    <\/div><figcaption class=\"d-flex flex-column\">\n      <span>Original outpainting by Sonia Levesque<\/span><br \/>\n    <\/figcaption><\/figure>\n<figure class=\"js-flickity-cell d-flex flex-column\" style=\"width: 100%; min-width: 100%; max-width: 100%; margin: 0 8px;\">\n<div style=\"aspect-ratio: 1400 \/ 772;\" class=\"mb-1 w-100\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/5.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"d-block mb-0\">\n    <\/div><figcaption class=\"d-flex flex-column\">\n      <span>Original outpainting by Danielle Baskin<\/span><br \/>\n    <\/figcaption><\/figure>\n<figure class=\"js-flickity-cell d-flex flex-column\" style=\"width: 100%; min-width: 100%; max-width: 100%; margin: 0 8px;\">\n<div style=\"aspect-ratio: 1400 \/ 800;\" class=\"mb-1 w-100\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/6.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"d-block mb-0\">\n    <\/div><figcaption class=\"d-flex flex-column\">\n      <span>Original outpainting by Danielle Baskin<\/span><br \/>\n    <\/figcaption><\/figure>\n<figure class=\"js-flickity-cell d-flex flex-column\" style=\"width: 100%; min-width: 100%; max-width: 100%; margin: 0 8px;\">\n<div style=\"aspect-ratio: 1400 \/ 700;\" class=\"mb-1 w-100\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/7.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"d-block mb-0\">\n    <\/div><figcaption class=\"d-flex flex-column\">\n      <span>Original outpainting by Chad Nelson<\/span><br \/>\n    <\/figcaption><\/figure>\n<\/div>\n<p>Outpainting is now available to all DALL&#xB7;E users on desktop. To discover new realms of creativity, visit labs.openai.com or join the <a href=\"https:\/\/labs.openai.com\/waitlist\">waitlist<\/a>.<\/p>\n<hr>\n<h4 class=\"medium-small-copy\">Featured artists:<\/h4>\n<div class=\"artists\">\n<div class=\"d-flex align-items-center justify-content-between mb-0.75\">\n<div class=\"d-flex align-items-center\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/draft-20220830a\/emma-catnip.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"rounded-circle mr-0.5 mb-0\" style=\"max-width: 40px;\"><\/p>\n<div class=\"d-flex flex-column\">\n        <span class=\"small-copy font-bold\">Emma Catnip<\/span>\n      <\/div>\n<\/p><\/div>\n<p>    <a href=\"https:\/\/www.instagram.com\/emma_catnip\/\" class=\"btn btn-padded icon-instagram mb-0\"><br \/>\n      View Profile<br \/>\n    <\/a>\n  <\/div>\n<div class=\"d-flex align-items-center justify-content-between mb-0.75\">\n<div class=\"d-flex align-items-center\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/draft-20220826a\/august-kamp.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"rounded-circle mr-0.5 mb-0\" style=\"max-width: 40px;\"><\/p>\n<div class=\"d-flex flex-column\">\n        <span class=\"small-copy font-bold\">August Kamp<\/span>\n      <\/div>\n<\/p><\/div>\n<p>    <a href=\"https:\/\/www.instagram.com\/august.kamp\" class=\"btn btn-padded icon-instagram mb-0\"><br \/>\n      View Profile<br \/>\n    <\/a>\n  <\/div>\n<div class=\"d-flex align-items-center justify-content-between mb-0.75\">\n<div class=\"d-flex align-items-center\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/draft-20220830a\/sonia-levesque.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"rounded-circle mr-0.5 mb-0\" style=\"max-width: 40px;\"><\/p>\n<div class=\"d-flex flex-column\">\n        <span class=\"small-copy font-bold\">Sonia Levesque<\/span>\n      <\/div>\n<\/p><\/div>\n<p>    <a href=\"https:\/\/www.instagram.com\/hello_levesque\/\" class=\"btn btn-padded icon-instagram mb-0\"><br \/>\n      View Profile<br \/>\n    <\/a>\n  <\/div>\n<div class=\"d-flex align-items-center justify-content-between mb-0.75\">\n<div class=\"d-flex align-items-center\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/draft-20220830b\/danielle-baskin.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"rounded-circle mr-0.5 mb-0\" style=\"max-width: 40px;\"><\/p>\n<div class=\"d-flex flex-column\">\n        <span class=\"small-copy font-bold\">Danielle Baskin<\/span>\n      <\/div>\n<\/p><\/div>\n<p>    <a href=\"https:\/\/twitter.com\/djbaskin_images\" class=\"btn btn-padded icon-twitter mb-0\"><br \/>\n      View Profile<br \/>\n    <\/a>\n  <\/div>\n<div class=\"d-flex align-items-center justify-content-between mb-0.75\">\n<div class=\"d-flex align-items-center\">\n      <img decoding=\"async\" src=\"https:\/\/cdn.openai.com\/outpainting\/draft-20220830a\/chad-nelson.jpg\" alt=\"DALL&#xB7;E: Introducing Outpainting\" class=\"rounded-circle mr-0.5 mb-0\" style=\"max-width: 40px;\"><\/p>\n<div class=\"d-flex flex-column\">\n        <span class=\"small-copy font-bold\">Chad Nelson<\/span>\n      <\/div>\n<\/p><\/div>\n<p>    <a href=\"https:\/\/www.instagram.com\/dailydall.e\/\" class=\"btn btn-padded icon-instagram mb-0\"><br \/>\n      View Profile<br \/>\n    <\/a>\n  <\/div>\n<\/div>\n<style>\n  .expanded-painting {\n    height: 80vh;\n    display: flex;\n    overflow-x: auto !important;\n    -webkit-overflow-scrolling: touch;\n  }<\/p>\n<p>  .expanded-painting[data-expand-container] {\n    width: calc(100vw - 1px);\n    margin-left: calc(-0.5 * (100% - 93.3333333333%));\n  }<\/p>\n<p>  .expanded-painting img {\n    height: 100%;\n    min-height: 100%;\n    width: auto !important;\n    max-width: none;\n  }<\/p>\n<p>  .carousel {\n    scrollbar-width: 0;\n    width: calc(100% + 24px);\n    margin-left: -12px;\n    -webkit-overflow-scrolling: touch;\n  }<\/p>\n<p>  .carousel::-webkit-scrollbar {\n    display: none;\n  }<\/p>\n<p>\/*! Flickity v2.2.0\nhttps:\/\/ift.tt\/u6vBEgO\n---------------------------------------------- *\/<\/p>\n<p>.flickity-enabled {\n  position: relative;\n}<\/p>\n<p>.flickity-enabled:focus { outline: none; }<\/p>\n<p>.flickity-viewport {\n  overflow: hidden;\n  position: relative;\n  height: 100%;\n}<\/p>\n<p>.flickity-slider {\n  position: absolute;\n  width: 100%;\n  height: 100%;\n}<\/p>\n<p>\/* draggable *\/<\/p>\n<p>.flickity-enabled.is-draggable {\n  -webkit-tap-highlight-color: transparent;\n          tap-highlight-color: transparent;\n\/*  -webkit-user-select: none;\n     -moz-user-select: none;\n      -ms-user-select: none;\n          user-select: none;*\/\n}<\/p>\n<p>.flickity-enabled.is-draggable .flickity-viewport {\n  cursor: move;\n  cursor: -webkit-grab;\n  cursor: grab;\n}<\/p>\n<p>.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {\n  cursor: -webkit-grabbing;\n  cursor: grabbing;\n}<\/p>\n<p>\/* ---- flickity-button ---- *\/<\/p>\n<p>.flickity-button {\n  position: absolute;\n  background: hsla(0, 0%, 100%, 0.75);\n  border: none;\n  \/*color: #333;*\/\n}<\/p>\n<p>.flickity-button:hover {\n  background: white;\n  cursor: pointer;\n}<\/p>\n<p>.flickity-button:focus {\n  outline: none;\n  box-shadow: 0 0 0 5px #19F;\n}<\/p>\n<p>.flickity-button:active {\n  opacity: 0.6;\n}<\/p>\n<p>.flickity-button:disabled {\n  opacity: 0.3;\n  cursor: auto;\n  \/* prevent disabled button from capturing pointer up event. #716 *\/\n  pointer-events: none;\n}<\/p>\n<p>.flickity-button-icon {\n  fill: #fff;\n}<\/p>\n<p>\/* ---- previous\/next buttons ---- *\/<\/p>\n<p>.flickity-prev-next-button {\n  top: 0;\n  width: 50px !important;\n  height: calc(100% - 30px);\n  border-radius: 0 !important;\n  border: none !important;\n  background-color: rgba(0,0,0,0.2) !important;\n  transition: background-color .3s cubic-bezier(.645,.045,.355,1);\n}\n.flickity-prev-next-button:hover {\n  background-color: rgba(0,0,0,0.3) !important;\n  opacity: 1 !important;\n}<\/p>\n<p>.flickity-prev-next-button.previous { left: 0; }\n.flickity-prev-next-button.next { right: 0; }\n\/* right to left *\/\n.flickity-rtl .flickity-prev-next-button.previous {\n  left: auto;\n  right: 0;\n}\n.flickity-rtl .flickity-prev-next-button.next {\n  right: auto;\n  left: 0;\n}<\/p>\n<p>.flickity-prev-next-button .flickity-button-icon {\n  position: absolute;\n  left: 30%;\n  top: 30%;\n  width: 40%;\n  height: 40%;\n}<\/p>\n<p>@media (max-width: 750px) {\n  .flickity-prev-next-button {\n    visibility: hidden;\n  }\n}<\/p>\n<p>\/* ---- page dots ---- *\/<\/p>\n<p>.flickity-page-dots {\n  position: absolute;\n  bottom: 0;\n  left: 50%;\n  padding-top: 0;\n  padding-bottom: 0;\n  display: -webkit-box;\n  display: -ms-flexbox;\n  display: flex;\n  -webkit-box-pack: center;\n  -ms-flex-pack: center;\n  justify-content: center;\n  padding-left: 25px !important; \/* same as `.gpt-2-sample__container` *\/\n  padding-right: 25px;\n  width: 100%;\n  max-width: 655px;\n  \/*margin: auto calc(50% - 50vw);*\/\n  transform: translateX(-50%);\n}<\/p>\n<p>.flickity-rtl .flickity-page-dots { direction: rtl; }<\/p>\n<p>.flickity-page-dots .dot {\n  cursor: pointer;\n  display: block;\n  cursor: pointer;\n  padding: 20px 3px 20px 3px;\n  margin-top: 1.5rem;\n  width: 50px;\n}\n.flickity-page-dots .dot:before {\n  content: none;\n}\n.flickity-page-dots .dot:after {\n  content: \"\";\n  display: block;\n  width: 100%;\n  height: 2px;\n  border-radius: 1px;\n  opacity: 0.2;\n  transition: opacity .3s cubic-bezier(.645,.045,.355,1),background-color .3s cubic-bezier(.645,.045,.355,1);\n  background-color: #fff;\n}<\/p>\n<p>.flickity-page-dots .dot:hover:after {\n  opacity: 0.8;\n}<\/p>\n<p>.flickity-page-dots .dot.is-selected:after {\n  opacity: 1;\n}\n<\/style>\n<p><script src=\"https:\/\/unpkg.com\/flickity@2.2.0\/dist\/flickity.pkgd.min.js\"><\/script><br \/>\n<script type=\"module\">\n  let isMobile = false;\n  var el = document.querySelector('.js-flickity');<\/p>\n<p>  class Painting {\n    expanded = false;<\/p>\n<p>    constructor(el) {\n      this.el = el;\n      this.image = el.querySelector('img');<\/p>\n<p>      this.el.addEventListener('click', () => {\n        this.toggle();\n      });\n    }<\/p>\n<p>    toggle(value) {\n      if (!isMobile) {\n        return;\n      }<\/p>\n<p>      if (value === undefined) {\n        value = !this.expanded;\n      }<\/p>\n<p>      if (value) {\n        this.expand();\n      } else {\n        this.collapse();\n      }<\/p>\n<p>      this.expanded = value;\n    }<\/p>\n<p>    expand() {\n      this.el.classList.add('expanded-painting');\n      this.el.scrollLeft = (0.5 * this.image.offsetWidth) - (0.5 * window.innerWidth);\n    }<\/p>\n<p>    collapse() {\n      this.el.classList.remove('expanded-painting');\n    }\n  }<\/p>\n<p>  document.addEventListener('DOMContentLoaded', function() {\n    isMobile = window.innerWidth < 720;\n\n    const paintings = Array.from(document.querySelectorAll('.js-painting')).map(el => new Painting(el));<\/p>\n<p>    window.addEventListener('resize', () => {\n      const newIsMobile = window.innerWidth < 720;\n\n      \/\/ Make sure all paintings are collapsed again,\n      \/\/ we're entering larger viewports\n      if (newIsMobile !== isMobile &#038;&#038; !newIsMobile) {\n        paintings.forEach((painting) => {\n          painting.collapse();\n        });\n      }<\/p>\n<p>      isMobile = newIsMobile;\n    });<\/p>\n<p>    if (!el) return;\n    var flickity = new Flickity(el, {\n      cellSelector: '.js-flickity-cell',\n      wrapAround: false,\n      autoPlay: false,\n      draggable: true,\n      adaptiveHeight: true,\n      arrowShape: 'M 64.5,0 L 71.72,7.17 L 29.22,50 L 71.72,92.89 L 64.5,100 L 15,50 L 64.5,0 Z',\n      imagesLoaded: true,\n    });\n  });\n<\/script><!--kg-card-end: markdown--><\/p>\n<p>source <a href=\"https:\/\/openai.com\/blog\/dall-e-introducing-outpainting\/\">https:\/\/openai.com\/blog\/dall-e-introducing-outpainting\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Extend creativity and tell a bigger story with DALL-E images of any size Original outpainting by Emma Catnip Today we&#x2019;re introducing Outpainting, a new feature which helps users extend their creativity by continuing an image beyond its original borders &#x2014; adding visual elements in the same style, or taking a story in new directions &#x2014; &hellip; <a href=\"https:\/\/billsbud.org\/?p=3961\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">DALL\u00b7E: Introducing Outpainting<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-3961","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/billsbud.org\/index.php?rest_route=\/wp\/v2\/posts\/3961","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/billsbud.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/billsbud.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/billsbud.org\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/billsbud.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3961"}],"version-history":[{"count":1,"href":"https:\/\/billsbud.org\/index.php?rest_route=\/wp\/v2\/posts\/3961\/revisions"}],"predecessor-version":[{"id":3962,"href":"https:\/\/billsbud.org\/index.php?rest_route=\/wp\/v2\/posts\/3961\/revisions\/3962"}],"wp:attachment":[{"href":"https:\/\/billsbud.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3961"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/billsbud.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3961"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/billsbud.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3961"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}