

{"id":100466,"date":"2021-10-27T09:00:44","date_gmt":"2021-10-27T03:30:44","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=100466"},"modified":"2026-06-02T12:16:33","modified_gmt":"2026-06-02T06:46:33","slug":"python-remove-image-background","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/","title":{"rendered":"How to Remove Background of Images in Python?"},"content":{"rendered":"<div class='__iawmlf-post-loop-links' style='display:none;' data-iawmlf-post-links='[{&quot;id&quot;:2525,&quot;href&quot;:&quot;https:\\\/\\\/drive.google.com\\\/file\\\/d\\\/1maX6tQGK-yt8-fph7QSXWZtMdm6oQ5JA\\\/view?usp=drive_link&quot;,&quot;archived_href&quot;:&quot;http:\\\/\\\/web-wp.archive.org\\\/web\\\/20260601064702\\\/https:\\\/\\\/drive.google.com\\\/file\\\/d\\\/1maX6tQGK-yt8-fph7QSXWZtMdm6oQ5JA\\\/view?usp=drive_link&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-06-01 15:53:38&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-08 08:06:15&quot;,&quot;http_code&quot;:200}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-06-08 08:06:15&quot;,&quot;http_code&quot;:200},&quot;process&quot;:&quot;done&quot;}]'><\/div>\n<p>In the era of video calling, sometimes we don\u2019t want to broadcast our background space for some reason. That\u2019s why video calling applications include a feature that hides the background and places another image in the background. So in this project, we\u2019re going to make our own image background removal application using OpenCV and MediaPipe framework.<\/p>\n<p><strong>OpenCV<\/strong> is an image processing library for python. It is the most popular library for image processing and computer vision tasks because it is open source and very fast. OpenCV contains more than 2500 image processing algorithms. Approx 70% of the industry uses OpenCV for their image processing application.<\/p>\n<h3>Popular background removal techniques<\/h3>\n<ul>\n<li><strong>Edge-based background removal-<\/strong> This technique detects edges in the image and then finds a continuous edge path. All the elements that are outside the path are considered as background.<\/li>\n<li><strong>Foreground detection-<\/strong> Foreground detection is a technique that detects changes in the image sequence. The background subtraction method is used here to separate the foreground from an image.<\/li>\n<li><strong>Machine-Learning Based Approach-<\/strong> In this technique various machine learning algorithms are used to separate the foreground from the background.<\/li>\n<\/ul>\n<h3>What is MediaPipe?<\/h3>\n<p>MediaPipe is a machine learning solution framework developed by Google. MediaPipe has various pre-trained models inbuilt. Recently MediaPipe has released a background removal model, they call it selfieSegmentation. We\u2019ll use this model to build our application.<\/p>\n<h3>So how does it work?<\/h3>\n<p>Background removal or selfie segmentation basically returns a segmented mask of the foreground from the image. Foreground means the subject, in this case, humans are the foreground in the image, and the rest of the things are the background.<\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/backgroung-removal-flow-chart.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-103870\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/backgroung-removal-flow-chart.webp\" alt=\"backgroung removal flow chart\" width=\"684\" height=\"429\" \/><\/a><\/p>\n<h3>What is segmentation?<\/h3>\n<p>Segmentation is an image processing technique that returns a binary black and white image mask of a targeted image. It is a process of labeling pixels that shares certain characteristics.<\/p>\n<h3>What is selfie-segmentation?<\/h3>\n<p>Mediapipe\u2019s selfie segmentation API separates humans from the background within a scene. It creates a binary mask of the scene and focuses only on humans. The value of the background pixels is 0 and the value of the interested area contains greater than 0 but the maximum is 1 depending on certain criteria like lighting, the complexity of the scene, etc.<\/p>\n<h3>Prerequisites for the project:<\/h3>\n<p>1. Python 3.x (we used 3.8.8) for the project.<br \/>\n2. OpenCV 4.4.0<br \/>\n3. Numpy 1.19<br \/>\n4. MediaPipe 0.8.5<\/p>\n<p>Install all the packages using pip package manager (pip install \u201cpackage-name\u201d)<\/p>\n<p>Create a folder \u2018images\u2019 in the same project directory and store some images that you want to use in the background image.<\/p>\n<h3>Download Image Background Removal Project Code<\/h3>\n<p>Please download the source code of image background removal with opencv: <a href=\"https:\/\/drive.google.com\/file\/d\/1maX6tQGK-yt8-fph7QSXWZtMdm6oQ5JA\/view?usp=drive_link\"><strong>Image Background Removal Project Code<\/strong><\/a><\/p>\n<h3>Steps to solve the project:<\/h3>\n<p>Below are the steps to develop remove image background project in python<\/p>\n<p>1. Import necessary packages.<br \/>\n2. Initialize selfie-segmentation object.<br \/>\n3. Read frames from a webcam.<br \/>\n4. Create the segmented mask.<br \/>\n5. Replace the background with an image.<\/p>\n<h4>Step 1 &#8211; Import necessary packages:<\/h4>\n<p>First, we need to import all the necessary packages for the Python project to remove image background.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">    # DataFlair background removal\r\n# import necessary packages\r\nimport os\r\nimport cv2\r\nimport numpy as np\r\nimport mediapipe as mp\r\n\r\n# store background images in a list\r\nimage_path = 'images'\r\nimages = os.listdir(image_path)\r\n\r\nimage_index= 0\r\nbg_image = cv2.imread(image_path+'\/'+images[image_index])\r\n<\/pre>\n<ul>\n<li>os.listdir() returns a list of all files and directories in a specified directory.<\/li>\n<li>Using cv2.imread() function read an image and store it in the bg_image variable. This will be the default image when the program starts every time.<\/li>\n<\/ul>\n<h4>Step 2 &#8211; Initialize selfie-segmentation object:<\/h4>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\"># initialize mediapipe\r\nmp_selfie_segmentation = mp.solutions.selfie_segmentation\r\nselfie_segmentation = mp_selfie_segmentation.SelfieSegmentation(model_selection=1)\r\n<\/pre>\n<p>In these two lines of code, we initialized the selfie segmentation object from the media pipe framework.<\/p>\n<h4>Step 3 &#8211; Read frames from a webcam:<\/h4>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\"># create videocapture object to access the webcam\r\ncap = cv2.VideoCapture(0)\r\nwhile cap.isOpened():\r\n  _, frame = cap.read()\r\n  # flip the frame to horizontal direction\r\n  frame = cv2.flip(frame, 1)\r\n  height , width, channel = frame.shape\r\n<\/pre>\n<ul>\n<li>Using cv2.VideoCapture(0) we create the capture object that reads frames from the webcam.<\/li>\n<li>cap.isOpened() checks if the capture object is available or not.<\/li>\n<li>cap.read() reads each frame from the webcam.<\/li>\n<li>cv2.flip(frame, 1) flips the frame in horizontal direction. Argument 1 means horizontal direction and 0 means vertical direction.<\/li>\n<\/ul>\n<h4>Step 4 &#8211; Create the segmented mask:<\/h4>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">RGB = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)\r\n\r\n  # get the result\r\n  results = selfie_segmentation.process(RGB)\r\n\r\n  # extract segmented mask\r\n  mask = results.segmentation_mask\r\n  # show outputs\r\n  cv2.imshow(\"mask\", mask)\r\n  cv2.imshow(\"Frame\", frame)\r\n\r\n  key = cv2.waitKey(1)\r\n  if key == ord('q'):\r\n    \t\tbreak\r\n<\/pre>\n<ul>\n<li>MediaPipe works with RGB images but OpenCV reads images in BGR format, so using cv2.cvtColor() we convert the BGR image to RGB.<\/li>\n<li>selfie_segmentation.process(RGB) returns a result class.<\/li>\n<li>results.segmentation_mask extracts the mask from the result class.<\/li>\n<li>Finally show the output using cv2.imshow() function. It shows frames in a new opencv window.<\/li>\n<\/ul>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/image-processing-mask.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-103871\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/image-processing-mask.webp\" alt=\"image processing mask\" width=\"1920\" height=\"1028\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/image-processing-mask.webp 1920w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/image-processing-mask-768x411.webp 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/image-processing-mask-1536x822.webp 1536w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><\/a><\/p>\n<h4>Step 5 &#8211; Replace the background with an image:<\/h4>\n<p>Now we have the mask, but we want to place the background image in the black region and the foreground image in the white region.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\"># it returns true or false where the condition applies in the mask\r\n  condition = np.stack(\r\n  \t(results.segmentation_mask,) * 3, axis=-1) &gt; 0.5\r\n\r\n  # resize the background image to the same size of the original frame\r\n  bg_image = cv2.resize(bg_image, (width, height))\r\n\r\n  # combine frame and background image using the condition\r\n  output_image = np.where(condition, frame, bg_image)\r\ncv2.imshow(\"Output\", output_image)\r\ncv2.imshow(\"Frame\", frame)\r\n  key = cv2.waitKey(1)\r\n  if key == ord('q'):\r\n    \t\tbreak\r\n  # if 'd' key is pressed then change the background image\r\n  elif key == ord('d'):\r\n    \t\tif image_index != len(images)-1:\r\n        \t\t\timage_index += 1\r\n    \t\telse:\r\n        \t\t\timage_index = 0\r\n    \t\tbg_image = cv2.imread(image_path+'\/'+images[image_index])\r\n<\/pre>\n<ul>\n<li>Here, np.stack returns a matrix of shape as the mask. It contains true where the pixel value is more than 0.5 and returns false where the pixel value is less than 0.5.<\/li>\n<li>Resize the bg_image using cv2.resize() as the same size as the frame. Otherwise, we can\u2019t add a background image with the frame.<\/li>\n<li>Np.where combines two images, where the condition is satisfied.<\/li>\n<li>After that, we check if the key \u2018d\u2019 is pressed then change the background image. In this way, we can have multiple background images and can change them at runtime.<\/li>\n<\/ul>\n<h3>Python Remove Image Background Output<\/h3>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/python-remove-image-background-output.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-103872\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/python-remove-image-background-output.webp\" alt=\"python remove image background output\" width=\"676\" height=\"350\" \/><\/a><\/p>\n<h3>Summary<\/h3>\n<p>In this project, we created a background removal application using OpenCV &#8211; python. We\u2019ve used the MediaPipe framework to perform the task. Through this project, we\u2019ve learned about segmentation, image combination, and some basic image processing techniques.<\/p>\n<p>This project is useful for real-world image editing tasks and helps learners understand how image segmentation works. It introduces key ideas like masking, contours, color spaces, and OpenCV filters. You\u2019ll also get to practice file handling, image conversion, and GUI creation if you want to turn it into a mini photo-editing app.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the era of video calling, sometimes we don\u2019t want to broadcast our background space for some reason. That\u2019s why video calling applications include a feature that hides the background and places another image&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":103869,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36],"tags":[10735,25729,21082,25727,25728],"class_list":["post-100466","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-machine-learning","tag-python-opencv","tag-python-opencv-project","tag-python-project","tag-python-remove-image-background","tag-remove-image-background"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to Remove Background of Images in Python? - DataFlair<\/title>\n<meta name=\"description\" content=\"Create Python project to remove image background. Learn about segmentation, image combination, and some basic image processing techniques.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Remove Background of Images in Python? - DataFlair\" \/>\n<meta property=\"og:description\" content=\"Create Python project to remove image background. Learn about segmentation, image combination, and some basic image processing techniques.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2021-10-27T03:30:44+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-02T06:46:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/remove-image-background-python-opencv.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"DataFlair Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DataFlair Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Remove Background of Images in Python? - DataFlair","description":"Create Python project to remove image background. Learn about segmentation, image combination, and some basic image processing techniques.","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:\/\/data-flair.training\/blogs\/python-remove-image-background\/","og_locale":"en_US","og_type":"article","og_title":"How to Remove Background of Images in Python? - DataFlair","og_description":"Create Python project to remove image background. Learn about segmentation, image combination, and some basic image processing techniques.","og_url":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2021-10-27T03:30:44+00:00","article_modified_time":"2026-06-02T06:46:33+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/remove-image-background-python-opencv.webp","type":"image\/webp"}],"author":"DataFlair Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"DataFlair Team","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/b49855299264df5e27e3ec6c2cd9fde9"},"headline":"How to Remove Background of Images in Python?","datePublished":"2021-10-27T03:30:44+00:00","dateModified":"2026-06-02T06:46:33+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/"},"wordCount":913,"commentCount":1,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/remove-image-background-python-opencv.webp","keywords":["python opencv","python opencv project","Python project","python remove image background","remove image background"],"articleSection":["Machine Learning Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/python-remove-image-background\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/","url":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/","name":"How to Remove Background of Images in Python? - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/remove-image-background-python-opencv.webp","datePublished":"2021-10-27T03:30:44+00:00","dateModified":"2026-06-02T06:46:33+00:00","description":"Create Python project to remove image background. Learn about segmentation, image combination, and some basic image processing techniques.","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/python-remove-image-background\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/remove-image-background-python-opencv.webp","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2021\/10\/remove-image-background-python-opencv.webp","width":1200,"height":628,"caption":"remove image background python opencv"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/python-remove-image-background\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Machine Learning Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/machine-learning\/"},{"@type":"ListItem","position":3,"name":"How to Remove Background of Images in Python?"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/b49855299264df5e27e3ec6c2cd9fde9","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/ef46b745ddad2fad690af626c6ef29b91809ad0a9f5ef398d07817d8cad042f5?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/ef46b745ddad2fad690af626c6ef29b91809ad0a9f5ef398d07817d8cad042f5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ef46b745ddad2fad690af626c6ef29b91809ad0a9f5ef398d07817d8cad042f5?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"DataFlair Team is a group of passionate educators and industry experts dedicated to providing high-quality online learning resources on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. With years of experience in the field, the team aims to simplify complex topics and help learners advance their careers. At DataFlair, we believe in empowering students and professionals with the knowledge and skills needed to thrive in today\u2019s fast-paced tech industry. Follow us for Free courses, expert insights, tutorials, and practical tips to boost your learning journey.","url":"https:\/\/data-flair.training\/blogs\/author\/datafbdad\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/100466","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=100466"}],"version-history":[{"count":6,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/100466\/revisions"}],"predecessor-version":[{"id":148597,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/100466\/revisions\/148597"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/103869"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=100466"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=100466"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=100466"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}