U E D R , A S I H C RSS

캠이랑놀자/051228

캠이랑놀자/051228

참가자

석천 보창 아영

배운거

Python 기본 문법 - hand-on python

~python
>>> x=10
>>> print x
10
>>> x=20
>>> print x
20
~python
>>> 20+30
50
>>> s=_
>>> s
50

range, for-in
~python
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(3,6)
[3,4,5]
>>> for i in range(5):
...           print i
1
2
3
4
5

for-in, list
~python
>>> s=[1,2,3,4]
>>> for i in s:
...         print i
1
2
3
4

조건문
~python
if x==0:
    print x
else:
    print x+10

함수
~python
def fact(n):
     if n==0: return 1
     return n*fact(n-1)

Python Image Processing

Using PIL

이미지 로딩

~cpp
import Image
im = Image.open("lena.gif")
im.size

간단 필터 구현

whitening

~cpp
import Image
im = Image.open("lena.gif")
for x in range(256):
         for y in range(256):
                 im.putpixel((x,y), im.getpixel ((x,y)) + 30 )
im.show()

darkening

~cpp
import Image
im = Image.open("lena.gif")
for x in range(256):
         for y in range(256):
                 im.putpixel((x,y), im.getpixel ((x,y)) - 30 )
im.show()

mirror


overlap (blending)


후기

세미나 준비와 관련하여, 추상적인 말을 줄이면서 사람들이 실제 결과를 가지고 이야기할 수 있도록 하는데 촛점 맞추기. 그러다가 종종 PIL 을 써서 프로토타이핑 하던게 생각나서 Python + PIL 로 진행.

1시간 만에 실제로 코드를 돌리고 이미지 처리를 하고 실제로 동작하는 과정을 사람들이 hand-out 으로 해보면서 효율적으로 익히게 할 방법은 python 아니면 matlab 밖에 없을 것 같은 느낌. 준비하면서도 느낌이 웬지 좋았다.

세미나를 준비하는 입장으로서, 앞으로도 계속 hand-out + 군더더기 적은 핵심적인 이론 설명을 목표로 잡아야겠다고 생각. --1002

----
hand-out으로 한다는 게 무슨 말인지? 뭔가 사람들에게 인쇄물을 나눠주고 그걸 따라가게 해보는 건가? --JuNe
hand-out 이면 유인물인가요~? (hand-on 을 잘못 쓴 느낌이;) 정확히 어떻게 진행했냐면, 개념을 설명하고, 인터프리터로 사람들 앞에서 시연을 했고, 사람들이 관찰을 했고, 그 다음 알고리즘 별로 사람들이 파이썬 인터프리터로 해당 필터 구현을 진행했습니다. 필터 구현방법에 대해서는 구체적인 답을 주진 않았으나, 중간에 간단한 힌트를 주었습니다. --1002
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-05-27 07:09:19
Processing time 0.0949 sec