How can I extract the rectangular shapes form the binary images without using bwareaopen function?
2 次查看(过去 30 天)
显示 更早的评论
Hello every one,
Could you please help me, how to automatically extract the rectangular object in the following two images? I used bwareaopen function to remove small objects, but it sometimes removes the region of interest because the noisy objects are bigger than the number plate.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/534409/image.jpeg)
3 个评论
Selva Karna
2021-3-4
编辑:Selva Karna
2021-3-4
from Python Code;
Code :
Main code 1 :
import cv2
import numpy as np
import os
im = cv2.imread('input1.jpg')
imgray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY)
ret, thresh = cv2.threshold(imgray, 220, 255, 0)
edges = cv2.Canny(thresh,150,180,apertureSize = 3)
ret, labels = cv2.connectedComponents(~thresh)
x=0
[m,n]=np.shape(thresh)
c=1
cwd = os.getcwd()
msk=np.zeros(np.shape(thresh))
while c
msk=np.zeros(np.shape(thresh))
msk[(labels==c)]=[255]
msk=np.array(msk,dtype=np.uint8)
msk_img=str(c)+'.jpg'
filename = os.path.join(cwd, msk_img)
cv2.imwrite(filename,msk)
c=c+1
print("Total Polygon Objects ", c)
回答(1 个)
Keerthana Chiruvolu
2021-3-7
Hi Javid,
One simple method would be to use the Image Segmenter App where you can draw the region of interest and extract it from the image.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!