블로그 이미지
ska_D

calendar

  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

Notice

'H.264'에 해당되는 글 6

  1. 2010.05.28 논문 Accept
  2. 2009.04.28 New Start
  3. 2009.04.22 Block matching algorithm(1)
  4. 2009.04.21 Scalable Video Coding
  5. 2009.04.20 Project Demonstration(1)
  6. 2009.04.13 Chip Works Fully!
2010.05.28 11:30 Research
작년 7월 IEEE Transactions on Circuits and Systems for Video Technology에 제출한 논문의 최종 결과가 이번주 월요일에 왔습니다. 

"Accept as is"

논문의 제목은 'Activity-Based Motion Estimation Scheme for H.264 Scalable Video Coding' 입니다.

현재 최종본을 제출한 상태고 곧 galley proofs가 오면 최종적으로 publish될 논문의 형태를 볼 수 있겠죠.

거의 11개월에 걸친 결과라 감회가 새롭습니다.

그리고 어제 또다른 논문 하나를 같은 저널에 제출했습니다.
졸업 앞두고 한 편 더 써서 제출하는게 목표인데 가능할지 모르겠습니다. :)




'Research' 카테고리의 다른 글

논문 Accept  (0) 2010.05.28
졸업 심사는  (0) 2010.05.12
Doctoral Thesis  (2) 2010.05.04
Best Design Award  (2) 2009.11.26
SiPS2009 Presentation Photos  (3) 2009.10.23
OpenCV  (0) 2009.10.15
posted by ska_D
2009.04.28 23:20 Research

드디어 논문 writing을 시작합니다.
길고 험난한 길이 되리라 예상되지만, 어머니의 기도가 있음에 큰 힘이 됩니다.

실험은 대부분 끝났으나, 마지막 섹션에 기술한 내용에 필요한 실험을 덜 마친 상태입니다.
결과는 생각보다 좋아서, 잘 쓰면 좋은 논문이 되리라(^^;) 생각됩니다.

IEEE Transactions on Multimedia 혹은 Transactions on Image Processing에 제출하려고 생각중입니다만,
써 봐야 알겠죠.. :)

빨리 써서 submit하고 한시름 놓고 싶네요.
다음학기 proposal과 defense를 모두 하려면 5월에는 제출해야 하는데 걱정입니다.

아자아자아자~!!!!

'Research' 카테고리의 다른 글

ICME2009 in NewYork  (0) 2009.05.12
Subversion  (0) 2009.05.08
New Start  (0) 2009.04.28
Block matching algorithm  (1) 2009.04.22
Scalable Video Coding  (0) 2009.04.21
Project Demonstration  (1) 2009.04.20
posted by ska_D
2009.04.22 16:41 Research

A Block Matching Algorithm (BMA) is a way of locating matching blocks in a sequence of digital video frames for the purposes of motion estimation.

The purpose of a block matching algorithm is to find a matching block from a frame i in some other frame j, which may appear before or after i. This can be used to discover temporal redundancy in the video sequence, increasing the effectiveness of interframe video compression.

Block matching algorithms make use of criteria to determine whether a given block in frame j matches the search block in frame i

위키피디아를 검색하면 BMA에 관해서 위와 같은 설명이 나옵니다.
제가 연구하는 motion estimation에 있어서 핵심과도 같은 존재가 바로 BMA입니다.
현재 macroblock과 가장 잘 matching이 되는 block을 search window안에서 찾고 그에 해당하는 위치를
motion vector로 표현하고 이를 인코딩해서 전달하는 것이죠.

BMA에서 "가장 잘 matching"되는 것을 판단하기 위한 criteria는 보통 SAD (sum of absolute differences) 혹은
SSE (sum of squared error) 를 주로 사용합니다.

중요한 것은 BMA가 ME에서 가장 시간을 맞이 소비하는 부분이므로 이를 빨리 하는 것이 중요합니다.
BMA에는 찾고자 하는 search window의 크기가 시간에 절대적으로 영향을 미치기도 하지만,
BMA 자체의 알고리즘도 중요합니다.

Full-search는 exhaustive하게 찾는... 즉 한 pixel씩 움직이면서 찾는 것인데요. 압축 효율면에서는 우수하지만
시간이 가장 오래 걸리는 알고리즘입니다. (하드웨어의 구현이 용이하기 때문에 대부분의 HW 인코더에서는 FS를
씁니다.)

