개발자 문서
이 섹션에서 다루는 항목들은 개발자가 Deep Learning 소프트웨어를 통합할 때 도움이 될 것입니다. VisionPro Deep Learning 소프트웨어는 다음 아키텍처에 기초하고 있습니다.
C 또는 .NET 통합
VisionPro Deep Learning은 설치 디렉토리(C:\Program Files\Cognex\VisionPro Deep Learning\3.2\bin)내에 있는 vidi_51.dll이라는 이름으로 C 라이브러리를 제공합니다. 관련된 헤더 파일은 다음 디렉토리에 있습니다.
- C:\Program Files\Cognex\VisionPro Deep Learning\3.2\Develop\include
VisionPro Deep Learning은 편의성과 손쉬운 통합을 위해, C 라이브러리의 모든 메서드를 개체 지향 방식으로 묶은 .NET 라이브러리도 제공합니다. .NET 라이브러리는 NuGet 패키지로 배포되며, 다음 디렉토리에 있습니다.
- C:\ProgramData\Cognex\VisionPro Deep Learning\3.2\Examples\packages
API 참조 설명서는 다음 디렉토리에 있습니다.
- C:\Program Files\Cognex\VisionPro Deep Learning\3.2\Develop\docs
또한, 검토할 수 있는 다수의 사례가 다음 디렉토리에 있습니다.
- C:\ProgramData\Cognex\VisionPro Deep Learning\3.2\Examples
- 위 디렉토리 경로에서 2.0은 VisionPro Deep Learning 소프트웨어 수정판 번호입니다.
- Cognex는 꼭 C 라이브러리를 통합해야 하는 상황이 아니라면 .NET 라이브러리 통합을 적극 권장합니다.
.NET 라이브러리
VisionPro Deep Learning에는 .NET과 라이브러리도 제공됩니다. 또한, 여기에는 VisionPro Deep Learning을 이용해 이미지와 상호 작용하며 이미지에서 작동하기 위해 프로젝트 전체적으로 이용할 수 있는 알고리즘 및 다른 구조에의 액세스가 포함됩니다. 결과 및 이미지와 상호작용하며 이를 표시하는 UI 구성요소 라이브러리도 제공됩니다.
.NET 라이브러리는 다음 위치에 있습니다:
-
C:\Program Files\Cognex\VisionPro Deep Learning\3.2\Cognex Deep Learning Studio
| 라이브러리 | 설명 |
|---|---|
| ViDi.NET.Interfaces.dll | 인터페이스를 갖고 있는 어셈블리. |
| ViDi.NET.Base.dll | 공통 유형을 갖고 있는 어셈블리. |
| ViDi.NET.dll | 인터페이스 구현을 갖고 있는 어셈블리. |
| ViDi.NET.Local.dll | 로컬 C 라이브러리에의 직접 액세스. |
| ViDi.NET.Remote.dll | 서버 / 클라이언트 간 통신을 위한 구현을 포함하는 어셈블리 |
| ViDi.NET.UI.Interfaces.dll | WPF 구성요소의 인터페이스. |
| ViDi.NET.UI.dll | WPF components. |
명령줄
이 섹션에서는 VisionPro Deep Learning 응용 프로그램 실행 시 프로그램에 제공할 수 있는 command line arguments를 다룹니다.
명령을 받을 서비스 응용 프로그램의 이름은 Cognex Deep Learning Studio.exe(IDE application) 또는 VisionPro Deep Learning Service.exe(Deep Learning Client/Server Functionality 이용 시)입니다.
다음 경로는 위 응용 프로그램의 위치입니다:
- C:\Program Files\Cognex\VisionPro Deep Learning\3.2\Cognex Deep Learning Studio\Cognex Deep Learning Studio.exe
- C:\Program Files\Cognex\VisionPro Deep Learning\3.2\Service\VisionPro Deep Learning Service.exe
명령을 내릴 때는 먼저 응용 프로그램 이름을 지정하고 command line arguments를 입력합니다. 예를 들어, 디폴트 트레이닝 워크스페이스 경로를 바꾸려고 한다면 Windows Command Prompt창을 열고 프로그램 파일 디렉토리를 변경합니다, 다음과 같은 명령을 사용합니다:
C:\Program Files\Cognex\VisonPro Deep Learning\3.2\Service>"VisionPro Deep Learning Service.exe" --training-workspace-path=c:\users\username\workspace_store
command를 초기화한 후 Deep Learning GUI에 command를 내리면, GUI 시작 관리자 화면이 표시되며 명령에 대한 응답이 없습니다.
워크스페이스 및 응용 프로그램 Command Line 초기화
VisionPro Deep Learning GUI를 시작할 때 워크스페이스 및 응용 프로그램 초기화를 위해 다수의 command line 인수를 이용할 수 있습니다.
Windows Command Prompt을 이용하여 명령을 해야 하며, Cognex Deep Learning Studio.exe(IDE 애플리케이션)에 대해서는 다음 경로에서 탐색하십시오:
-
C:\Program Files\Cognex\VisionPro Deep Learning\3.2\Cognex Deep Learning Studio
VisionPro Deep Learning Service.exe에 대해서는 다음 경로에서 탐색하십시오(만약 사용자가 Deep Learning Client/Server 기능을 사용하고 있는 경우):
-
C:\Program Files\Cognex\VisionPro Deep Learning\3.2\Service .
명령을 내릴 때는 먼저 응용 프로그램 이름을 지정하고 command line arguments를 입력합니다.
워크스페이스의 경로 및 추가적인 응용 프로그램 관련 명령을 지정하기 위해 다음 command line 인수를 이용할 수 있습니다.
| 명령 | 설명 |
|---|---|
|
--workspace-path=파일 경로 |
워크스페이스를 저장할 디렉토리를 지정합니다. |
|
--auto-save-interval=시간(분 단위) |
워크스페이스의 자동 저장 간격을 지정합니다. 기본값은 5분입니다. 자동 저장을 하지 않으려면 -1로 설정합니다. Note: 자동 저장 기능은 런타임 워크스페이스에는 적용되지 않습니다. 그러므로, --auto-save-internal 명령이 설정되었는데 --runtime-only 명령이 활성화되면, 자동 저장 명령은 무시됩니다.
|
|
--activate-debug-logs=[0 또는 1] |
디버깅 목적의 로깅을 활성화합니다. |
|
--help |
Command line 옵션 목록을 반환하는 데 이용합니다. |
|
--version |
버전 정보를 요청합니다. |
GPU 모드 Command Line 초기화
VisionPro Deep Learning GUI를 시작할 때 라이브러리 초기화를 위해 다수의 command line 인수를 이용할 수 있습니다.
Windows Command Prompt을 이용하여 명령을 해야 하며, Cognex Deep Learning Studio.exe(IDE 애플리케이션)에 대해서는 다음 경로에서 탐색하십시오:
-
C:\Program Files\Cognex\VisionPro Deep Learning\3.2\Cognex Deep Learning Studio
VisionPro Deep Learning Service.exe에 대해서는 다음 경로에서 탐색하십시오(만약 사용자가 Deep Learning Client/Server 기능을 사용하고 있는 경우):
-
C:\Program Files\Cognex\VisionPro Deep Learning\3.2\Service .
명령을 내릴 때는 먼저 응용 프로그램 이름을 지정하고 command line arguments를 입력합니다.
다음 command line 인수를 이용하여 GPU 모드, 이용할 GPU 장치, GPU 메모리의 할당 등을 제어할 수 있습니다.
| 명령 | 설명 | ||||
|---|---|---|---|---|---|
|
--gpu-mode=NoSupport or SingleDevicePerTool |
응용 프로그램이 이용할 GPU 모드를 지정합니다.
Note: GPU 모드에 관한 자세한 내용은 다중 GPU 설정을 참조하십시오.
|
||||
|
--gpu-devices=쉼표로 분리된 GPU의 인덱싱된 목록 |
인덱싱된 목록을 통해, 초기화에 이용될 GPU를 지정합니다. 예: --gpu-devices=0,1 |
||||
|
--optimized-gpu-memory=메모리 크기(MB 단위) |
사전에 할당된, 최적화된 메모리 버퍼의 크기를 지정합니다. 이 설정은 기본적으로 활성화되어 있으며, 기본 크기는 2GB입니다. 이 기능을 비활성화하려면, 먼저 --optimized-gpu-memory-override=1 명령을 내리고 이어서 --optimized-gpu-memory=0 명령을 내리십시오. 기본 설정과 다른 메모리 버퍼 크기를 이용하려면 먼저 --optimized-gpu-memory-override=1 명령을 내리고 이어서 --optimized-gpu-memory=<MB 단위 메모리 크기> 명령을 내리십시오. Note: GPU 메모리 최적화 설정은 기본적으로 활성화됩니다. 기능에 대한 자세한 내용은 GPU 메모리 최적화을 참조하십시오.
|
||||
|
--optimized-gpu-memory-override=[0 또는 1] |
--optimized-gpu-memory 설정 사용 시에는 1로 설정하십시오. 0으로 설정하면 기본 메모리 양이 할당됩니다. |