1.6 문자


org 좌표를 글자의 우측 하단을 시작점으로 하여 주어진 텍스트를 출력 합니다.


cv2.putText(img, text, org, fontFace, fontScale, color[, thickness[, lineType[, bottomLeftOrigin]]]) → None


parameter

 내용

 img

 이미지 파일

 text

 출력 문자

 org

 출력 문자 시작 위치 좌표 (좌측 하단)

 fontFace

cv2.FONT_HERSHEY_SIMPLEX : 0

cv2.FONT_HERSHEY_PLAIN : 1

cv2.FONT_HERSHEY_DUPLEX : 2

cv2.FONT_HERSHEY_COMPLEX : 3

cv2.FONT_HERSHEY_TRIPLEX : 4

cv2.FONT_HERSHEY_COMPLEX_SMALL : 5

cv2.FONT_HERSHEY_SCRIPT_SIMPLEX : 6

cv2.FONT_HERSHEY_SCRIPT_COMPLEX : 7

cv2.FONT_ITALIC : 16

 fontScale

 폰트 크기

 color

 폰트 색상

 thickness

 폰트 두꼐

 lineType

 선 종류 (default cv.Line_8)

 - LINE_8 : 8-connected line

 - LINE_4 : 4-connecterd line

 - LINE_AA : antialiased line

 bottomLeftOrigin

 org 사용 옵션. True : 좌측 하단. False : 좌측 상단


import numpy as np

import cv2

 

# color 설정

blue_color = (255, 0, 0)

green_color = (0, 255, 0)

red_color = (0, 0, 255)

white_color = (255, 255, 255)

 

# Font 종류

fonts = [cv2.FONT_HERSHEY_SIMPLEX,

cv2.FONT_HERSHEY_PLAIN,

cv2.FONT_HERSHEY_DUPLEX,

cv2.FONT_HERSHEY_COMPLEX,

cv2.FONT_HERSHEY_TRIPLEX,

cv2.FONT_HERSHEY_COMPLEX_SMALL,

cv2.FONT_HERSHEY_SCRIPT_SIMPLEX,

cv2.FONT_HERSHEY_SCRIPT_COMPLEX,

cv2.FONT_ITALIC]

 

# 모두 0으로 되어 있는 빈 Canvas(검정색)

img = np.zeros((384, 384, 3), np.uint8)

 

# Font 그리기

for i in range(0, len(fonts)):

    point = 30, 30 + (i * 40)

    cv2.putText(img, 'PYTHON', point, fonts[i], 1, white_color, 2, cv2.LINE_AA)

 

cv2.imshow('polylines',img)

cv2.waitKey(0)

cv2.destroyAllWindows()


opencv_font



1.5 다각형

 

1.5.1 polylines()

 

polylines() 함수는 원하는 만큼의 좌표 점을 설정하여 선을 그을 있고 시작점과 끝점을 자동 또는 수동으로 연결하여 다각형을 그릴 수도 있습니다.

 

cv2.polylines(img, pts, isClosed, color[, thickness[, lineType[, shift]]]) → img


parameter

 내용

 img

 이미지 파일

 pts

 좌표 점들 (x, y)

 isClosed

 도형의 닫힘 유무 (True, False)

 color

 색상 (blue, green, red) 0 ~ 255

 thickness

 선 두께 (default 1)

 lineType

 선 종류 (default cv.Line_8)

 - LINE_8 : 8-connected line

 - LINE_4 : 4-connecterd line

 - LINE_AA : antialiased line

 shift

 fractional bit (default 0)


import numpy as np

import cv2

 

# color 설정

blue_color = (255, 0, 0)

green_color = (0, 255, 0)

red_color = (0, 0, 255)

white_color = (255, 255, 255)

# 점 좌표 설정

points1 = np.array([[10, 10], [170, 10], [200, 230], [70, 70], [50, 150]], np.int32)

points2 = np.array([[110, 110], [270, 110], [300, 330], [170, 170], [150, 250]], np.int32)

# 모두 0으로 되어 있는 빈 Canvas(검정색)

img = np.zeros((384, 384, 3), np.uint8)

# 그리기

img = cv2.polylines(img, [points1], False, blue_color, 2)  # 열린 도현