저는 현재 SVC를 하고 있는데, 하드웨어보다는 소프트웨어를 주로 사용할 예정입니다.
(나중에 후배와 함께  nVidia의 CUDA를 써서 가속하는 것도 생각중입니다만... )
어찌되었든 SVC의 레퍼런스 소프트웨어인 JSVM에는 TZSearch라는 것이 구현되어 있습니다.
이를 사용하면 20~30배 정도 FS 보다 빨라집니다. 하지만 현재 참조할 논문이나 기사를 찾지 못해서 해매다가
JVT에서 표준화에 큰 기여를 한 분께 메일을 보내서 도움을 줄 수 있는 사람을 찾았습니다.
그분께서 TZSearch를 다음과 같이 설명해 주셨습니다.

the block matching algorithm utilizes different search strategies
depending on the location of the best match found so far.
The search starts with a test of some motion vector candidates (Mv's of
surrounding blocks). The best match is chosen as start location for an
initial diamond shaped search which is stopped in case the best match is
located near the start position. If a better match is found farther away
of the initial start position a so called raster search is triggered
that investigates the whole search area testing location with
equidistant interspace.
Finally the location of the best match is used as start position of the
closing refinement search.
자세히 읽어보진 않았습니다. ^^;
현재는 참조할 논문이나 기사에 대해서 알려 달라고 문의 해 놓은 상태입니다.
여기저기 막혀서 논문 진행이 느리네요.

'Research' 카테고리의 다른 글

Subversion  (0) 2009.05.08
New Start  (0) 2009.04.28
Block matching algorithm  (1) 2009.04.22
Scalable Video Coding  (0) 2009.04.21
Project Demonstration  (1) 2009.04.20
Wow, Invited by JSTS  (0) 2009.04.13
posted by ska_D
2009.04.21 17:58 Research

현재 내가 하고 있는 연구는 H.264/AVC에 추가된 표준인 SVC를 지원할 때에, motion estimation을
좀더 빨리 할 수 있도록 가속하는 방법에 관한 연구입니다.
ITU-T와 ISO는 JVT (joint video team)을 구성하고 H.264/AVC 표준을 발표한 이후에 scalable video coding의 기능을 추가적으로 확장하여 Amendment 3를 발표하였습니다.
(다른 포스팅을 보시면… 제가 하는 진짜 연구가 무엇인지 헷갈리실 수 있습니다만…)

Scalable Video Coding (SVC)은 하나의 비트스트림 안에 다양한 특성의 영상을 함께 담을 수 있도록 하는 기술입니다. 예를 들면, 휴대폰, PDA, PC, 그리고 HDTV 는 각각 서로 다른 해상도를 지원합니다. SVC에서는 하나의 스트림안에 여러 해상도의 영상을 함께 담을 수 있습니다. 이때에 각 해상도의 영상을 따로 담은 비트스트림의 bit-rate를 합친 것보다 훨씬 적은 bit-rate를 갖기 때문에 전송량을 효과적으로 줄일 수 있습니다.

이외에도 frame rate 혹은 quality 등도 scalable하게 하나의 스트림에 담을 수 있으므로, 다양한 네트워크 환경과 디바이스를 지원하는데 효과적입니다. 즉 하나의 비트스트림으로 DMB, IPTV 등과 같은 서비스에 모두 쓰일 수 있으므로, SVC는 서비스 제공자(service provider)관점에서는 유지관리가 쉽다는 장점이 있습니다.

다만 여러 해상도의 영상을 한번에 인코딩해야 하므로, 인코딩하는데 필요한 시간이 매우 커진다는 것입니다. 

SVC에는 temporal, spatial, quality scalability가 있습니다. 저는 이 중에서도 spatial scalability를 지원하는 경우에 ME의 시간을 단축하는 알고리즘을 개발하고 있습니다.
ICME 2009에 논문을 제출하여서 accept가 되었습니다. 현재는 이를 바탕으로 journal 논문을 쓰고 있습니다.

연구에 대한 키 아이디어를 포스팅하지는 못해도 간간히 SVC에 대한 소개와 연구와 관련된 이야기를 포스팅하겠습니다.

