Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I have an Image showing below: enter image description here

I need to crop the order using python coding. What I need is only the card. So I want to crop the border. How to do it??

This is the output I got using the code mentioned in the below comment.

enter image description here

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
198 views
Welcome To Ask or Share your Answers For Others

1 Answer

All you need to do is slicing arrays. First supply the startY and endY coordinates, followed by the startX and endX coordinates to the slice. That’s it. Your image will be cropped!

Steps using Python and OpenCV:

1) load the image and display it on screen

# import the necessary packages 
import cv2
# load the image and show it
image = cv2.imread("cardWithBorder.jpg")
cv2.imshow("original", image)
cv2.waitKey(0)

2) Get the dimensions of the image

print image.shape

3) Cropping the image

# crop the image using array slices -- it's a NumPy array
# after all!
cropped = image[70:170, 440:540]
cv2.imshow("cropped", cropped)
cv2.waitKey(0)

4) Save the cropped image to disk, only in PNG format (the original was a JPG):

cv2.imwrite("thumbnail.png", cropped)

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share

548k questions

547k answers

4 comments

86.3k users

...