ART185 Optical Digital Culture - Intelligent Machine Vision (4 units)

Jieliang (Rodger) Luo | jieliang@ucsb.edu
George Legrady

Lecture/lab: Tues-Thurs 10:00am-11:50pm Elings Studio 2611
Office Hours: by appointment
Lab Sessions: Tues/Thurs noon-3:00pm, Weds 1pm-4pm

Course Description

An arts-computation studio course focused on programming the behavior of mobile cameras that capture and project images connected to computers. Students will work with an autonomous robotic-camera system assembled in last year’s ART 185GL course. The system consists of 9 mobile-camera robots that autonomously move around in a restricted space continuously capturing and evaluating images, comparing what each robotic camera sees with the others’, resulting in collaborative effort to get greater complex views of a scene-of-interest.

Mobile multi-camera system | Computational collaborations | Deep learning in computer vision
Arts-engineering interdisciplinary collaboration | Arts experimentation

Critical questions
How should the cameras move?
Where should the cameras look, at what?
How to present the visual information the cameras collect?

Technical skills that will be acquired
Programming on Arduino & Raspberry Pi and communications between the two systems
Programming in Python, focusing on OpenCV
Implementing deep learning models on the robots
Basic understanding of reinforcement learning

Course GitHub | Last Year's Course | Student Forum

[wk 1] 04.03

Course Introduction

Introduction to OpenCV | A Brief History of Computer Vision
Anaconda | OpenCV | OpenCV Demos | In-class exercise

Assignment One: Art Research Project Presentation
Google Doc | Demo 1 - Telestron | Demo 2 - Box (Box - Behind the Scenes)

[wk 2] 04.10

Getting familiar with the robots I

Arduino Section
Robotic Chassis | Arduino 1.6.0 | Robotic Chassis Library
Blinking LED Demo | Motor Test Demo | Autonomous Walking Demo | Zumo 32U4 Robot User's Guide

Raspberry Pi Section
Instruction to Access Raspberry Pi | Servo Demo

Getting familiar with the robots II
In-class exercise | Homework

[wk 3] 04.17

Connecting Raspberry Pi and Arduino
Step by Step Instruction of Face-to-Sound Demo

Presentation of the art research project

[wk 4] 04.24

Final Project Proposal
Groups | Requirement

Machine Learning Basics I
Deep Learning Introduction | Setup environments | Image classifier

Machine Learning Basics II
Imitation learning | Reinforcement learning

[wk 5] 05.01

Out of town - Singapore
Working on the proposal

Out of town - Singapore
Working on the proposal

[wk 6] 05.08

Final Project Proposal Presentation

Individual Group Meeting
Discuss the doability of the proposal | Finalize the proposal

Guest Speaker: Sam Green
CNN Visualization

[wk 7] 05.15

Work on the final project

Work on the final project

[wk 8] 05.22

Work on the final project

Work on the final project

[wk 9] 05.29


Work on the final project
Get ready for The End of Year Show

Work on the final project
Get ready for The End of Year Show

Setup for The End of Year Show
Schedule | Floor Plan

[wk 10] 06.05
Final Documentation Presentation

Guest Speaker: Fabian Offert

Grading 10% Attendance & Participation
10% In-class exercises
20% Art Research Project Presentation
20% Proposal Presentation
40% Final Project

The course is designed to accommodate both beginning and advanced students. All students will be expected to perform at the level of their expertise but programming experience is desirable.