다중포문으로 opencv문 좌표값 넣어서 사각형 그리기 문의 드립니다 ㅠㅠ

조회수 614회

opencv를 이용해서 한 800개 정도의 위치에 사각형을 만들어 보려고 하는데 그럴려면

cv.rectangle(img, (100,110), (110,200), (0, 0, 255), 1)

이 구문이 800개 필요하다고 생각해서노가다로 하나하나

cv.rectangle(img, (110,113), (111,206), (0, 0, 255), 1)

cv.rectangle(img, (130,112), (114,201), (0, 0, 255), 1)

cv.rectangle(img, (150,101), (115,220), (0, 0, 255), 1)

이렇게 다 치는건 너무 힘들거 같아서 for문을 이용해보려고 하는데

지금 좌표는 이런식으로 표로 되어있습니다.

          x1     y1     x2     y2
 0     100   110   110   200
1      130   112   114   201
2      150   101   115   220
3      110   113   111   206
.
.
.
.
.

이런식으로 800개 정도가 있습니다.

import cv2 as cv
import numpy as np

width = 1500
height = 1000
bpp = 3

img = np.zeros((height, width, bpp), np.uint8)

cv.rectangle(img, (110,113),  (111,206), (0, 0, 255), 1)
cv.rectangle(img, (100,150),  (211,105), (0, 0, 255), 1)

cv.imshow("result", img)
cv.waitKey(0);

결론적으로 원하는건 800여개의 좌표가 opencv안에 좌표값 입력란에 자동으로 입력되어 사각형이 그려진 모양입니다.

가능할까요? for문이 아니어도 다른방법이 있나요?

  • 좌표들이 어떤 타입으로 주어졌나요? list? dataframe? 그냥 for 문 이터레이션하면서, x1, y1, x2, y2 로 받아와서, 손으로 바꿔 써 넣는 좌표들값 대신에 x1, y1, x2, y2 으로 rectangle 을 실행해 주면 될텐데요. 어떤 부분이 잘 안되고 궁금한건가요? nowp 2019.8.1 15:49

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)