반응형

파이선 135

[Python] Numpy 배열 값 채우기(1차, 2차, 3차 ....)

목차 파이썬 넘파이 행렬 어레이 채우기 행렬(Matrix) array 값을 채우는 방법은 간단합니다. 주로 full 과 fill 함수를 사용해서 채웁니다. fill 함수의 경우 empty 함수를 사용해서 비우는 작업을 하기 때문에 간단한 full로 설명을 대체 하겠습니다. full 함수의 Syntax는 아래와 같습니다. matrix = np.full((행렬사이즈 정보),넣을 값,dtype=데이터 종류) 아래 예제 코드를 통해 쉽게 이해해 보겠습니다. 예제 코드>> import numpy as np matrix = np.full((4),7,dtype=np.uint16) print("1차 행렬") print(matrix) matrix = np.full((3,4),7,dtype=np.uint16) print(..

[Python]OpenCV 3차원 이미지 스캔화면(2차원)처럼 바꾸기

목차 [Python]OpenCV 기하학적 변형하기(Geometry formation) 이번 포스트는 이름을 어떻게 작성할까 고민 끝에 일반 사진(Picture) 파일을 2차원의 스캔(Scan)한 것과 같은 효과로 만드는 것 같아서 스캔하기로 적었습니다. 이전 장에서는 2차원 평면(Plane)의 그림(Image)을 원근(Perspective)을 줘서 3차원처럼 보이게 만들었는데 이번에는 반대로 3차원의 원근 거리감이 있는 이미지 파일을 거리감이 없어지게 변형하는 코드를 작성해 보았습니다. 설명에 앞서 아래 예제의 결과를 먼저 공유 해서 이번 포스트의 진행 방향을 쉽게 이해가도록 하겠습니다. 아래 예제 결과>> 최근에 위와 같은 예제를 명함이나 스마트폰의 사진 기술에서 많이 볼 수 있습니다. 명함을 비뚫게 ..

[Python]OpenCV 이미지 기울어지게 만들기, 원근감 주기(getPerspectiveTransform, warpPerspective)

목차 파이썬 OpenCV 이미지 파일 원근감 주기(Perspective) 이번 포스트에서는 파이썬의 OpenCV를 사용해서 사진 파일(Picture file)을 불러와서 2차원 평면을 기울려서 3차원과 같은 형태로 원근감을 줘보겠습니다. 그림이 멀리서 보이는 듯하게 보이게 하기 위해서는 아래 작업들이 필요 합니다. 1. 원본 이미지 픽셀 크기 확인 2. getPerspectiveTransform 함수 3. warpPerspective 함수 사실 함수 사용법만 알면 간단하게 할 수 있는 작업입니다. getPerspectiveTransform 함수 사용에 대해 알아보겠습니다. getPerspectiveTransform(원본 이미지 좌표, 변경할 이미지 좌표) 입력값으로 원본 이미지의 좌표와 변경할 이미지의 ..

[Python]파이썬으로 PDF 자르기, 붙이기, 편집하기

목차 [Python]파이썬으로 PDF 붙이기 파이썬에서 제공하는 PyPDF2 라이브러리를 사용하면 손쉽게 PDF 편집(Edit)을 할 수 있습니다. 우선 PDF 문서를 붙이는 (Append, Combine, Merge) 방법에 대해 알아 보겠습니다. 방법은 아래와 같이 간단하게 진행 됩니다. PdfFileReader 함수로 PDF 문서 페이지 일기 PdfFileWriter 함수로 읽은 문서를 저장 / 쓰기 아래 예제를 통해 구현해보겠습니다. 참고로 예제 구현을 위해 pdf001.pdf 파일과 pdf002.pdf 파일을 만들었고 문서(Document) 내용은 아래와 같습니다. 예제 코드>> from PyPDF2 import PdfFileReader, PdfFileWriter pdf_writer = PdfF..

파이썬(Python) 2022.04.02

[Python]OpenCV 사람 얼굴 사진 겹치게 합성하기, 겹치면서 사진 바꾸기

목차 [Python]OpenCV 사람 얼굴 사진 겹치게 합성하기 이번 포스트에서는 파이썬 OpenCV를 사용해서 사람 얼굴이 있는 이미지 파일 2개를 열어서 한 얼굴에서 다른 얼굴로 그라데이션 처럼 천천히 바뀌는 예제를 구현할 것입니다. 이번 예제(Example)를 구현하기 위해서는 OpenCV 로 읽은 이미지 파일(Image file)은 픽셀값을 저장한 Numpy 행렬 형태라는 사실을 이해 해야 하고 두 이미지 사이에 픽셀 값에 Weighting을 주면서 점차적으로 바꿔야 한다는 원리를 이해하여야 합니다. 픽셀값(Pixel value)에 대한 설명은 아래 포스터에 잘되어 있으니 참조 하시길 바랍니다. https://scribblinganything.tistory.com/493 [Python]OpenCV..

[Python]OpenCV 그림 영역 선택, 모자이크 처리하기(Image, Mosaic, Blur)

목차 파이썬 OpenCV Image File 모자이크 처리 이번 포스트는 파이썬 OpenCV의 Blur 함수를 사용해서 모자이크(Mosaic)처리 하는 방법에 대해 알아보겠습니다. 이번 포스트를 수행하기 위해서 아래 단계를 수행 합니다. 이미지 파일불러오기 모자이크할 영역 선택하기 선택 영역 blur함수로 모자이크하기 원본 영역에 blur 모자이크된 영역 덧붙이기 변경된 이미지 불러오기 1~2번 단계는 selectROI로 구현 합니다. selectROI 함수 사용법에 대해서는 아래 포스트에서 진행하였으니 궁금하시면 아래 포스트 참조하시면 됩니다. https://scribblinganything.tistory.com/496 [Python]OpenCV 이미지 마우스 클릭 좌표(위치) 값 확인(selectRO..

[Python] 키보드(keyboard) 이벤트(event) 값 읽기

목차 파이썬 키보드 값 클릭 확인 함수 is_pressed 파이썬(Python)의 키보드 값을 입력하면 입력에 대응해서 뭔가를 처리하고 싶을 때가 있습니다. 이러한 이벤트(event)를 감지하기 위해 필요한 라이브러리가 keyboard 입니다. 만일 keyboard 라이브러리가 없다면 pip install keyboard로 먼저 설치를 하시길 바랍니다. 키보드를 통해 입력한 값이 맞는지를 확인하는 함수는 is_pressed 입니다. 아래 예제 코드를 보시면 쉽게 이해할 수 있습니다. 예제 코드>> import keyboard while True: if keyboard.is_pressed("1"): print("hello") break 4번 라인: 키보드 1버튼을 클릭하면 if 문 실행 결과>> 코드 실행..

[Python]OpenCV 이미지 마우스 클릭 좌표(위치) 값 확인(selectROI 함수)

목차 OpenCV 이미지 마우스 클릭 좌표 값 확인 파이썬 OpenCV의 함수 중에 selectROI 함수는 이미지(image) 파일이나 그림 파일을 읽었을 때 마우스로 원하는 이미지를 클릭하면 해당 위치(Location) 값을 return해 줍니다. selectROI 함수 사용법은 아래와 같습니다. Syntax>> cv2.selectROI(윈도우창 이름, 소스 이미지명, 격자형태 선택) 윈도우창 이름은 imshow를 사용했을 때 처럼 selectROI도 이미지 창을 만들어 주는데 이미지 창(window)의 이름을 설정합니다. 소스 이미지명은 imread로 읽은 이미지 파일(image file)의 return 값을 저장한 객체 명을 입력 합니다. 격자 형태는 마우스를 클릭하면 사각형이 만들어 지는데 Fa..

[Python]OpenCV 색변환 함수 cvtColor 사용 방법(Gray, HSV, RGB, LAB 비교)

목차 파이썬 OpenCV cvtColor 사용 방법 파이썬 openCV에서 제공하는 함수 중에 cvtColor 함수가 있습니다. 함수 가운데 C는 대문자로 작성하셔야 합니다. 그렇지 않으면 아래와 같은 에러 메세지가 발생 합니다. 에러 메세지>> Traceback (most recent call last): File "d:\Python\test02\test06.py", line 5, in modified_img = cv2.cvtcolor(img, cv2.COLOR_BGR2GRAY ) AttributeError: module 'cv2' has no attribute 'cvtcolor' 파이썬의 openCV의 imread 읽은 이미지(image)파일은 BGR(Blue, Green, Red) 형태로 읽습니다...

[Python]OpenCV 동영상 저장하기, 코덱 종류와 사용방법(Video, fourcc, codec)

목차 파이썬 코덱 종류와 사용방법 파이썬 OpenCV에서 비디오 파일을 다루다 보면 코덱(Codec) 사용을 종종하게 됩니다. 코덱(Codec)이란 영상 파일의 Encode와 Decode를 처리함으로써 우리가 화면에서 보거나 파일로 저장하는 작업을 도와 줍니다. 이번 포스트에서는 코덱(Codec)을 사용해서 영상 파일을 저장하는 코드를 작성할 것입니다. 주로 사용하는 코덱은 아래와 같습니다. MJPG DIVX H264 H264의 경우 웹브라우져(Web browser) 용 비디오 코덱으로 많이 사용 됩니다. 그 외 각종 코덱은 텍스트의 링크를 통해 확인하실 수 있습니다. 코덱을 Python에서 사용하는 방법은 간단하게 아래와 같은 방법으로 진행하시면 됩니다. codec = "DIVX" fourcc = cv..

반응형