Settings Selector based on Capture Speed
이 섹션에서는 각 획득을 트리거한 시점부터 포인트 클라우드를 얻을 때까지의 시간 예산을 기반으로 최상의 카메라 설정에 대한 자세한 지침을 제공합니다. 여기서는 데이터 전송 및 포인트 클라우드 처리도 PC 사양에 따라 달라지기 때문에 PC 사양도 고려합니다. 좋은 포인트 클라우드를 얻기 위한 3D 캡처 설정과 좋은 컬러 이미지를 얻기 위한 2D 캡처 설정을 다룹니다.
Piece Picking 애플리케이션에 사용할 Zivid 카메라를 결정하고 올바르게 장착하고 배치했습니다. 다음 단계는 주어진 PC 사양에 따라 주기 시간 요구 사항을 충족하는 카메라 설정을 선택하는 것입니다. 아직 PC가 없는 경우 이 섹션에서는 사용된 설정과 함께 캡처 시간 요구 사항을 충족하는 PC 사양을 찾는 방법도 설명합니다.
3D settings
장면 복잡도에 따라 Piece Picking 애플리케이션을 두 가지 범주로 나누었습니다. 각 범주에 대해 주어진 이미징 요구 사항 및 캡처 속도 요구 사항을 충족하는 설정을 지정하고 권장합니다.
Consumer Goods
장면이 매우 밝고 반짝이는 어두운 개체로 구성되지 않은 경우 Piece Picking에 대해 Fast settings을 선택하여 주기 시간을 상당히 절약할 수 있습니다. Fast settings은 더 좁은 다이내믹 레인지를 커버하지만 더 빠른 캡처를 제공합니다. 다음은 Fast settings이 잘 작동하는 장면의 예입니다. 보시다시피 강한 직접 반사, 하이라이트 및 채도를 유발하는 항목이 없으며 매우 어두운 항목이 없습니다.
참고
장면에 밝고 반짝이는 어두운 항목이 없으면 Fast settings을 선택합니다.
소비재에 대한 Quality settings을 통해 카메라는 상당히 넓은 다이나믹 레인지를 커버하여 다양한 물체에 적합한 포인트 클라우드를 제공합니다. 이 경우 장면에는 밝고 반사되는 플라스틱으로 포장된 물체와 폴리백에 들어 있는 품목부터 어두운 흡수성 재료에 이르기까지 모든 것이 포함될 수 있습니다. 아래 이미지는 Quality settings이 필요한 전형적인 복잡한 소비재 장면을 보여줍니다.
참고
카메라가 아무것도 놓치지 않도록 하려면 Quality settings을 선택하십시오.
Settings Selector Table
다음 표는 필요한 캡처 시간 예산에 따른 설정 선택기 도구를 나타냅니다. 동일한 표는 캡처 속도 요구 사항을 충족할 수 있는 PC의 성능과 비용을 나타냅니다. High-End, Mid-End 및 Low-End 구성의 예를 보려면 Recommended Industrial PCs 를 확인하십시오.
Application |
Capture Time (2D + 3D) |
Camera Settings |
||
---|---|---|---|---|
High-End PC |
Mid-End PC |
Low-End PC |
||
Consumer Goods (Quality) |
~1000 ms |
~1250 ms |
~1500 ms |
|
Consumer Goods (Fast) |
~500 ms |
~750 ms |
~1000 ms |
|
원하는 설정 파일을 다운로드하려면 Zivid Studio에서 카메라(특정 모델)에 연결하고 Presets을 선택한 다음 주변광 적응을 켜고 설정을 내보냅니다. 주변 조명 주파수에 맞게 조정된 설정을 사용하면 캡처 시간이 더 길어질 수 있습니다.
원하는 설정 파일을 다운로드하려면 Zivid Studio에서 카메라(특정 모델)에 연결하고 Presets을 선택한 다음 주변광 적응을 켜고 설정을 내보냅니다. 주변 조명 주파수에 맞게 조정된 설정을 사용하면 캡처 시간이 더 길어질 수 있습니다.
참고
별도의 2D 캡처를 수행하려는 경우 캡처 시간을 절약하기 위해 Sampling::Color
을 disabled
로 설정하여 3D 캡처에서 색상을 비활성화할 수 있습니다. Presets의 색상은 기본적으로 활성화되어 있습니다.
Piece Picking에 대한 위의 요구 사항에 도달하는 것을 입증하기 위해 우리는 다양한 PC에서 카메라로 벤치마크 캡처 프로그램을 지속적으로 실행합니다. 다음 표는 결과를 보여줍니다.
Parcel Picking
Parcel is also split into two settings depending on scene complexity and capture time.
Parcels Fast (Zivid 2+) / Matte (Zivid 2) settings are designed to achieve the shortest cycle times. These settings have a limited dynamic range but are good enough for objects that are relatively straightforward for imaging, for example:
cardboard boxes
white envelopes
bright poly bags
참고
If you image only boxes, parcels, satchels, etc., choose Parcels Fast (Zivid 2+) / Matte (Zivid 2) settings.
팁
Try increasing the exposure time for more data coverage on dark specular objects or switch to Parcels Quality (Zivid 2+) / Reflective (Zivid 2) presets.
For more challenging scenes, you should try out Parcels Quality (Zivid 2+) / Reflective (Zivid 2) settings. These settings have larger dynamic range and are capable of getting good surface coverage on objects such as:
black poly bags
dark plastic bags
dark plastic wrap
팁
To reduce capture time, switch the engine from Omni to Stripe; note that you may get less coverage on black parcels.
Settings Selector Table
전체 포인트 클라우드에서 잔물결/파도 형태의 아티팩트가 발생하는 경우 50/60Hz를 선택하여 주변 조명(그리드) 주파수에 맞게 조정된 Presets을 선택합니다. 주변 조명에 문제가 없으면 최적의 성능을 위해 끄기를 선택합니다.
Application |
Capture Time (2D + 3D) |
Camera Settings |
||
---|---|---|---|---|
High-End PC |
Mid-End PC |
Low-End PC |
||
Parcels (Quality/Reflective) |
~400 ms |
~600 ms |
~800 ms |
|
Parcels (Fast/Matte) |
~200 ms |
~350 ms |
~500 ms |
|
원하는 설정 파일을 다운로드하려면 Zivid Studio에서 카메라(특정 모델)에 연결하고 Presets을 선택한 다음 주변광 적응을 켜고 설정을 내보냅니다. 주변 조명 주파수에 맞게 조정된 설정을 사용하면 캡처 시간이 더 길어질 수 있습니다.
원하는 설정 파일을 다운로드하려면 Zivid Studio에서 카메라(특정 모델)에 연결하고 Presets을 선택한 다음 주변광 적응을 켜고 설정을 내보냅니다. 주변 조명 주파수에 맞게 조정된 설정을 사용하면 캡처 시간이 더 길어질 수 있습니다.
참고
If you plan to take a separate 2D capture, we recommend disabling color in your 3D capture by setting Sampling::Color
to disabled
.
This will reduce the capture time.
The color in the preset settings is enabled by default.
To demonstrate reaching the above requirements for parcels we continuously run benchmark capture programs with our cameras on various PCs. The following table shows the results.
Testing 3D Settings
Zivid Studio를 사용하여 3D 설정을 테스트할 수 있습니다.
Zivid Studio에서 설정을 가져오려면:
File → Import Capture Settings 를 클릭합니다.
설정 파일의 위치로 이동합니다.
Open를 클릭합니다.
You can also drag and drop a YML file into Zivid Studio to import the settings.
std::cout << "Loading settings from file" << std::endl;
const auto settingsFile =
std::string(ZIVID_SAMPLE_DATA_DIR) + "/Settings/" + settingsFolder(camera) + "/Settings01.yml";
const auto settings = Zivid::Settings(settingsFile);
Console.WriteLine("Loading settings from file");
var settingsFile = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)
+ "/Zivid/Settings/" + SettingsFolder(camera) + "/Settings01.yml";
var settings = new Zivid.NET.Settings(settingsFile);
print("Loading settings from file")
settings_file = Path(user_options.settings_path)
settings = zivid.Settings.load(settings_file)
2D settings
3D 캡처를 통해 컬러 이미지를 얻더라도 카메라 프로젝터의 빛으로 인해 2D 응용 프로그램에 적합하지 않을 수 있습니다. 이에 대한 자세한 내용은 2D + 3D Capture Strategy 에서 확인할 수 있습니다. Piece Picking 애플리케이션을 위한 2D 설정을 획득하기 위한 두 가지 옵션을 제공합니다.
코드 샘플과 함께 Zivid calibration board를 사용하여 자동으로 2D 설정 가져옵니다.
look-up 테이블을 사용하고 적절한 2D 설정을 찾습니다.
Manually tune 2D settings
Automatic 2D settings
auto_2d_settings.py 샘플을 실행하여 Zivid calibration board를 사용하여 2D 캡처에 대한 획득 설정 및 색상 균형을 자동으로 찾습니다. Calibration board를 빈의 상단 또는 하단에 놓고 Calibration board 위치와 원하는 초점 범위(빈 높이)를 명령줄 인수로 지정하여 샘플을 실행합니다. 예를 들어 Calibration board를 빈 상단에 놓고 빈 높이가 400mm인 경우 다음과 같이 샘플을 실행합니다.
python auto_2d_settings.py --desired-focus-range 400 --checkerboard-at-start-of-range
Calibration board를 빈 바닥에 놓으면 다음을 실행합니다.
python auto_2d_settings.py --desired-focus-range 400 --checkerboard-at-end-of-range
이 샘플은 기본적으로 2D 설정을 찾을 때 내부 프로젝터를 사용하지 않지만 선택적 인수 --use-projector
로 설정할 수 있습니다. 또한 선택적 인수 --no-color-balance
를 사용하여 색상 균형을 맞추지 않도록 선택할 수 있습니다. 샘플은 장면의 주변광으로 보정되므로 실제 애플리케이션에서와 유사한 조명 조건을 사용해야 합니다.
Settings Selector Table
아래 표는 빈 하단의 조도와 빈 상단까지의 거리를 기반으로 하는 2D 설정을 위한 설정 선택기 도구입니다. 이러한 2D 설정은 내부 프로젝터를 광원으로 사용하지 않고 외부 광원만 사용한다고 가정합니다.
표를 사용하려면 먼저 예상되는 조명 조건을 고려하여 상자 바닥의 조도를 결정합니다. 그런 다음 카메라에서 빈 상단까지의 거리를 기준으로 설정을 선택합니다.
참고
럭스(lx) 단위로 측정되는 조도는 단위 면적당 표면에 입사되는 총 광도입니다. 루멘(lm) 단위로 측정되는 광도는 단위 시간당 광원에서 방출되는 가시광선의 총량을 측정한 것입니다.
At bin bottom |
To bin top |
|||||
---|---|---|---|---|---|---|
600 mm |
800 mm |
1100 mm |
1400 mm |
1700 mm |
1900 mm |
|
~300 lx |
||||||
~1000 lx |
||||||
팁
PC에서 3D 및/또는 2D 설정을 벤치마킹하려면 YML 파일에서 로드된 설정으로 ZividBenchmark.cpp 샘플을 실행할 수 있습니다. Samples 로 이동하여 C++ 샘플을 위한 가이드를 참고하십시오.
Below we show 2D benchmark captures with our cameras on various PCs.
Manually tune 2D settings
If automatic tuning or the look-up table does not provide sufficient 2D quality, you can manually tune the color settings by adjusting the color balance and gamma parameters. Gamma correction can be used to either darken or brighten the image. The color channel parameters makes the color image look more natural. We recommend using our projector as a flash when capturing 2D images. IN this case, you do not need to adjust the color balance. If you choose to capture without the projector, you need to re-tune the white balance. We explain how to do this in Color Balance article.
For an in-depth tutorial on how to optimize for colors, see Optimizing Color Image.
Testing 2D Settings
To test 2D settings, you can either use the 2D capture mode in Zivid Studio or run our code sample.
Zivid Studio에서 설정을 가져오려면:
File → Import Capture Settings 를 클릭합니다.
설정 파일의 위치로 이동합니다.
Open를 클릭합니다.
You can also drag and drop a YML file into Zivid Studio to import the settings.
Using our code sample, you can provide the path to the 2D acquisition settings YML file as an argument.
python capture_2d_with_settings_from_yml.py <path-to-2d-settings.yml>
The sample load the 2D settings, capture an image, displays it, and saves it.
user_options = _options()
camera = app.connect_camera()
settings_2d = zivid.Settings2D.load(user_options.path)
with camera.capture(settings_2d) as frame_2d:
image = frame_2d.image_rgba()
rgba = image.copy_data()
display_rgb(rgba[:, :, 0:3], title="RGB image", block=True)
image_file = "Image.png"
print(f"Saving 2D color image to file: {image_file}")
image.save(image_file)
참고
낮은(~300lx) 및 높은(~1000lx) 주변 조명 조건에서 위의 일반적인 장면에 대해 권장하는 3D 및 2D 설정을 테스트했습니다. 카메라 선택기 섹션에서 지정한 거리 범위와 장면의 다양한 항목에 대해 이 작업을 수행했습니다. 따라서 우리는 이러한 설정이 이러한 범주에 맞는 대부분의 장면에서 작동할 것이라고 확신합니다. 그러나 장면에서 기대하는 항목을 정확히 알고 있고 전문적인 카메라 사용자인 경우 상황에 맞게 설정을 수동으로 구성하여 최적화할 수 있습니다. 보다 자세한 내용은 Capturing High Quality Point Clouds 를 확인하십시오.
다음 섹션에서는 멀티스레딩을 사용하여 속도 최적화 Optimizing Robot Cycle Times 에 대해 다룹니다.
Version History
SDK |
Changes |
---|---|
2.12.0 |
Zivid One+ has reached its End-of-Life and is no longer supported. |