이미 소장하고 있다면 판매해 보세요.
|
1장. OpenCV 기초와 카메라 보정
__기술 요구 사항 __OpenCV와 넘파이소개 ____OpenCV와 넘파이 ____이미지 크기 ____회색조 이미지 ____RGB 이미지 __이미지 파일 다루기 __비디오 파일 다루기 ____웹캠 다루기 __이미지 파일 작업하기 ____이미지 뒤집기 ____이미지 블러 ____이미지 명암, 밝기, 감마 값 바꾸기 ____사각형 그리기와 텍스트 입력하기 __HOG를 이용한 보행자 감지 ____슬라이딩 윈도우 ____OpenCV와 함께 HOG 사용하기 ____카메라 소개 ____카메라 용어 ____카메라 구성 요소 ____카메라 선택을 위한 고려 사항 ____카메라의 장점 및 단점 __OpenCV를 통한 카메라 보정 ____왜곡 탐지 ____보정 __요약 __질문 2장. 신호에 대한 이해와 작업 __기술 요구 사항 __신호 유형 이해하기 __아날로그 VS 디지털 __시리얼 VS 병렬 ____범용 비동기 수신 및 전송 방식 ____차동 vs 단일 종단 ____I2C ____SPI __프레임 기반 시리얼 프로토콜 ____CAN 통신 이해하기 ____이더넷과 인터넷 프로토콜 ____UDP 이해하기 ____TCP 이해하기 __요약 __질문 __더 읽어 보기 ____오픈소스 프로토콜 도구 3장. 차로 인식 __기술 요구 사항 __임계치 다루기 ____각기 다른 색상 공간에서의 임계치 다루기 ____RGB/BGR ____HLS ____HSV ____LAB ____YCbCr ____우리의 선택 __원근 수정 __경계 인식 ____임곗값 보간법 ____임곗값 결합 __히스토그램을 활용한 차로 찾기 __슬라이딩 윈도우 알고리듬 ____초기화 ____슬라이딩 윈도우의 좌표 ____다항식을 이용한 피팅 기법 __비디오를 활용한 차로 인식 성능 향상 ____부분 히스토그램 ____롤링 평균 __요약 __질문 2부. 자율 주행차가 딥러닝과 신경망으로 작동하는 방식 개선하기 4장. 신경망을 통한 딥러닝 __기술 요구 사항 __머신러닝과 신경망 이해하기 ____신경망 ____뉴런 ____파라미터 ____딥러닝의 성공 __컨볼루션 신경망에 대해 알아보기 ____컨볼루션 ____컨볼루션은 왜 대단한 것일까? __케라스와 텐서플로 시작하기 ____요구 사항 __MNIST 손글씨 숫자 탐지하기 ____방금 불러온 데이터는 무엇일까? ____학습 샘플 및 레이블 ____원 핫 인코딩 ____학습 및 테스트 데이터셋 __신경망 모델 정의하기 ____LeNet ____코드 ____아키텍처 ____신경망 학습하기 ____CIFAR-10 __요약 __질문 __더 읽어 보기 5장. 딥러닝 워크플로 __기술 요구 사항 __데이터셋 수집하기 ____케라스 모듈의 데이터셋 ____기존 데이터셋 ____커스텀 데이터셋 __세 가지 데이터셋 이해하기 ____데이터셋 분할하기 __분류기 이해하기 ____실제 데이터셋 생성하기 ____데이터 증강 __모델 ____컨볼루션 층 조정하기 ____맥스 풀링 층 조정하기 ____밀집 층 조정하기 ____신경망 학습하기 ____신경망 학습 방법 ____무작위 초기화 ____오버피팅과 언더피팅 __액티베이션을 시각화하기 __추론 __재학습 __요약 __질문 6장. 신경망 개선하기 __기술 요구 사항 __더 큰 모델 ____시작점 ____속도 개선하기 ____깊이 증가시키기 __보다 효율적인 신경망 __배치 정규화를 통해 더욱 똑똑한 신경망 구축하기 ____올바른 배치 크기 선택하기 __조기 종료 __데이터 증강을 통해 데이터셋 개선하기 __드롭아웃을 통해 검증 정확도 개선하기 ____모델을 MNIST에 적용하기 ____이제 당신의 차례! __요약 __질문 7장. 보행자 및 신호등 감지 __기술 요구 사항 __SSD를 이용한 보행자, 차량, 신호등 감지 ____Carla로 약간의 이미지 수집하기 ____SSD의 이해 ____zoo 텐서플로 감지 모델 알아보기 ____SSD 다운로드 및 불러오기 ____SSD 실행하기 ____이미지에 주석 달기 __신호등의 색상 감지 ____신호등 데이터셋 만들기 ____전이 학습 이해하기 ____ImageNet 알아가기 ____AlexNet 파헤치기 ____이미지 분류에 Inception 사용하기 ____전이 학습에 Inception 사용하기 ____Inception에 데이터셋 투입하기 ____전이 학습을 통한 성능 ____전이 학습 개선 __신호등과 그 색상을 인식하기 __요약 __질문 __더 읽어 보기 8장. 행동 복제 __기술적 요구 사항 __행동 복제를 통해 신경망에게 운전법을 가르치기 __DAVE-2 소개 ____manual_control.py 알아보기 ____비디오 스트림 1개 녹화하기 ____신경망 모델링하기 ____회귀 수행용 신경망 학습 ____돌출맵 시각화 __신경망을 Carla와 통합하기 ____GPU를 작동시키기 __자율 주행! ____제너레이터를 활용한 더 큰 데이터셋 학습 ____어려운 방식으로 데이터 증강하기 __요약 __질문 __더 읽어 보기 9장. 시맨틱 분할 __기술 요구 사항 __시맨틱 분할 소개 ____목표 정의하기 ____데이터 수집하기 ____synchronous_mode.py 수정하기 __분류를 위한 DenseNet 이해 ____조감도에서 본 DenseNet ____밀집 블록 이해하기 __CNN으로 이미지 분할 __시맨틱 분할을 위한 DenseNet 조정 __FC-DenseNet 블록 코딩 ____모든 요소들 결합하기 ____네트워크에 입력 공급하기 ____신경망 실행하기 ____잘못된 시맨틱 분할 개선하기 __요약 __질문 __더 읽을 거리 3부. 매핑과 제어 10장. 조향, 스로틀, 브레이크 제어 __기술 요구 사항 __제어가 필요한 이유 ____컨트롤러는 무엇인가? __컨트롤러의 종류 ____PID ____MPC __CARLA에서 PID 적용하기 ____CARLA 설치하기 ____Packt-Town04-PID.py 스크립트 파일 복사하기 ____Packt-Town04-PID.py 스크립트 파일 복사하기 ____PIDLongitudinalController ____PIDLateralController ____스크립트 실행하기 __C++의 예제 MPC __요약 __질문 __더 읽을거리 11장. 주변 환경 매핑하기 __기술 요구 사항 __지도 작성과 로컬라이제이션이 필요한 이유 ____지도 작성 ____로컬라이제이션 __지도 작성 및 로컬라이제이션 유형 ____동시 위치 추정 및 지도 작성 __오픈소스 지도 작성 도구 __아우스터 라이다와 구글 카르토그래퍼가 있는 SLAM ____아우스터 센서 ____repo ____cartographer_ros 시작하기 ____Cartographer_ros 구성 ____도커 이미지 __요약 __질문 __더 읽을거리 |
Luca Venturi
Krishtof Korda
김은도의 다른 상품
이승열의 다른 상품
|
이 책에서 다루는 내용
- 카메라 보정을 수행하는 방법 - OpenCV을 사용해 자율주행차량에서 차로 감지 기능이 작동하는 방식 숙지 - 비디오 게임 시뮬레이터에서 자율주행을 통한 행동 복제 탐구 - 라이다를 사용해 파악 - 자율 주행 차량의 컨트롤 구성 방법 - 객체 감지 및 시맨틱 분할을 사용해 차로, 자동차 및 보행자 위치 파악 - 시뮬레이터에서 주행하는 자율주행차를 제어하기 위한 PID 컨트롤러 작성 이 책의 대상 독자 이 책은 자율 주행차를 만드는 데 필요한 몇 가지 측면을 다루고 있으며, 프로그래밍 언어에 대한 기본 지식을 갖춘 프로그래머(가급적이면 파이썬)를 대상으로 한다. 딥러닝 경험이 필요하지 않지만, 책의 앞부분을 완전히 이해하려면 제안된 판독값 중 일부를 살펴보는 것이 좋다. 11장 ‘환경 매핑’과 관련된 소스코드는 C++에 있다. 이 책의 구성 1장, ‘OpenCV 기초와 카메라 보정’은 OpenCV 및 넘파이(NumPy)에 대해 소개한다. OpenCV를 사용해 영상과 비디오를 조작하는 방법과 보행자를 감지하는 방법을 설명한다. 2장, ‘신호에 대한 이해와 작업’에서는 직렬, 병렬, 디지털, 아날로그, 싱글 엔드 및 차동 등 다양한 유형의 신호를 설명한다. 또한 매우 중요한 프로토콜인 CAN, 이더넷, TCP, UDP도 다룬다. 3장, ‘차로 인식’에서는 OpenCV를 사용해 도로의 차선을 감지하는 데 필요한 모든 사항을 설명한다. 4장, ‘신경망을 통한 딥러닝’은 네트워크 신경망에 대한 실용적인 소개로, 신경망을 쓰는 방법을 빠르게 가르치고자 고안됐다. 5장, ‘딥러닝 워크플로’는 4장, ‘신경망을 통한 딥러닝’의 이론을 보완한다. 데이터셋을 확보하거나 생성하고, 교육, 검증, 테스트 세트로 분할하고, 데이터 증강, 분류기에 사용되는 주요 계층 그리고 학습, 추론, 재학습 방법을 포함한 일반적인 워크플로의 단계를 보여 줄 것이다. 6장, ‘신경망 개선하기’에서는 배치 정규화, 조기 중지, 데이터 확대, 드롭아웃(dropout)을 사용해 중립 네트워크를 최적화하고 파라미터를 줄이는 방법과 정확성을 높이는 방법을 설명한다. 7장, ‘보행자 및 신호등 감지’는 당신을 CARLA에 소개한다. 교통 신호등의 데이터셋을 만드는 데 사용할 자율 주행 자동차 시뮬레이터 SSD라는 사전 학습된 신경망으로 보행자, 자동차, 신호등을 탐지하고, 전송 학습이라는 강력한 기술을 활용해 신호등을 색깔에 따라 분류하는 신경망을 학습할 예정이다. 8장, ‘행동 복제’에서는 CARLA를 구동하는 신경망을 학습시키는 방법을 설명한다. 또한 동작 복제, CARLA를 사용해 구동 데이터셋을 구축하는 방법, 이 작업에 적합한 네트워크를 생성하는 방법 및 학습 방법을 설명한다. 9장, ‘시맨틱 분할’은 딥러닝에 대한 최종적이고 가장 선구적인 장으로, 시맨틱 분할이 무엇인지 설명한다. DenseNet이라고 불리는 매우 흥미로운 아키텍처를 설명하고, 그것을 시맨틱 분할에 어떻게 적응시키는지 보여줄 것이다. 10장, ‘조향, 스로틀, 브레이크 제어’는 자율 주행차를 제어하는 것에 대해 설명한다. PID 컨트롤러에 초점을 맞추고 MPC 컨트롤러의 기본 사항을 다루는 컨트롤러가 무엇인지 설명한다. 11장, ‘주변 환경 매핑하기’에서는 지도에 대해 논하고 로컬라이제이션, 라이다 등 오픈소스 매핑 도구를 설명한다. 동시 로컬라이제이션 및 매핑(SLAM, Simultaneous Localization And Mapping)이 무엇인지, 아우스터 라이다(Ouster lidar) 및 구글 카르토그래퍼(Google Cartographer)를 사용해 SLAM을 구현하는 방법을 배운다. 지은이의 말 자율주행차는 곧 우리 주변에 등장할 것이다. 이 분야에서 볼 수 있는 발전은 정말 대단한 것이다. 자율주행차를 처음 접한 것은 2010년, 도쿄에 있는 도요타(Toyota) 전시장이었다. 당시 자율주행차를 한 번 타는 가격은 1달러 정도였다. 차는 매우 느렸고, 도로에 내장된 센서에 의존했다. 그리고 몇 년 후 컴퓨터 비전의 발전과 딥러닝과 라이다(lidar)는 당시의 기술이 원시적이고 불필요하게 강박적이며 비싸게 보이게 만드는 효과를 보여줬다. 이 책에서는 보행자 감지 및 차로 감지를 포함한 다양한 작업에 OpenCV를 사용할 것이다. 또한 가장 영향력 있는 신경망을 연구해 딥러닝으로 이미지 분류, 물체 감지, 의미 분할에 활용하는 방법을 배우고 보행자, 자동차, 도로, 인도, 신호등을 식별하는 방법을 학습할 것이다. 그리고 행동 복제 및 PID 컨트롤러를 사용해 자동차를 제어하는 데 사용되는 CARLA 시뮬레이터를 사용할 것이며, 네트워크 프로토콜, 센서, 카메라, 라이다로 주변 세계를 매핑하고 위치를 찾는 방법을 배울 수 있다. 하지만 이 놀라운 기술들을 탐구하기 전에 잠시 20년 후의 미래를 상상해 보자. 그 차들은 스스로 운전할 수 있을 것이다. 하지만 날 수도 있을까? 아직도 건널목 신호등이 있을까? 얼마나 빠르고 무겁고 비쌀까? 어떻게 사용될 것이며, 얼마나 자주 사용하게 될 것인가? 자율 주행 버스와 트럭은 어떨까? 미래는 알 수 없지만 자율주행차, 그리고 일반적으로 자율주행하는 것들이 우리의 일상과 도시를 새롭고 흥미진진한 방식으로 형성하는 풍경은 자연스럽게 상상해 볼 수 있다. 이 미래를 만들어 나가는 데 적극적인 역할을 하고 싶은가? 만약 그렇다면 계속 읽어 주길 바란다. 이 책은 당신의 여행의 첫 번째 발걸음이 될 수 있다. 옮긴이의 말 인공지능 기술의 눈부신 발전과 더불어 모든 자동차 제조사가 자율주행 기술 개발에 열을 올리고 있다. 덕분에 자율주행 기술은 현재도 매우 빠른 속도로 성장하고 있으며, 기술적 완성도와 안정성 역시 하루가 다르게 개선되고 있는 추세다. 이 책에서는 자율주행 차량의 완성을 위한 기술을 구현 관점에서 상세히 다루고 있다. 간단한 개념 설명부터 실제 파이썬 및 각종 라이브러리를 활용한 코딩에 이르기까지 현업 개발자를 목표로 공부하는 사람들에게 입문서와 같은 책이 될 것이다. 이 책을 통해 자율주행 기술 분야에 입문한 수많은 공학도들이 미래 대한민국의 자율주행 산업을 선도할 수 있기를 희망한다. - 김은도 새롭게 출시되는 자동차에서는 자율주행 기술이 빠진 모델을 찾아보기 힘들다. 이는 자율주행차 관련 기술은 우리 삶의 일부가 되고 있음을 의미한다. 이 책은 영상 처리와 신호 처리 기법, 네트워크 프로토콜 등 기본적인 기술 소개부터 최근 화두가 되고 있는 딥러닝을 통한 성능 향상 기법까지 자율주행차를 구성하는 다양한 기술 전반을 실습 예제와 함께 다루고 있다. 자율주행차에 이제 막 관심을 갖기 시작한 학생과 현업에 종사하는 모든 독자들에게 하나의 안내서가 될 이 책을 통해 자율주행 기술이 더 안전한 방향으로 발전되길 희망한다. - 신지호 이 책은 컴퓨터 비전과 딥러닝이 자율주행차량에 어떻게 적용되는지에 대한 심도 있는 탐구내용을 담고 있다. 체계적이고 자세한 설명, 직접 시도해 볼 수 있는 실제 코드를 통해 자율주행차를 개발하는 과정을 경험할 수 있다. 차량에 장착된 카메라의 비디오 스트림을 분석하기 위해 OpenCV, TensorFlow, Keras를 사용하는 법을 배우고, 라이다로 장애물과 위치를 식별하는 방법을 습득한다. 나아가 차선 감지, 보행자 인식, 세그멘테이션 등 자율주행차향의 핵심 도전 과제를 다루게 된다. 이 책은 이론적인 배경뿐만 아니라 실질적인 경험을 제공해 자율주행차량 개발에 필요한 역량을 기르는 데 도움을 줄 것이다. - 박희웅 현대 자율주행차량의 발전에는 컴퓨터 비전과 인공지능 기술이 깊이 관여하고 있다. 이러한 기술을 이해하고 응용하는 것은 자율주행 산업에 입문하는 이들에게는 매우 중요한 역량이다. 이 책은 그러한 역량을 키우기 위한 실용 가이드로서, 시각 인식 기술을 기반으로 자율주행차량의 성능을 향상시키는 방법을 소개하고 있다. 독자들은 이 책을 통해 자율주행차량의 시각 인식 및 제어 기술에 대한 깊이 있는 이해를 얻을 수 있으며, 오픈소스를 활용해 실제 문제를 해결하는 능력을 키울 수 있다. 이 책이 자율주행 산업에 종사하는 모든 이들에게 유용한 지식과 통찰력을 제공하길 바란다. - 이승열 레이다는 자율주행차의 핵심 센서 중 하나로 (주)레이다앤스페이스의 자율주행차에 대한 관심은 2015년부터 시작됐다. 비록 이 책에서는 영상 중심으로 서술돼 있지만 이는 인공지능의 적용분야로서 영상이 가장 적합한 이유이며, 이 책을 통해 자율주행차 산업이 앞으로도 더욱 활성화되기를 다른 옮긴이들과 함께 한마음 한뜻으로 바란다. - 박세진 |