I. 영상 처리 인공지능

1-1-1 인공지능 응용 프로그램과 에이전트

인공지능이 무엇인지, 기존 프로그램과 무엇이 다른지, 스스로 판단해 움직이는 에이전트가 무엇으로 이루어지는지 알아봐요.

성취기준
[12인피01-01]
소요 시간
50분
준비물
따로 준비할 것 없음
난이도
쉬움
교과서
008~012쪽

성취기준은 인천광역시교육청 승인 교육과정의 코드이고, 차시와의 연결은 사이트가 붙였어요.

학습목표

  • 인공지능이 무엇인지 알고, 사람의 지능과 무엇이 닮았는지 설명할 수 있어요.
  • 인공지능 응용 프로그램과 기존 응용 프로그램의 차이를 설명할 수 있어요.
  • 인공지능 에이전트가 무엇이고 어떤 구성 요소로 이루어지는지 설명할 수 있어요.

왜 배울까

스마트폰 음성 비서는 내 말을 알아듣고 알맞은 정보를 찾아 줘요. 온라인 쇼핑몰은 구매 기록을 분석해 관심 있을 만한 상품을 추천해요. 이런 프로그램에는 모두 인공지능이 들어 있어요.

인공지능 프로그램이 기존 프로그램과 어떻게 다른지 알면, 이 단원에서 만들 영상 인식 프로그램이 무엇을 스스로 판단하는지 이해하기 쉬워요.

핵심 개념

인공지능과 사람의 지능

인공지능(AI, Artificial Intelligence)은 사람처럼 주변을 알아차리고, 새로운 정보를 배우고, 상황을 판단해 문제를 푸는 컴퓨터 시스템이에요. 사람의 지능은 인식, 학습, 추론이라는 세 가지 핵심 요소로 이루어져 있어요. 인공지능은 이 세 요소를 컴퓨터 기술로 흉내 내요.

요소인공지능 예시
인식주변의 자극을 알아차리고 받아들이는 능력스마트폰에 대고 말하는 학생 그림 음성 인식 인공지능이 사용자의 말을 알아들어요.
학습데이터에서 패턴을 익혀 새로운 경우에도 쓸 수 있게 하는 능력강아지와 고양이 그림을 보고 배운 인공지능이 새 그림을 강아지와 고양이로 나누는 그림 강아지와 고양이를 구별하도록 배운 인공지능이 사진을 나눠요.
추론배운 것을 바탕으로 상황을 분석해 알맞은 결정을 내리는 능력도로 상황을 살피며 달리는 자율주행 자동차 그림 자율주행 자동차가 도로 상황을 분석해 갈 길을 골라요.

패턴(Pattern)은 여러 데이터에서 되풀이해 나타나는 규칙적인 모양이나 구조예요. 패턴을 찾으면 복잡한 정보를 쉽게 이해하고 앞일을 예측할 수 있어요.

기존 응용 프로그램과 인공지능 응용 프로그램

인공지능 응용 프로그램은 인공지능 기술로 문제를 풀거나 일을 하도록 만든 소프트웨어예요. 같은 일을 하는 프로그램이라도 기존 프로그램과 일하는 방식이 달라요.

구분기존 응용 프로그램인공지능 응용 프로그램
작동 방식개발자가 미리 정한 규칙(날짜, 파일 이름, 위치 등)을 따라요.데이터를 스스로 배우고 분석해서 작동해요.
처리 방식사용자가 정한 조건에 맞춰 분류하거나 정렬해요.데이터의 정보를 자동으로 분석해 분류해요.
대응 능력새로운 기준이나 상황에는 잘 대처하지 못해요.따로 지시하지 않아도 데이터를 이해하고 처리해요.
예시사진을 날짜별로만 정렬해요.비슷한 사진을 자동으로 묶어 정리해요.

기존 프로그램이 레시피를 그대로 따르는 요리사라면, 인공지능 프로그램은 재료를 보고 알맞은 요리를 스스로 정하는 요리사예요.

에이전트

에이전트는 주변 환경을 관찰하고, 그 정보로 행동을 정해 목표를 이루려는 시스템이에요. 인공지능 에이전트는 사람이 하나하나 시키지 않아도 스스로 판단하고 움직여요. 로봇이나 사물 인터넷(IoT) 기기가 대표적인 예예요.

에이전트는 다섯 가지 구성 요소로 이루어져 있어요. 자율주행 자동차를 예로 들어 볼게요.

구성 요소하는 일자율주행 자동차의 예
목표모든 판단과 행동의 기준이 되는 목적안전하게 목적지까지 가기
환경에이전트가 데이터를 얻고 영향을 주는 바깥 세계도로, 교통 신호, 다른 차량, 보행자
센서환경에서 데이터를 모으는 장치나 프로그램카메라, 가속도 센서, 라이다
지능적 처리모은 데이터를 분석하고 상황을 판단해 행동을 계획하는 핵심 기능직진·회전, 가속·감속, 경로 정하기
액추에이터결정한 내용을 실제 행동으로 바꿔 환경에 영향을 주는 장치나 프로그램핸들, 가속 페달·브레이크, 전조등, 와이퍼

라이다(LiDAR)는 레이저 빛으로 주변 물체까지의 거리를 재서 3차원 지도를 만드는 센서예요.

구분일반 프로그램인공지능 에이전트
스스로 움직이나요?사용자가 입력해야 움직여요.스스로 판단하고 행동해요.
언제까지 도나요?맡은 작업을 마치면 끝나요.뒤에서 계속 실행돼요.
무엇을 하나요?사용자가 시킨 작업을 해요.상황에 맞춰 알아서 대응해요.
예시웹 브라우저, 워드 프로세서, 게임바이러스 백신, 챗봇, 로봇, 사물 인터넷 기기

따라하기

카메라 없이 해 보는 체험이에요. 사진 6장을 두 가지 방법으로 정리하는 코드를 읽고, 결과를 먼저 예상해 보세요.

따라하기 예제규칙대로 정렬하기와 예시에서 배워 묶기examples/vision/u1/1-1-1-sort-vs-group.py
# 1-1-1 체험: 규칙대로 정렬하기와 예시에서 배워 묶기를 비교해요.
# 카메라가 없어도 돼요. 사진 대신 사진에서 뽑은 숫자(파란색·초록색이 차지하는 비율)를 써요.

# ① 사진 정보: (이름, 찍은 날짜, 파란색 비율 %, 초록색 비율 %)
photos = [
    ("사진1", "2026-03-14", 72, 18),
    ("사진2", "2026-05-02", 15, 70),
    ("사진3", "2026-04-20", 65, 25),
    ("사진4", "2026-03-30", 20, 64),
    ("사진5", "2026-06-11", 58, 30),
    ("사진6", "2026-05-27", 25, 55),
]

# ② 기존 프로그램: 사람이 정한 규칙(날짜가 빠른 순서)대로만 정렬해요.
print("[규칙 기반] 날짜순 정렬")
for name, date, blue, green in sorted(photos, key=lambda photo: photo[1]):
    print(" ", date, name)

# ③ 학습: 이름표가 붙은 예시 사진을 보고, 묶음마다 평균 색을 계산해요.
examples = {
    "바다": [(80, 10), (70, 20)],  # 바다 사진 예시 2장의 (파란색, 초록색)
    "숲": [(10, 80), (20, 70)],  # 숲 사진 예시 2장의 (파란색, 초록색)
}
centers = {}
for label, colors in examples.items():
    blue_average = sum(color[0] for color in colors) / len(colors)  # 파란색 평균
    green_average = sum(color[1] for color in colors) / len(colors)  # 초록색 평균
    centers[label] = (blue_average, green_average)
print("[학습] 묶음별 평균 색:", centers)

# ④ 추론: 사진마다 평균 색과의 차이를 재서, 더 가까운 묶음에 넣어요.
print("[학습 기반] 비슷한 사진끼리 묶기")
for name, date, blue, green in photos:
    best_label = None
    best_gap = None
    for label, (center_blue, center_green) in centers.items():
        gap = abs(blue - center_blue) + abs(green - center_green)  # 색 차이의 합
        if best_gap is None or gap < best_gap:
            best_label = label
            best_gap = gap
    print(" ", name, "→", best_label)
실습실에서 열기(준비 중)

실습실은 아직 만들고 있어요. 지금은 코드를 한 줄씩 읽어 보고, 실습실이 생기면 이 자리에서 바로 실행해요.

코드를 실행하면 이렇게 나와요.

[규칙 기반] 날짜순 정렬
  2026-03-14 사진1
  2026-03-30 사진4
  2026-04-20 사진3
  2026-05-02 사진2
  2026-05-27 사진6
  2026-06-11 사진5
[학습] 묶음별 평균 색: {'바다': (75.0, 15.0), '숲': (15.0, 75.0)}
[학습 기반] 비슷한 사진끼리 묶기
  사진1 → 바다
  사진2 → 숲
  사진3 → 바다
  사진4 → 숲
  사진5 → 바다
  사진6 → 숲

왜 이런 결과가 나올까?

②는 사람이 정한 규칙(날짜)만 봐요. 그래서 바다 사진인지 숲 사진인지는 따지지 않고 날짜 순서로만 늘어놓아요.

③은 이름표가 붙은 예시 사진에서 “바다는 파란색이 많고, 숲은 초록색이 많다”는 기준을 숫자로 배워요. ④는 사진마다 그 기준에 더 가까운 쪽으로 묶어요. 데이터에서 기준을 찾는 것이 학습이고, 배운 기준으로 판단하는 것이 추론이에요.

바꿔보기

바꿔 보기

  1. 사진5의 날짜를 "2026-03-01"로 바꿔 보세요. 규칙 기반 정렬에서 사진5는 몇 번째로 나올까요? 묶기 결과도 달라질까요?
  2. 바다 예시 사진 두 장의 숫자를 (40, 50)(45, 45)로 바꿔 보세요. 어떤 사진의 묶음이 달라지고, 왜 그럴까요?
  3. photos에 파란색과 초록색이 반반인 ("사진7", "2026-07-01", 45, 45)를 넣어 보세요. 어느 묶음에 들어갈지 먼저 예상한 뒤 실행해 보세요.

도전 과제

도전 과제: 우리 주변 에이전트 분석하기

학교나 집에서 볼 수 있는 에이전트를 하나 골라요. 로봇 청소기나 챗봇이 좋은 예예요. 목표, 환경, 센서, 지능적 처리, 액추에이터를 표로 정리해 보세요.

힌트 보기

로봇 청소기라면 목표는 “집 안 바닥을 깨끗하게 하기”예요. 부딪힌 것을 알아채는 장치가 센서이고, 바퀴와 솔이 액추에이터예요.

확인 퀴즈

오늘 배운 내용을 세 문제로 확인해 보세요.

보기를 고르고 [답 확인하기]를 눌러요. 키보드로는 방향키로 보기를 고르고 Tab으로 단추에 가요.

  1. 문제 1. 인간 지능의 세 가지 핵심 요소 가운데, 데이터에서 반복되는 규칙(패턴)을 익혀 새로운 경우에도 쓸 수 있게 하는 능력은 무엇일까요?
    정답과 풀이 보기

    정답: ② 학습

    학습은 데이터에서 패턴을 익히는 능력이에요. 인식은 주변의 자극을 받아들이는 능력이고, 추론은 배운 것을 바탕으로 결정을 내리는 능력이에요.

  2. 문제 2. 다음 가운데 인공지능 응용 프로그램이 하는 일로 알맞은 것은 무엇일까요?
    정답과 풀이 보기

    정답: ② 비슷한 사진을 스스로 찾아 묶어 정리해요.

    날짜나 파일 이름 순서로 정렬하는 것은 개발자가 미리 정한 규칙을 따르는 기존 프로그램이에요. 인공지능 응용 프로그램은 데이터를 분석해 비슷한 것끼리 스스로 묶어요.

  3. 문제 3. 자율주행 자동차를 에이전트로 볼 때, 핸들과 브레이크는 어떤 구성 요소일까요?
    정답과 풀이 보기

    정답: ② 액추에이터

    액추에이터는 에이전트가 결정한 내용을 실제 행동으로 바꾸는 장치예요. 카메라와 라이다는 센서, 도로와 다른 차량은 환경, 안전하게 목적지까지 가는 것은 목표예요.

교사용

교사용 안내

지도안 요약(50분, 사이트가 제안하는 흐름)

  1. 도입(5분): 스마트폰 음성 비서나 추천 서비스를 써 본 경험을 나눠요.
  2. 전개 1(15분): 인공지능의 뜻과 인식·학습·추론 표를 함께 읽어요.
  3. 전개 2(15분): 기존 프로그램과 인공지능 프로그램을 비교하고, 따라하기 예제에서 ②와 ③·④의 결과를 견줘요.
  4. 전개 3(10분): 자율주행 자동차 표로 에이전트 구성 요소를 정리해요.
  5. 정리(5분): 확인 퀴즈를 풀고 아래 자기 평가 문항으로 스스로 점검해요.

평가 포인트(원고의 자기 평가 문항)

  • 인공지능의 개념을 이해하고, 인간 지능과의 차이를 설명할 수 있는가?
  • 인공지능 응용 프로그램과 기존 응용 프로그램의 차이를 설명할 수 있는가?
  • 인공지능 에이전트의 개념과 주요 구성 요소를 이해하고 설명할 수 있는가?

자주 막히는 곳

  • 인식과 추론을 헷갈려요. “받아들이기(인식) → 배우기(학습) → 결정하기(추론)” 순서로 짚어 주세요.
  • 에이전트를 로봇만으로 생각해요. 원고 표처럼 바이러스 백신이나 챗봇 같은 소프트웨어도 에이전트예요.
  • 바꿔보기 3번의 사진7은 두 묶음과의 색 차이가 60으로 같아요. 코드가 먼저 비교한 “바다”가 남는 까닭을 함께 살펴보세요.

원고와 자료

  • 교과서 원고 008~012쪽(학습 목표, 본문, 학습 활동, 자기 평가)을 차시 틀에 맞게 옮기고 문장을 다듬었어요. 원고 파일은 올리지 않아요.
  • 원고 비교표의 “동일 인물의 사진을 자동으로 묶어 정리” 예시는 얼굴로 사람을 알아보는 활동을 넣지 않는 사이트 원칙에 따라 “비슷한 사진 묶기”로 바꿨어요.
  • 따라하기 예제는 원고에 없어서 사이트가 새로 만든 체험이에요. 핵심 개념 표의 그림 3장은 원고 009쪽 삽화인데, 출판사가 조판할 때 넣은 삽화라 권리 귀속이 확인될 때까지 출처와 라이선스 페이지의 제3자 자료로 두었어요(사이트 라이선스로 다시 쓸 수 없어요). 도전 과제는 원고 012쪽 학습 활동 2번을 옮겼어요.