img = cv2.polylines(img, [points2], True, green_color, 2)  #닫힌 도형

 

cv2.imshow('polylines',img)

cv2.waitKey(0)

cv2.destroyAllWindows()


opencv_polyline


1.5.2 fillConvexPoly()

 

여러 점의 좌표를 이용 하여 채워진 볼록 다각형을 그립니다.   채워진 다각형이기 때문에 선 두께가 필요 없습니다.


cv2.fillConvexPoly(img, pts, color[, lineType[, shift]]) → img


parameter

 내용

 img

 이미지 파일

 pts

 좌표 점들 (x, y)

 color

 색상 (blue, green, red) 0 ~ 255

 lineType

 선 종류 (default cv.Line_8)

 - LINE_8 : 8-connected line

 - LINE_4 : 4-connecterd line

 - LINE_AA : antialiased line

 shift

 fractional bit (default 0)



- 볼록 다각형 그리기


import numpy as np

import cv2

 

# color 설정

blue_color = (255, 0, 0)

green_color = (0, 255, 0)

red_color = (0, 0, 255)

white_color = (255, 255, 255)

 

# 모두 0으로 되어 있는 Canvas(검정색)

img = np.zeros((384, 384, 3), np.uint8)

# 점 좌표 설정

pt1 = np.array([[110, 110], [270, 110], [300, 330], [170, 350], [100, 250], [50, 150]], np.int32)

# 볼록 다각형 그리기

img = cv2.fillConvexPoly(img, pt1, white_color)

 

cv2.imshow('fillConvexPoly',img)

cv2.waitKey(0)

cv2.destroyAllWindows() 


opencv_polyline


 

- 오목 다각형 그리기


오목 다각형을 fillConvexPoly() 함수로 그리면 조금 다른 모양으로 나타납니다.


import numpy as np

import cv2

 

# color 설정

blue_color = (255, 0, 0)

green_color = (0, 255, 0)

red_color = (0, 0, 255)

white_color = (255, 255, 255)

 

# 모두 0으로 되어 있는 Canvas(검정색)

img = np.zeros((384, 384, 3), np.uint8)

# 좌표 설정

pt1 = np.array([[110, 110], [270, 110], [300, 330], [170, 170], [150, 250]], np.int32)

# 오목 다각형 그리기

img = cv2.fillConvexPoly(img, pt1, white_color)

img = cv2.polylines(img, [points2], True, green_color, 2)  #닫힌 도형

 

cv2.imshow('polylines',img)

cv2.waitKey(0)

cv2.destroyAllWindows()


비교를 하기 위해 fillConvexPoly() 흰색으로 그리고 위에 녹색으로 polylines() 그려보았습니다.


opencv_polyline


1.5.3 fillPoly()


채워진 다각형을 그립니다. pts에 다각형 배열 값을 여러 개 입력할 수도 있습니다.

 

