2008-09-16 4 views
6

vb.net/c#를 사용하여 그림 편집 창 양식 응용 프로그램을 작성하고 있습니다. 컴퓨터에 부착 된 디지털 스틸 카메라에서 사진을 캡처해야한다는 클라이언트 요구 사항이 있습니다.vb.net 또는 asp.net 또는 C#을 사용하여 USB 케이블을 통해 내 컴퓨터에 연결된 디지털 카메라에서 사진을 찍는 방법은 무엇입니까?

어떻게하면 Windows 응용 프로그램에서 디지털 스틸 카메라 장치에 연결된 USB에서 사진을 캡처 할 수 있습니까?

답변

5

Windows Image Acquisition Library를 사용하면 카메라의 새로운 사진 이벤트를 캡처하기위한 이벤트가 표시됩니다. 나는 비슷한 요구 조건을 가지고 시험 장비를 썼다. 우리는 지방의 카메라 가게에 갔고, 가지고 있었던 모든 카메라를 시험해 보았다. 이 기능을 지원하는 유일한 카메라는 Nikon D 시리즈 카메라입니다.

대부분의 카메라에서 플러그가 꽂혀있을 때 사진을 찍을 수 없다는 것을 알았습니다. USB 포트에 연결하면 대부분의 카메라가 할 일만하는 모드로 전환됩니다 전송 데이터입니다.카메라가 전혀 작동하지 않는지 알아 보는 빠른 방법은 PC에 카메라를 연결 한 다음 사진을 찍으려고하는 것입니다. 그렇게하면 그렇게 할 수 있습니다. 또한 PTP를 지원해야합니다.

+0

매트 @ Nikon D-Series이 동작을 지원합니까? –

0

일반적으로 카메라는 부착 된 경우 이동식 드라이브로 표시됩니다.

Winforms 응용 프로그램의 경우 사용자가 업로드 할 드라이브와 사진을 선택하게하십시오. 사진의 FileStream이 있으면 처리 할 수 ​​있습니다.

ASP.net에서는 다시 업로드 할 드라이브와 그림을 선택할 수있는 FileUpload 컨트롤이 필요합니다. 이 시간은 HttpRequest.Files 개체의 MemoryStream을 통해 처리됩니다.

희망이 있습니다.

0

이것은 카메라에 따라 다릅니다.

많은 카메라가 단순히 USB 대용량 저장 장치로 탑재됩니다. 이 경우 외장 디스크의 다른 파일처럼 보이는 파일 시스템에서 파일을 복사 할 수 있습니다.

카메라가 이러한 방식으로 내용을 사용할 수 없게되면 카메라 드라이버 설명서를보고 카메라와의 상호 작용 방법을 확인해야합니다.

0

카메라 브랜드에 따라 다릅니다. 다음은 Canon으로 시작하는 링크입니다.

+0

감사합니다. 이 링크는 내가 사용하는 카메라 모델의 SDK를 찾는 데 도움이 될 것입니다. – bugBurger

1

카메라가 연결된 컴퓨터에서 사진을 찍는 동작을 활성화한다고 가정합니다. 그렇다면 먼저 특정 카메라 모델에 대한 API를 검색해야합니다. 나는 카메라 안의 메모리 카드에 접근하는 것 외에 디지털 카메라와 상호 작용하기위한 표준 프로토콜/프레임 워크가 있다고 생각하지 않는다.

2

카메라가 내보내는 인터페이스에 따라 다릅니다. 이것이 표준 대용량 저장 장치 인터페이스라면 표준 파일 인터페이스 만 사용합니다. 즉, 카메라를 이동식 디스크로보고 표준 작성/읽기/쓰기/파일 작업을 사용할 수 있습니다.
많은 새로운 카메라에는 ptp (그림 전송 프로토콜) 인터페이스가 있습니다. 따라서 Windows Image Acquisition API를 사용해야합니다.

다음은 유용 할 수 있습니다. Link. 만약 내가 정확히 이해가 정확히 무엇을 찾고 있습니다 샘플 코드입니다. Google은 귀하의 친구입니다 :)

다른 정보 : 많은 카메라가 대용량 저장 장치와 ptp 인터페이스를 모두 지원하며 카메라 사용자 인터페이스로 선택할 수 있습니다. 자동 모드의 경우 카메라는 아마도 ptp 인터페이스로 전환됩니다.

+0

감사합니다. WIA doc을 읽고 c/C++에 해당 할 수 있습니까? VB.nET, C# – bugBurger