2012-04-19 4 views
1

소프트웨어 설계에 도움이 필요합니다. 수집을 가져 와서 필터로 보내고 이미지를 한 번에 하나씩 표시하는 카메라가 있다고 가정 해 보겠습니다.획득 축 압기 (소프트웨어 설계)

이제 내가 원하는 것은 두 이미지를 기다린 다음 두 이미지를 필터에 보내고 둘 다 화면에 보냅니다.

나는 두 가지 옵션을 생각해 어떤 것을 선택해야하는지 궁금합니다 : 내 Acquisitioner (또는 무엇이든) 클래스에서 Filterer 클래스로 보내기 전에 두 개의 이미지를 기다리는 대기열을 넣어야합니까? Acquisitionner & Filterer 사이에 Accumulator 클래스를 추가해야합니까?

둘 다 결국 작동하지만 어느 쪽이 더 좋을 것이라고 생각하십니까?

감사합니다.

+1

이미지를 지속적으로 (예 : 고정 속도로) 얻고 있습니까? 이 과정을 반복해야합니까 아니면 한 번만 끝나나요? 필터 처리가 결정적입니까 (시간 기준)? 메모리 제한이 있습니까? 나머지 파이프 라인은 어떻게 작동합니까? 하나의 (정확한) 대답을 내놓기에는 너무 많은 공개 질문이 있습니다. –

답변

0

에 따라 다릅니다. 그러나 대기열에있는 모든 것이 두 번째 이미지를 기다리는 경우, 나는 당신이 Acquisitioner에서 바로 구현할 수 있다고 생각합니다.

다른 한편으로는 추가 기능을 통합하려는 경우 추가 모듈성 및 모든 이점을 활용하면 아주 적은 해를 끼칠 수 있습니다.

나는이 특별한 경우에 그다지 중요하지 않다고 생각합니다.

1

직접 대답을 제공하려면 누산기 정책을 별도의 개체에 구현하십시오. 여기에 이유 : 과거에 유사한 디자인에서 작업

, 나는 그것이 매우 도움이 소스싱크로이 모델에서 서로 다른 '배우'의 생각을 발견했다. 소스 객체는 첨부 된 싱크 객체에 이미지를 생성하거나 출력 할 수 있습니다. 이 시스템의 필터 또는 어큐뮬레이터는 파이프으로 설계됩니다. 즉, 싱크소스의 인터페이스를 모두 구현합니다. 일반 소스, 파이프 및 싱크를 연결하는 메커니즘을 생각해 내면 파이프로 누적 방침을 구현하는 것이 매우 쉽습니다. n 이미지가 수신 될 때마다 n이 홀수 일 경우 해당 값을 유지하고 둘 다 출력합니다 그 중 n이 짝수 인 경우

일단이 시스템을 사용하면 소스 (이미지 파일 판독기, 동영상 디코더, 카메라 캡처 인터페이스), 싱크 (이미지 파일 또는 동영상 인코더, 뷰어 표시 등) 및 파이프 (예 : 필터, 누적 기, 인코더, 멀티플렉서)를 사용할 수 있습니다.

관련 문제