cv2.fillPoly(img, pts, color[, lineType[, shift[, offset]]]→ img


parameter

 내용

 img

 이미지 파일

 pts

 좌표 점들 (x, y)

 color

 색상 (blue, green, red) 0 ~ 255

 lineType

 선 종류 (default cv.Line_8)

 - LINE_8 : 8-connected line

 - LINE_4 : 4-connecterd line

 - LINE_AA : antialiased line

 shift

 fractional bit (default 0)

 offset 모든 contour 점들의 offset


- fillPoly()에 다각형 좌표 배열을 한 개만 적용한 경우


import numpy as np

import cv2

 

# color 설정

blue_color = (255, 0, 0)

green_color = (0, 255, 0)

red_color = (0, 0, 255)

white_color = (255, 255, 255)

 

# points 설정

points1 = np.array([[10, 10], [170, 10], [200, 230], [70, 70], [50, 150]], np.int32)

points2 = np.array([[110, 110], [270, 110], [300, 330], [170, 170], [150, 250]], np.int32)

 

# 모두 0으로 되어 있는 빈 Canvas(검정색)

img = np.zeros((384, 384, 3), np.uint8)

# 그리기

img = cv2.fillPoly(img, [points1], blue_color)

img = cv2.fillPoly(img, [points2], green_color)

 

cv2.imshow('fillPoly',img)

cv2.waitKey(0)

cv2.destroyAllWindows()


opencv_polyline


- fillPoly()에 다각형 좌표 배열을 여러 개 적용한 경우 겹치는 부분이 사라집니다.


import numpy as np

import cv2

 

# color 설정

blue_color = (255, 0, 0)

green_color = (0, 255, 0)

red_color = (0, 0, 255)

white_color = (255, 255, 255)

 

# points 설정

points1 = np.array([[10, 10], [170, 10], [200, 230], [70, 70], [50, 150]], np.int32)

points2 = np.array([[110, 110], [270, 110], [300, 330], [170, 170], [150, 250]], np.int32)

 

# 모두 0으로 되어 있는 빈 Canvas(검정색)

img = np.zeros((384, 384, 3), np.uint8)

# 그리기

img = cv2.fillPoly(img, [points1, points2], green_color)

#img = cv2.fillPoly(img, [points2], green_color)

 

cv2.imshow('fillPoly',img)

cv2.waitKey(0)

cv2.destroyAllWindows()


opencv_polyline



1.5.4 ellipse2Poly()


delta 각에 의하여 연결되는 선들을 이용하여 타원을 그리는 함수로 delta 값이 작을 수로 좀더 원에 가까운 다각형을 그릴 수 있습니다. ellipse2Poly() 함수의 파라미터 중 delta를 제외하고는 타원을 그리는 요소들 그대로 입니다즉 원을 면저 그리고 delta를 이용하여 그 원에 접하는 선들 의 좌표 값을 구하게 됩니다.  delta 값이 작을 수로 원에 가까운 좌표들을 얻을 수 있습니다.


cv2.ellipse2Poly(center, axes, angle, arcStart, arcEnd, delta) → pts


parameter

 내용

 center

 타원의 중심 좌표(x, y)

 axes

 축의 절반 길이(x, y)

 angle

 타원의 회전 각도

 arcStart

 선의 좌표를 구하는 시작 각도

 arcEnd

 선의 좌표를 구하는 종료 각도
 delta

 타원의 회전 각도

 pts 타원에 접하는 선의 좌표 값들


import numpy as np

import cv2

 

# color 설정

blue_color = (255, 0, 0)

green_color = (0, 255, 0)

red_color = (0, 0, 255)

white_color = (255, 255, 255)

 

# 모두 0으로 되어 있는 빈 Canvas(검정색)

img = np.zeros((384, 384, 3), np.uint8)

pt1 = cv2.ellipse2Poly((200, 200), (100, 160), 0, 0, 360, 50)

pt2 = cv2.ellipse2Poly((200, 200), (100, 160), 0, 0, 360, 30)

img = cv2.ellipse(img, (200, 200), (100, 160), 0, 0, 360, white_color, 2)

img = cv2.polylines(img, [pt1], False, green_color, 2)

img = cv2.polylines(img, [pt2], False, red_color, 2)

 

print(pt1)

 

cv2.imshow('polylines',img)

cv2.waitKey(0)

cv2.destroyAllWindows()


- pt1의 좌표 값만 출력해 보았습니다.  각도가 작아질 수록 개수가 많아집니다.

[[300 200]

 [264 323]

 [183 358]

 [113 280]

 [106 145]

 [166  50]

 [250  61]

 [298 172]

 [300 200]]


opencv_polyline


- 시작, 종료 각도


타원의 내부에서 각도를 설정하여 일부분의 좌표 값들을 리턴 받을 수 있습니다.


pt1 = cv2.ellipse2Poly((200, 200), (100, 160), 0,   0, 180, 50)

pt2 = cv2.ellipse2Poly((200, 200), (100, 160), 0, 180, 360, 30)


opencv_polyline


- 타원의 회전


타원이 회전된 경우 내접하는 좌표를 구해 봅니다.


pt3 = cv2.ellipse2Poly((200, 200), (100, 160),  0, 0, 360, 50)

pt1 = cv2.ellipse2Poly((200, 200), (100, 160), 45, 0, 360, 50)

pt2 = cv2.ellipse2Poly((200, 200), (100, 160), 90, 0, 360, 30)

 

img = cv2.ellipse(img, (200, 200), (100, 160), 0, 0, 360, white_color, 2)

img = cv2.polylines(img, [pt1], False, green_color, 2)

img = cv2.polylines(img, [pt2], False, red_color, 2)

img = cv2.polylines(img, [pt3], False, blue_color, 2)


opencv_polyline


숲속에 앉거나 눕는 꿈 해몽

  -> 병원에 입원하거나 현재 진행중인 일이 잘 해결되지 않을 것이다.


숲 속을 걷는 꿈 해몽

  -> 사업, 학업, 연구 등을 나타낸다.


숲을 산책하는 꿈 해몽

  -> 매사가 순조롭게 풀려서 근심이 사라질 것이다.


숲속을 헤매는 꿈 해몽

  -> 일에 너무 몰두하여 잃어 버리는 것이 있다는 암시이다.


아카시아 숲속을 헤매는 꿈 해몽

  -> 모든 일이 풀리지 않고, 이리 저리로 꼬이며, 분주다마, 미로가 있다.


대나무 숲에서 헤매는 꿈 해몽

  -> 일에 몰두하지만, 마음이 안정되지 않고 항상 불안하다.


숲 속을 걸어서 들어간 꿈 해몽

  -> 견학, 직무수행, 독서 등을 나타낸다.


양을 따라 깊은 숲속으로 들어가는 꿈 해몽

  -> 상당한 실력자를 만나 도움을 받거나, 오래된 문헌자료를 얻는다.


숲 속에서 구미호를 만나서 따라가는 꿈 해몽

  -> 주색에 빠져 처자식을 잊고, 방탕한 생활을 한다.


영적인 존재와 같이 숲을 걷는 꿈 해몽

  -> 교양서적을 읽거나 여러 분야의 사람들을 만나서 교유하게 된다.


망령이 손을 잡고 숲 속으로 끌어 들이는 꿈 해몽

  -> 교양 있는 서적을 읽거나 여러 방면으로 아는 사람을 소개 받는다.


숲속에 혼자 있거나 숲속에서 겁을 먹은 상태로 있는 꿈 해몽

  -> 믿었던 사람에게 실망한다.


숲속에서 미아가 되는 꿈 해몽

  -> 중요한 계획이 성공한다.


숲 속에서 낮잠을 자는 꿈 해몽

  -> 하루 종일 기분이 상쾌하고 마음의 여유를 갖고, 스포츠, 현실의 극락 등에 변화가 있다.


숲속에서 시체를 보는 꿈 해몽

  -> 시험에 합격하거나 승진, 취직 진급의 행운이 따른다.


송장을 안고 숲 속을 헤매는 회사원의 꿈 해몽

  -> 회사 내부에서 중책을 맡고, 충실함을 인정 받는다는 것을 암시한 것이다.


숲 속에서 이나 별장 등을 발견하는 꿈 해몽

  -> 학문적인 업적이나 사업성과가 매우 좋아진다.


깊은 숲속에서 을 발견하고 안으로 들어가는 꿈 해몽

  -> 입학을 하거나 취직을 할 수 있는 즐거움을 맛보게 된다.


숲속의 폭포건물발견하는 꿈 해몽

  -> 본인의 작업이 좋은 결과를 이루어 이름을 날릴 징조이다.


멀리 보이는 무성한 숲에 관한 꿈 해몽

  -> 들어가기 어려운 곳, 들어가면 안 되는 곳을 뜻하는 의미로 처녀를 정복하고 싶어하는 욕망을 상징한다.


산에 숲이 우거져 보이는 꿈 해몽

  -> 방어 태세가 안전함을 암시한다.


숲 속에서 나무 한 그루가 유별나게 것을 보는 꿈 해몽

  -> 총명한 자식을 잉태하거나 자손에 영화로움이 따르든지, 금전과 이권의 기쁨을 얻는다.


숲속에 냇물흐르는 꿈 해몽

  -> 사업이 잘 되고 모든 일이 순조롭게 풀리게 될 것이다.


숲속의 냇물보는 꿈 해몽

  -> 진행중인 일을 수월하게 이루게 된다.




숲이나 얕은 언덕이 불타는 꿈 해몽

  -> 하고 있는 일이 번창하고 잘 이루어진다.


숲이 불길에 휩싸이는 꿈 해몽

  -> 사업이나 집안이 크게 번성하여 일신이 안락할 것이다.


숲을 개간하는 꿈 해몽

  -> 새로운 일을 시작하는 운명이 된다.


숲속에서 과일이나 버섯따는 꿈 해몽

  -> 매사가 순조롭게 이루어질 꿈이다.


숲 속에서 꺾는 꿈 해몽

  -> 어떤 기관에서 자기를 남 앞에 내세우는 일이 생긴다.


거목을 숲 속에서 베어 껍질을 벗긴 꿈 해몽

  -> 어떤 단체에서 회장, 의원 등에 출마하도록 추천을 받는다.


숲속에 숨어 있는 꿈 해몽

  -> 지금은 고통스럽게 느껴지는 일도 나중에 그 보답이 있다.


긴 폭포수가 숲 사이에 흐르는 것을 보는 꿈 해몽

  -> 출판업, 작품발표 등이 성대하게 성사된다.


물고기를 숲 속의 개울에서 잡는 꿈 해몽

  -> 계획하고 있는 일을 추진하며 성과를 얻는다.


숲 속에서 호랑이만나는 꿈 해몽

  -> 확실한 실력자를 만나 지도와 도움을 받고, 추진하는 일에 큰 성과를 얻는다.


토끼가 숲속이나 바위 뒤로 숨어 버리는 꿈 해몽

  -> 좋은 결과를 기대하며 시작하지만, 생각만큼의 성과를 거두지 못할 징조이다.


갈대숲에서 를 보는 꿈 해몽

  -> 방해자가 나타나 일이 뒤틀리거나 경쟁자로 인해 곤란을 겪게 된다.또는 이웃이나 식구와 이별할 수가 있다.


달걀을 숲 속에서 발견한 꿈 해몽

  -> 많은 사람들이 자기의 좋은 아이디어를 인정해 준다.


꾀꼬리가 숲속에서 날아 다니는 꿈 해몽

  -> 직장 또는 자리의 이동수가 있거나, 현재의 직종을 바꾸는 등 변화가 있다.


우거진 숲속에 나무 한 그루말라죽는 꿈 해몽

  -> 사업의 부진, 질병 등으로 고생하게 된다.


우거진 숲속에 홀로 말라서 죽은 나무보는 꿈 해몽

  -> 재수가 없으며, 나무의 일부가 죽어 있으면 사업의 부진이나 질병 또는 세력의 일부를 상실한다.


숲속에서 파란 거북이가 놀고 있는 꿈 해몽

  -> 새로운 작품을 창작하거나, 돈이 생긴다는 암시이다.


숲 사이에서 풀벌레 소리가 들리는 꿈 해몽

  -> 유익한 정보와 기쁜 소식을 듣거나, 인문, 의학, 문예작품, 자연, 과학 등의 연구 결과를 매스컴을 통해 발표하거나, 우편물, 알림, 경사, 혼담, 음악 감상, 전신, 전화, 아이디어 등과 관련된 일이 있다.


숲에 관한 꿈 해몽

  -> 일반적으로 기업체, 백화점, 학원 등과 관계 있는 일이 발생한다.


- copy coding -


자주 일어나지는 않지만 가끔 작업을 하던 창이 메인 창에서 벗어나는 경우가 발생 합니다화면 밖에 위치 하기 때문에 꺼내올 수도 없고 저장하지 않은 작업의 경우에는 종료할 수도 없고 어떤 프로그램은 종료를 하고 다시 시작을 해도 최종 위치를 기억하고 계속 숨어 있는 경우도 있습니다.

 

파일 탐색기가 작업 표시줄 아래로 내려간 상태입니다자세히 보면 뭔가 있는 것 같기도 하고...


hidden_window


꺼내보려고 마우스를 가져가면 작업 표시줄이 벌떡 올라와 버려서 꺼낼 수가 없습니다.


hidden_window


이럴떈 작업 표시줄에 마우스를 놓고 우측 버튼을 누른 후 팝업 메뉴에서


hidden_window


- 계단식 창 배열(D)

- 창 가로 정렬 보기(H)

- 창 세로 정렬 보기(I)


중 하나를 선택 하면 숨어 있던 창이 밖으로 기어 나와 바탕 화면에 배열 됩니다.


hidden_window


windows 10의 경우도 동일하게 작업 하면 됩니다.


hidden_window


1···79808182838485···118

+ Recent posts