Giter Site home page Giter Site logo

imageprocessingbible's Introduction

『이미지처리 바이블』

파이썬과 OpenCV, TensorFlow를 통해 이미지처리의 모든 것을 배우고 실전에 적용해보자!

본 자료는 구글 코랩(Google Colab) 기반으로 작성되었습니다. 각 장의 실행 코드는 아래 링크를 클릭하여 구글 코랩에서 바로 실행할 수 있습니다.

[구글 코랩 실행하기] 링크를 클릭하면 각 장의 실행 코드로 이동합니다.

1.1장. 파이썬 핵심 [구글 코랩 실행하기]

1.2장. OpenCV [구글 코랩 실행하기]

2장. 이미지처리기초 [구글 코랩 실행하기]

3장. 인공지능과 이미지처리 [구글 코랩 실행하기]

4.1장. 구글넷 [구글 코랩 실행하기]

4.2장. 레스넷 [구글 코랩 실행하기]

4.3장. 이피션트넷 [구글 코랩 실행하기]

4.4장. ViT [구글 코랩 실행하기]

4.5장. 스윈트랜스포머 [구글 코랩 실행하기]

5.1장. 객체탐지1 [구글 코랩 실행하기]

5.2장. 객체탐지2 [구글 코랩 실행하기]

6.1장. CycleGAN [구글 코랩 실행하기]

6.2장. StarGAN [구글 코랩 실행하기]

6.3장. StyleGAN2 [구글 코랩 실행하기]

7.1장. 건설현장 이미지처리 [구글 코랩 실행하기]

7.2장. 건설현장 이미지분할 [구글 코랩 실행하기]

7.3장. 의료 이미지 처리 [구글 코랩 실행하기]


『이미지 처리 바이블』(길벗, 2024) 은 이미지 처리와 컴퓨터 비전의 기본부터 고급 기법까지 폭넓게 다루는 실전 지침서입니다. 이 책은 이미지 처리의 기본 개념, 필수 도구(파이썬, OpenCV, TensorFlow), 이미지의 구조와 색 공간, 텐서 이해를 시작으로, 이미지 필터링, 변환, 주파수 도메인 기법, 이미지 경계 검출 등의 기초 기법을 설명합니다. 또한, 인공 신경망 기초부터 합성곱 신경망(CNN), 스테이블 디퓨전(Stable Diffusion)까지 딥러닝을 활용한 이미지 처리 방법을 상세히 다룹니다.

고급 주제로는 이미지 분류, 객체 탐지, 영역 분할, 이미지 생성 등 최신 딥러닝 모델과 기술의 적용을 포함합니다. 실제 사례 및 프로젝트 섹션에서는 의료, 건설 현장 등 사회적 이슈 해결을 위한 이미지 처리 사례를 소개하고, 종합 프로젝트를 통해 이론을 실제 문제 해결에 적용하는 방법을 배울 수 있습니다. 저자의 풍부한 강의 경험을 바탕으로 초보자도 쉽게 이해할 수 있게 설계된 이 책은 이미지 처리를 깊이 있게 배우고자 하는 모든 이에게 이상적인 가이드입니다.

소스 실행 방법

이 책의 예제 프로그램은 2024 구글 코랩을 기준으로 진행 하며 2024 Colab 기준 주요 라이브러리 및 파이썬 버전은 아래와 같습니다.

  • 파이썬 & OS

    * 파이썬 : 3.10.12
    * OS : 우분투 22.04.3 LTS
    
  • 주요 라이브러리

    tensorflow==2.15.0
    pillow==9.4.0
    opencv-python==4.8.0.76
    tensorflow-hub==0.16.1
    

이 책의 예제 프로그램은 Google Colab을 사용하여 실행하는 방법을 기준으로 합니다. Google Colab은 클라우드 기반의 무료 Jupyter 노트북 환경으로, 복잡한 환경 설정 없이 바로 코드를 작성하고 실행할 수 있는 큰 장점이 있습니다. 아래 내용을 추가하여 독자들이 더 쉽게 코랩에서 작업을 시작할 수 있도록 안내해보겠습니다:


Google Colab에서 시작하기

Google Colab을 사용하면 본 책의 예제 코드를 직접 실행하고, 결과를 바로 확인할 수 있습니다. Colab은 파이썬과 주요 라이브러리가 사전에 설치되어 있어, 추가적인 설치 과정 없이 편리하게 시작할 수 있습니다.

Colab에 노트북 업로드하기

  1. Google Colab 웹사이트에 접속합니다.
  2. '새 노트북'을 클릭하거나, Google Drive에 저장된 기존 노트북을 열 수 있습니다.
  3. '파일' 메뉴에서 '노트북 업로드'를 선택하여, 본 책의 소스 코드가 담긴 Jupyter 노트북(.ipynb 파일)을 업로드합니다.

필요한 라이브러리 설치하기

책에서 사용하는 특정 버전의 라이브러리를 설치하려면, 노트북의 첫 번째 셀에 다음과 같은 코드를 입력하고 실행하세요:

!pip install tensorflow==2.15.0 pillow==9.4.0 opencv-python==4.8.0.76 tensorflow-hub==0.16.1

노트북 실행하기

  • 코드 셀을 실행하려면, 셀을 선택하고 키보드의 Shift + Enter를 누르거나, 셀 왼쪽의 실행 버튼(▶️)을 클릭합니다.
  • 모든 코드 셀은 순서대로 실행되어야 합니다. 특정 셀의 실행이 다른 셀의 결과에 영향을 줄 수 있기 때문입니다.

Colab의 유용한 기능

  • GPU 가속: '런타임' > '런타임 유형 변경'에서 하드웨어 가속기로 GPU 또는 TPU를 선택할 수 있습니다. 복잡한 머신 러닝 모델을 빠르게 훈련시키는 데 유용합니다.
  • GitHub 연동: Colab은 GitHub 저장소에 저장된 Jupyter 노트북을 직접 열 수 있습니다. 또한, 작업한 노트북을 GitHub 저장소에 직접 저장하는 기능을 지원합니다.
  • Google Drive 마운트: Colab에서 Google Drive를 마운트하면, Drive 내의 파일을 직접 읽고 쓸 수 있습니다. 이는 데이터셋을 불러오거나, 모델을 저장하는 데 유용합니다.

Google Colab을 활용하면 본 책의 예제와 프로젝트를 더욱 효과적으로 진행할 수 있습니다. 시작하기 전에 Google 계정이 필요하며, 모든 작업은 클라우드에서 이루어지기 때문에 별도의 로컬 환경 설정이 필요 없습니다.


오프라인 강의

『이미지 처리 바이블』을 깊이 있게 학습하고 싶으신 분들을 위해 저자가 직접 운영하는 오프라인 강의가 있습니다. 이 강의에서는 책에서 다루는 주요 개념과 기술을 바탕으로, OpenCV와 TensorFlow를 활용한 실무적 적용 방법에 대해 더욱 심도 있게 다룹니다. 참가자들은 이론적 지식을 넘어, 실제 문제를 해결하는 데 필요한 실용적인 기술을 습득할 수 있습니다.

오프라인 강의에 관심 있으신 분들은 아래 이메일로 문의해 주시기 바랍니다.

📧 문의: [email protected]


동영상 강의

준비 중 입니다.

오탈자 (Errata)

오탈자 목록은 추후 [길벗] 출판사에서 확인할 수 있습니다.

imageprocessingbible's People

Contributors

lilcob avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.