2012-12-18 2 views
3

와 리눅스에서 응용 프로그램 (USB 또는 기타)를 사용하고 기능을 사용하십시오 (사진 촬영, 비디오 녹화, 줌, 포커스 등). 현재 의도 된 플랫폼은 Linux입니다.닿는 카메라 난 당신이 컴퓨터에 카메라를 연결 할 수 있도록, 디지털 비디오/스틸 카메라 (DSLR 이외의 소비자 카메라) 닿는 동작을 제공하는 프로그램을하고 싶습니다 C++

는 지금까지 내가 아는 한, 어떤 제조업체는하지만 자신의 DSLR에 대한, (캐논, 올림푸스, 니콘를) 할 수있는 몇 가지를 제외하고, 제품에 대한 SDK를 제공하지 않습니다.

나는 C에 새로운 아니에요 ++ 그러나 나는 많은 프로젝트에 참여하지 않았습니다. 그러나 OpenCV에 완전히 익숙하지 않아이 라이브러리의 기능을 아직 알지 못합니다. opencv 빌드 및 구성을 테스트하기 위해 웹캠에서 스트림을 가져 와서 양식에 표시하는 간단한 응용 프로그램을 만들었습니다. (사용 cvCreateCameraCapture)

겠습니까 디지털 카메라 나 캠코더로이 작품? 나는 그들이 "웹캠 모드"를 사용할 수 있어야한다고 생각한다. 그러나 그렇게 흔하지는 않다. (적어도 캠코더에는 없다.) Firewire는 어떤가요 아니면 다른 HD 지원 커넥터가 있습니까? 그들은 OpenCV에서 알아볼 수 있습니까? 가능하면 HDMI에서 멀리 떨어져 장치를 캡처하고 싶습니다 (추가 비용).

그럼 내 경험에 비추어 볼 때, 다음과 같은 프로젝트를 경험 한 사람이라면 무엇이 좋을까? 그런 용도로 선호되는 카메라 사양은 무엇일까요? 그리고 내 문제를 완화하기 위해 사용할 수있는 라이브러리가 있습니까 :)

libgphoto2도 찾고 있습니다. 그리고 필요하다면, 가능한 경우 libusb를 사용하여 카메라 드라이버를 작성하는 것과 같은 것을 시도 할 것이지만 솔직히 어디서부터 시작해야할지 몰라요. USB 포트 (기본 드라이버 포함)를 스니핑하면 나중에 해당 정보를 어떻게 처리해야합니까?

누군가가 그 주제에 대해서도 밝힐 수 있다면 매우 감사 할 것입니다. 시작하는 방법, 드라이버 소프트웨어 작성시 추천 할만한 좋은 책은 무엇입니까?

또한 Linux Kino는 비슷한 기능을 제공하므로 소스를 확인할 수 있지만 IEEE 1394에만 해당됩니까?

마지막 질문은 USB를 통해 연결된 카메라를 컴퓨터 시작시 자동으로 시작한다는 것입니다.

긴 게시물에 대한 죄송합니다

,

당신과 최상의 소원을 주셔서 감사합니다! Matekk

답변

3

this처럼, 그것을 위해 udev 규칙을 추가 USB-conneected 장치와 함께 이야기하는 프로그램을 시작합니다. 당신은 예와 같이 ATTR{device}ATTR{vendor}하지 KERNEL를 사용할 수 있습니다.

카메라 자체에 관해서는, older Canon P&S camerastethered shooting 할 수 있습니다. 일부는 gphoto으로 지원됩니다. 카메라에 대한 Linux 지원이 없지만 다른 OS에서 테 더링이 가능하다면 지원을 리버스 엔지니어링해야합니다.예. 제공된 소프트웨어에서 명령을 내리고 USB 포트를 스니핑하고 메시지 형식을 알아 내고 libusb2를 통해 프로그램 쓰기/읽기 메시지를 작성하거나 libgphoto2에 지원을 추가하십시오.

또 다른 가능성은 안드로이드 기반 카메라입니다 (전화기가 아니지만 진짜 P & S). Nikon과 Samsung은이 두 가지를 만듭니다. 아마도 리버스 엔지니어링 할 필요는 없지만 카메라 용 Android 앱을 작성해야 할 수 있습니다. 거기 밖으로 할 수 있지만 와이파이/3G를 통해 작업을 할 수있는 몇 가지 애플 리케이션이 있습니다, 그래서 이것은 USB도 가능해야합니다.

+0

안녕하세요, 회신을 위해 tnx 여기에 좋은 제안이 있습니다. 나는 udev에 대해 몰랐고, 분명히 더 많이 체크 아웃 할 것입니다, 여기 유용하게 보인다! 안드로이드 기반 카메라는 좋은 생각이지만, 단 하나의 삼성과 하나의 니콘 모델을 사용할 수 있다는 것을 알았고 두 가지 모두 현재 나를위한 최고의 선택 인 캐논 EOS 1100D의 비용을 초과합니다. 비록 내가 바라는 것보다 더 비싸지 만 윈도우와 맥 OS에 테 더링과 SDK가 있지만, 내가 느끼는 몇 가지 물건을 냄새 맡을 수 있어야한다.). 게다가 이미 gphoto lib에서 지원됩니다! – Matekk

+0

또한 PC를 통해 카메라의 전원을 켜거나 끌 수 있습니까? 부팅 프로그램과 같은 소프트웨어로이 문제를 해결할 수 있습니까? 아니면 전자 해킹을 조사해야합니까? :) – Matekk

+0

라이브 HD 비디오 스트림을 캡처하려는 경우 DSLR 또는 캠코더로 캡처 장치가 필요합니다. 스틸은 USB 만 있으면됩니다. 실시간 미리보기 (Full HD 화질이 아닌)도 USB를 통해 스트리밍 할 수 있습니다. 나는이 물건을 리버스 엔지니어링하는 것이 얼마나 어려울 지 전혀 모른다. 전원 켜기/끄기와 관련하여 DSLR은 기계적 온/오프 스위치가있는 경향이 있으므로 전자 장치 및/또는 기계 해킹을해야 할 것입니다. –