(그림 출처: http://ip.hhi.de/imagecom_G1/savce/index.htm)

'Research' 카테고리의 다른 글

New Start  (0) 2009.04.28
Block matching algorithm  (1) 2009.04.22
Scalable Video Coding  (0) 2009.04.21
Project Demonstration  (1) 2009.04.20
Wow, Invited by JSTS  (0) 2009.04.13
Nominated to publish Scientific Book Chapter  (0) 2009.04.13
posted by ska_D
TAG H.264, JVT, svc
2009.04.20 10:43 Research

구 정보통신부 과제로 진행된 “고성능 극소형 SiP 기술개발”과 관련해서 과제가 종료되면서
최종 데모를 하게 되었습니다.
같이 일을 하던 후배는 대만에 학회 참석하러 출장가는 바람에 저 혼자 가서 데모해야 하는 판인데…
밖에 비도 오고 짐도 많아서 후배 한명 데리고 가야겠습니다.

저희가 할 데모는 System-in-Package라는 기술을 사용하여 하나의 package 안에 두 개의 die chip을 stacking해서 만든 것입니다. 내용물은 아래와 같습니다.

image

그림과 같이 아래에는 Multimedia Application Processor (MAC)을 놓고 위에는 SDRAM die를 stacking한 다음에 wire bonding을 통해서 두 die를 연결하였습니다.

MAC 안에는 아래 그림과 같이 Xtensa LX라는 프로세서와 H.264 디코더가 내장되어 있습니다.

image

Xtensa는 오디오를 담당하고 VHCORE라는 H.264 하드웨어 디코더(연구실에서 자체 설계)는 비디오를 담당하게 됩니다. 시대의 노래인 소녀시대의 ‘gee’ 뮤직비디오를 데모에 사용할 것입니다. 전체적인 데모 결과는 아래와 같을 것입니다.

image

스피커에서는 노래가 나오고 LCD에서는 저희 VHCORE가 디코딩한 영상이 출력됩니다.

제가 만든 칩을 데모하는 거라서 기분이 좋긴 합니다. 지난 번에 만든 칩은 동작하지 않았는데, 이 칩은 SDRAM까지 정상적으로 동작하는 것을 확인하였습니다. 어쨌든 오늘은 데모하고 쉬어야 겠습니다. :)

'Research' 카테고리의 다른 글

Block matching algorithm  (1) 2009.04.22
Scalable Video Coding  (0) 2009.04.21
Project Demonstration  (1) 2009.04.20
Wow, Invited by JSTS  (0) 2009.04.13
Nominated to publish Scientific Book Chapter  (0) 2009.04.13
Chip Works Fully!  (0) 2009.04.13
posted by ska_D
TAG Gee, H.264, SIP, xtensa
2009.04.13 19:58 Research

090316-0000

지난 금요일 ROM에서 코드가 동작하는 것을 확인하고 집에 갔었다.
오늘 연구실에 나와서 H.264의 동작을 확인하기 위해서
ROM에 H.264 파일을 기록하고 reset 버튼을 눌렀다.

반응이 없는 것이다!… OTL
FPGA 내부를 보기 위해서 ChipScope로 본 결과 H.264 디코더가 
첫 데이터를 읽어간 뒤에 아무런 반응이 없었다.

우리는 Clock 때문인줄 알고 모든 block에 들어가는 clock을 24MHz로
고정시키고 동작을 시켰다.
하지만 동작에는 차이가 없었다. 그런데 ChipScope의 waveform을
보는 순간!
Endian 문제라는 것을 직감할 수 있었다. 그래서 H.264 파일을
다시 ROM에 쓰고 동작시켰다~!!!!

할렐루야~!
위 사진과 같이 foreman 영상이 제대로 디코딩되는 것을 확인하였다.
JTAG으로 xtensa에 코드를 올리는 것은 일단 디버거에 문제가
있는 것 같아서, 아무래도 ROM으로부터 코드를 읽어가도록 해야겠다.

어쨌든 칩의 모든 부분이 동작을 제대로 하는 것을 확인한 것이다.
SDRAM이 동작하리라고는 확신하지 못했는데… 어쨌든 잘된 일이다.

데모를 위해서 소녀시대의 Gee 뮤직비디오를 H.264로 인코딩해서
올릴 예정이다. Xtensa는 Gee mp3를 디코딩하도록 할 것이다~
기대된다~! :)

'Research' 카테고리의 다른 글

Wow, Invited by JSTS  (0) 2009.04.13
Nominated to publish Scientific Book Chapter  (0) 2009.04.13
Chip Works Fully!  (0) 2009.04.13
Cancun, Be there~!  (0) 2009.04.13
ICME 2009! Hoola~  (0) 2009.04.13
My Chip Works!  (0) 2009.04.13
posted by ska_D
prev 1 next