I have an image that contains more than one rois //non-rectangular// in a transparent image.. plz help me how to extract those rois as induvidual roi image
how to Extract rois as induvidual roi images
218 views Asked by Bharath Kumar At
2
There are 2 answers
4
Bharath Kumar
On
import numpy as np
import matplotlib.pyplot as plt
!mkdir /content/test
!rm -r /content/test/*
image = cv2.imread('/content/test.png')
original = image.copy()
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
blurred = cv2.GaussianBlur(gray, (3, 3), 0)
canny = cv2.Canny(blurred, 120, 255, 1)
kernel = np.ones((5,5),np.uint8)
dilate = cv2.dilate(canny, kernel, iterations=1)
# Find contours
cnts = cv2.findContours(dilate, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
cnts = cnts[0] if len(cnts) == 2 else cnts[1]
# Iterate thorugh contours and filter for ROI
image_number = 0
for c in cnts:
x,y,w,h = cv2.boundingRect(c)
#cv2.rectangle(image, (x, y), (x + w, y + h), (36,255,12), 2)
ROI = original[y:y+h, x:x+w]
#cv2.imwrite("/content/test/ROI_{}.png".format(image_number), ROI)
image_number += 1
## (4) Create mask and do bitwise-op
mask = np.zeros(image.shape[:2],np.uint8)
cv2.drawContours(mask, [c],-1, 255, -1)
dst = cv2.bitwise_and(image, image, mask=mask)
## Save it
#cv2.imwrite("dst.png", dst)
cv2.imwrite("/content/test/ROI_{}.png".format(image_number), dst)
image_number += 1
# cv2.imshow('canny', canny)
# cv2.imshow('image', image)
# cv2.waitKey(0)
plt.imshow(canny)
plt.imshow(image)here
Related Questions in IMAGE
- Golang lambda upload image into s3 static website
- Put an image behind the title in a WP, WooCommerce "shop" page
- How to create an JSOUP element from byte array image (Load from Database)
- Cloudflare not respecting Cache-Control
- Sending multiple images and data in a single angular observable
- Create and combine several images into a single image for my react native App
- Should I compress images in java backend before sending to frontend?
- Javascript Place Image Where User Clicks
- Whitespace in document has a bottom border remnant or some other line at the bottom of the whitespace
- Sony Spresense Camera Board
- After completely installation and done all the work i am getting Permission denied error do any one have solution
- HTML page on NAS server image not showing on mobile phone
- mouse coordinates in image go below 0 and above width
- Why are the css images or js not loading in my laravel project?
- Python pillow library text align center
Related Questions in IMAGE-PROCESSING
- RuntimeError: Given groups=1, weight of size [64, 1, 3, 3], expected input[1, 3, 416, 416] to have 1 channels, but got 3 channels instead
- Unable to open shape_predictor_68_face_landmarks.dat
- When transferring mri t1 to mni152 spaces, the dimensions change and lose information, is that not a problem?
- How to detect the exact boundary of a Sudoku using OpenCV when there are multiple external boundaries?
- Nuke BlinkScript: Why does the convolution kernel scale down the image?
- CV2 Python - image merging based on homography matrix - error in mergeing
- Python pillow library text align center
- Implementing Image Processing for Dimension Measurement in Arduino-based Packaging System
- AI tools for generating clean clipping paths
- efficient way to remove a background from an image in python
- I want to segment an MRI image of the spine and obtain only the vertebrae using Matlab
- Find Gradient Magnitude using skimage.feature.hog module
- AR Image Display Issue
- Using python OpenCV to crop an image based on reference marks
- Python: Generating an image using Multiprocessing freezes
Related Questions in EXTRACT
- Fine-Tuning Large Language Model on PDFs containing Text and Images
- Extract function Google Sheets: Extract string of text from unwanted characters
- How to extract from a dataframe rows only if values in a column are higher than values in another colum?
- How can I extract semi structured tables from PDF using pdfplumber
- How to read NADRA NIC barcode?
- Using two cell values to extract a value from a table where the values are in between each row value and column value
- xPath to extract values from a specific table?
- Is it possible to read table from pdf below a specific text
- Extract tabular like Data from PDF which is not in Tables
- emailed pdf extraction and processing
- Extract multiple values from a string at once
- Excluding files from top level directory when extracting tar archives
- I am working on a project of detecting Phising Urls. But I am getting an error whenever I am trying to extract features and store them in list
- Extract composite unique key from GoHighLevel API with Python {{ contact.utm_source }}
- Identifying whether a condition given another condition for a given participant in a given lesson exists in a dataset
Related Questions in OPENCV
- Creating multiple instances of a class with different initializing values in Flutter
- OpenCV2 on CLion
- How to Draw Chinese Characters on a Picture with OpenCV
- Python cv2 imwrite() - RGB or BGR
- AttributeError: 'Sequential' object has no attribute 'predict_classes'. Did you mean: 'predict_step'?
- Search for an icon on an image OpenCV
- DJI Tello won't follow me
- Python OpenCV and PyGame threading issue
- Need help in Converting Python script (Uses Yolo's pose estimation) to an android app
- Line Segmentation Problem: How to detect lines and draw bounding box of that line on handwritten letters Using CV2
- Configure CmakeLists.txt to avoid manually copying dlls
- How to detect the exact boundary of a Sudoku using OpenCV when there are multiple external boundaries?
- AttributeError: 'Results' object has no attribute 'box'. can anyone explain this?
- How to generate a VPI warpmap for polynomial distortion correction?
- I am trying to make a project of object detection on kaggle notebook using yolo. and i am facing this error. here is my code and my error
Related Questions in ROI
- Remove ROI selections - ImageJ
- Is there a way to obtain the label of the brain region corresponding to a voxel's coordinates?
- Cut point cloud into regions of interest
- My circle detection opencv program which calculates flow rate is getting stuck on an IndexError: "index 1 is out of bounds for axis 1 with size 1"
- Create tensor with a single ROI from cv::Mat and cv::Rect with OpenVINO API 2.0
- Finding number of ROI Groups entered into Roi-Group Table plugin
- error occurred when binarization based ROI algorithm with OpenCV in JAVA
- using try except with itk on OTB
- Divide the region of interest into blocks
- Optimisation problem to maximise profit of fleet allocation given profitability matrix of plane type to route & constraint of block hrs
- How to extract values from all voxels in a mask using FSLutils?
- Extracting highest level of nested segments from a contour plot in Python
- Is there a way to detect and quantify the missing area of objects in images?
- How to get the coordinates of text on an image with Node.js?
- Problem with NumPy Arrays when creating Face Filters
Related Questions in PYTHON
- How to store a date/time in sqlite (or something similar to a date)
- Instagrapi recently showing HTTPError and UnknownError
- How to Retrieve Data from an MySQL Database and Display it in a GUI?
- How to create a regular expression to partition a string that terminates in either ": 45" or ",", without the ": "
- Python Geopandas unable to convert latitude longitude to points
- Influence of Unused FFN on Model Accuracy in PyTorch
- Seeking Python Libraries for Removing Extraneous Characters and Spaces in Text
- Writes to child subprocess.Popen.stdin don't work from within process group?
- Conda has two different python binarys (python and python3) with the same version for a single environment. Why?
- Problem with add new attribute in table with BOTO3 on python
- Can't install packages in python conda environment
- Setting diagonal of a matrix to zero
- List of numbers converted to list of strings to iterate over it. But receiving TypeError messages
- Basic Python Question: Shortening If Statements
- Python and regex, can't understand why some words are left out of the match
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)

contoursof the image.Result:
Now we are sure, we have detected all the contours in the image, we can save them individually.
Get the coordinates of each
contourSet the coordinates in the image
Some sample results:
roisfolder before running the code.Code: