본문 바로가기
컴퓨팅

PictoBlox 사용법 - Part1. 인공지능 확장블럭 사용법

by 배로만쌤(김인영) 2024. 1. 2.

스크래치 오픈소스를 변형한 여러가지 코딩도구가 있는데 본 시리즈에서는 픽토블록에 대한 사용법을 간략히 정리하겠습니다.

시작하기전에 픽토블록에 대해 간략히 설명하자면 

첫번째로, 스크래치 오픈 소스를 변형하여 아두이노와 마이크로비트, ESP32등의 오픈하드웨어를 지원하는 코딩도구입니다. 

두번째로는 인공지능 확장블럭을 쓸 수 있는 있어  다양한 머신러닝 기능이 있는 것이 특징입니다.

Makeblock사의 mBlock과 유사하게 동작하는 코딩도구입니다.

특히, mBlock과 다르게 로그인하지 않아도 인공지능 확장블럭들을 사용할 수 있습니다.

자, 그럼 픽토블럭에 대해 알아봅시다.

엣지브라우저에 “PictoBlox 사용법”이라고 치면 뱅챗봇이 아래와 같이 설명을 요약하고 기본 학습 링크를 표시해줍니다.

—----------------------

PictoBlox는 시각적 프로그래밍 플랫폼으로, 상호작용적이고 매력적인 활동을 통해 프로그래밍 개념을 가르치고 학습하는 데 사용됩니다1

PictoBlox의 주목할만한 기능 중 하나는 로봇과의 통합입니다. 

코딩과 로봇을 결합하여 사용자는 자동화 및 전자공학의 흥미로운 세계를 탐색하며, 학습에 대한 실제적인 접근 방식을 촉진할 수 있습니다12

PictoBlox를 사용하는 방법에 대한 자세한 내용은 아래 링크를 참조하세요:

1: https://www.youtube.com/watch?v=GvovekjWU58 

2: https://pictoblox.ai/

—------------------------

그 다음 구글 검색에서  “PictoBlox 위키” 라고 타이핑하니 리얼리AI 교육(Homepage - Really AI Education)이라는 사이트가 제일 앞에 나옵니다. 링크를 타고 들어가보니 강의 동영상들이 여러개 있습니다.

PictoBlox: 소개 - Really AI Education

위 소개 사이트에서 영상과 함께 픽토블록으로 프로그래밍 학습하는 것을 설명하고 있습니다. 유튜브 영상은 영어로 설명하고 있으니 한글자막을 설정하여 들으시면 좋을 듯합니다.

PictoBlox - Python and Block-Based AI Programming Software for Kids (thestempedia.com)

위 링크가 픽토블록의 대표 링크인 것 같습니다. 더스템피디아닷컴 사이트에서 픽토블럭 설치파일을 받아서 설치하여 사용할 수 있습니다.

그리고 아래 링크는 웹에서 프로그래밍을 할 수 있습니다. 마치 MIT 스크래치3.0 사이트와 유사하게 말입니다.

PictoBlox: Learn coding and program robots online

위와 같은 화면에서 우측상단 지구본 모양을 클릭하여 한국어 설정을 할 수 있습니다. 많은 언어를 지원하네요.

그리고 상단메뉴에서 “보드”를 선택하면 아래 그림2와 같이 지원하는 하드웨어를 선택할 수 있습니다.

최상단에 “evive”, “쿼키”, “Wizbot”등과 같은 하드웨어가 아마도 픽토블록이 중점적으로 지원하는 하드웨어 인 듯합니다.

본 글에서는 기본적으로 인공지능 확장블럭에 대해서 알아볼 것입니다. 

그리고 나서 아두이노와 마이크로비트, ESP32보드에서의 사용성을 확인하려 합니다.

<그림2. 지원 하드웨어> 

기본적으로 얼굴감지, 객체감지, 인체감지, 머신러닝, 컴퓨터비전, 텍스트인식, 음성인식, 자연어처리, 카드인식, 인공지능, ChatGPT(알파) 등 많은 인공지능 확장기능이 있습니다.

Face Detection – Confidence (Block Coding) - Example Project (thestempedia.com)

위 링크에서 얼굴감지 샘플코드를 다운받아서 실행해 봤습니다.

  1. 우선 위 링크에서 샘플코드를 다운받습니다.
  2. 다운로드 폴더에 저장하고 아래와 같이 메뉴에서 파일 “열기”를 합니다.

<그림3> 파일 열기 메뉴

  1. 열기를 누르면 그림4와 같은 화면이 나오는데 여기에서 우측상단에 표시한 모니터 모양의 아이콘을 눌러여 파일탐색기 화면이 팝업으로 나타나서 소스 파일을 선택합니다.

<그림4> 파일 열기 화면2

  1. 파일을 불러오고 실행하면 임계값의 변화에 따라 사진에서 얼굴갯수를 카운트 하는 프로그램이라는 것을 확인할 수 있습니다.

<그림5> 소스 불러온 화면

 

이번에는 파이썬 샘플코드를 아래 링크에서 받습니다.

Face Detection - Camera (Python) - Example Project (thestempedia.com)

파일을 열어보면 파이썬 환경으로 아래 그림5처럼 배치됩니다.

<그림5> 얼굴인식 파이썬 화면

위의 그림에서 좌측아래 창에서 실행 버튼을 누리면 파이썬 코드가 실행됩니다.

컴퓨터의 카메라가 정상적으로 작동한다면 아래 그림 6과 같이 사용자의 얼굴이 뜨고 얼굴의 표정을 말풍선으로 표시해줍니다.

나름 웃는 표정을 지으니 “행복”이라는 감정을 표시하네요.

sprite = Sprite('Square Box')

import time

fd = FaceDetection()

 

fd.video("on", 0)

 

# Enable Bounding Box on the stage

fd.enablebox()

 

# Set Theshold of the stage

fd.setthreshold(0.5)

 

while True:

  fd.analysestage()

 

  for i in range(fd.count()):

    sprite.setx(fd.x(i + 1))

    sprite.sety(fd.y(i + 1))

    sprite.setsize(fd.width(i + 1))

    sprite.say(fd.expression(i + 1))

위와 같은 소스인데 카메라 이미지에서 여러 개의 얼굴의 표정을 동시에 감지할 수 있게 하는 샘플코드입니다.

위의 파이썬 코드를 블럭 코딩으로 바꾸어 보았습니다. 아래 그림6의 블럭코드를 참고하세요.

<그림 6. 얼굴표정 인식 블럭코드>

맛보기로 얼굴인식 확장블럭만 실행해보았습니다.

확장블럭의 사용법은 아래 링크에서 확인하시면 될 것 같습니다.

PictoBlox Extensions - Documentation, Blocks, Python Functions & Examples (thestempedia.com)

다음 글에는 본격적으로 마이크로비트, 아두이노,  ESP32 보드의 사용법을 알아보도록 하겠습니다.

 

<주> 참고 링크 정리

PictoBlox: Learn coding and program robots online

온라인 프로그래밍 과정(10세 이상) - 어린이를 위한 스크래치 프로그래밍 - STEMpedia (reallyai.net)

PictoBlox - Python and Block-Based AI Programming Software for Kids (thestempedia.com)

PictoBlox Extensions - Documentation, Blocks, Python Functions & Examples (thestempedia.com)

 

댓글