SDK Changelog
2.17.0
API
Added support for the Zivid 3 XL250 camera:
The Zivid 3 XL250 is a new camera platform from Zivid enabling high-accuracy, large-volume 3D and 2D imaging for demanding logistics and manufacturing scenarios.
Read more about Zivid 3 XL250 at https://www.zivid.com/zivid-3.
Added
Settings2D::Sampling::Intervalsetting for Zivid 3 XL250, allowing synchronization with ambient light flicker frequency or other flickering light sources to ensure stable, artifact-free color images.Added new
Settings2D::Sampling::ColormodergbStrongAmbientLightfor Zivid 3 XL250, providing better color images in scenes that have very strong ambient light.Added experimental barcode reading API:
The new
BarcodeDetectorclass under theZivid::Experimental::Toolboxnamespace performs detection and decoding of various kinds of linear (1D) and matrix (2D) codes.The
BarcodeDetectortakes aFrame2Das input, and returns the code, format and location (image coordinates) of all successfully detected and decoded barcodes in that frame.Supported linear (1D) formats: Code128, Code93, Code39, EAN-13, EAN-8, UPC-A, UPC-E
Supported matrix (2D) formats: QR-code, DataMatrix
For optimal speed and reliability, it is recommended to select only the relevant/expected formats.
A license is required to use the barcode reading API. The Zivid Customer Success team (customersuccess@zivid.com) can help with obtaining a license.
Note: The barcode reading feature can be used in Zivid Studio without a license.
Added camera Ethernet link speed to
CameraState::Ethernet::LinkSpeed.The link speed is only known for
connectedstatus cameras.This indicates the Ethernet link speed between the camera and the network device it is directly connected to. It does not indicate what is the actual transfer speed between the camera and the computer.
Moved infield correction APIs out of the
Zivid::Experimentalnamespace with the following changes:The
InfieldCorrection.hheader no longer containsdetectFeaturePointsandcaptureCalibrationBoardmethods. These methods have already been available in the non-experimentalDetector.hheader.Instead of returning
InfieldCorrectionDetectionStatus::invalidCaptureMethod, theInfieldCorrectionInputclass will now throw an exception if the detection result was not created through callingdetectCalibrationBoardor if the frame used for detection was not captured throughcaptureCalibrationBoard.
The
UnorganizedPointCloudclass can now be displayed in theVisualizer.Added a
closemethod to theVisualizerclass, which stops the Visualizer event loop and closes the window.Added method
paintUniformColortoUnorganizedPointCloudto set all the points to a given RGBA value.Added support for exporting points from
UnorganizedPointCloudinXYZWdata format.Added new
Settings2D::Sampling::ColormodergbAmbientSuppressionfor Zivid 2+ Classic and Zivid 2 cameras.Updated Zivid 2, 2+, and 2+R firmware to version 1.38.1.
Ubuntu 20.04 is End Of Life since May 31, 2025. Support for Ubuntu 20.04 is deprecated in this SDK release and may be removed in SDK 2.18.
Support for NVIDIA Jetson Linux 34.x and 35.x (part of JetPack 5.x) is deprecated in this SDK release and may be removed in SDK 2.18.
Python
Added support for the Zivid
Visualizerclass.Added support for
copy.deepcopyinSettingsandSettings2Dclasses.
.NET
Implemented the experimental local point cloud registration API in the .NET wrapper.
Studio
Added support for the barcode reading feature in Zivid Studio, with user-selectable barcode formats and real-time visualization.
Barcode reading is enabled by clicking “Show barcodes” in the “View” menu.
Choose which formats to read by clicking “Configure barcodes to detect”.
Barcode reading in Zivid Studio does not require a license.
Added a slider for the Z-Range filter for the Depth and Rainbow point cloud coloring modes.
The Ethernet link speed of cameras with “Connected” status is added in the Cameras dialog and in the Camera Network Configuration dialog.
Bug Fixes
Fixed bug where the GenTL Producer could crash when calling
IFUpdateDeviceListmultiple times.Fixed bug where 2D capture could have a slight red hue on Zivid 2+R in case of high amounts of ambient light.
Fixed bug where Hole Repair would not filter data at distances larger than 2.05 m.
Known Issues
Capturing full resolution 3D HDR with a slow Ethernet connection may cause the camera to reboot.
This can happen when a camera is connected with 2.5 Gbps or slower Ethernet.
It may be more likely to happen if multiple cameras are connected to the same Ethernet port on the computer, for example via a switch.
A workaround is to reduce the number of 3D acquisitions, or find alternative settings with 3D pixel sampling mode
by2x2for Zivid 2+R and Zivid 3, orblueSubsample2x2for Zivid 2+ classic and Zivid 2.A fix for this issue is being tested internally at Zivid and the fix will be available in SDK 2.17.1.
The 2D capture time on Nvidia Jetson Orin devices is slower in this release compared with previous releases. This regression will be fixed in SDK 2.17.1.
자주 발생하는 문제 및 제한 사항들은 <https://support.zivid.com/latest/support/troubleshooting.html> 를 참조하십시오.
2.16.0
API
이제 Omni 엔진에서 로컬 반사 필터 모드를 사용할 수 있습니다. 글로벌 반사 필터 모드와 비교했을 때, 로컬 반사 필터 모드는 다음과 같습니다.
이전에는 삭제되거나 배경으로 축소되었던 좁고 가까운 표면에 대한 더 정확한 데이터를 제공합니다.
프로젝터 그림자와 신호가 약한 영역에서 아티팩트가 발생할 가능성을 줄입니다.
멀리 있는 표면이 앞으로 당겨지는 것을 막습니다.
프로젝터의 반사 신호가 매우 약한 물체의 포인트 수를 줄일 수 있습니다. 노출 시간을 늘리면 이 문제를 완화할 수 있습니다.
유효하지 않은 (z == NaN) 모든 점을 포인트 클라우드에서 효율적으로 제거하고 유효한 점의 XYZ, 색상 및 SNR 데이터만 포함하는
UnorganizedPointCloud를 생성하는PointCloud::toUnorganizedPointCloud메서드가 추가되었습니다(아래 참조).UnorganizedPointCloud클래스를 추가했습니다. 여기에는 유효함이 보장되는(즉, NaN 이 아닌) 점을 나타내는 XYZ, Color 및 SNR 데이터의 선형 배열이 포함됩니다. 센서 인덱스[i,j]가 있는 체계화된 2D 그리드에 데이터가 배치되는PointCloud와 달리UnorganizedPointCloud는 어떤 순서로든 배열할 수 있는 점의 컴팩트한 선형 목록입니다. 이 데이터는 GPU 가속 조작을 허용하기 위해 컴퓨팅 장치(GPU)에 보관됩니다.PointCloud와 유사한copyDataAPI를 사용하여 데이터를 RAM에 복사할 수 있지만 이러한 메서드는Array1D<PointXYZ>,Array1D<ColorRGBA>등을 반환합니다. 데이터는rgba(i)와snr(i)가 점xyz(i)에 속하는 색상과 SNR이 되도록 정렬됩니다. 이 수업의 목적은 여러 시야각에서 캡처한 포인트 클라우드 데이터를 단일 멀티뷰/360도 포인트 클라우드로 결합 (“stitching”) 하기 위한 빌딩 블록 역할을 하는 것입니다(이 경우 체계화된PointCloud형식은 적합하지 않습니다).이 수업의 주요 특징은 다음과 같습니다.
기본 생성자
UnorganizedPointCloud::UnorganizedPointCloud(): 나중에 확장할 빈 포인트 클라우드를 만드는 데 사용됩니다.UnorganizedPointCloud::extend(other)메서드: 다른 포인트 클라우드의 포인트를 추가하여 포인트 클라우드를 확장합니다.UnorganizedPointCloud::transform(transform)메서드: 포인트 클라우드의 모든 포인트에 변환을 적용합니다.UnorganizedPointCloud::voxelDownsampled(voxelSize, minPointsPerVoxel)메서드: 포인트 클라우드의 복셀 다운샘플링 버전을 생성합니다. 복셀 다운샘플링은 3D 공간을 주어진 크기의 입방 복셀 격자로 세분화합니다. 복셀에 주어진 한계 이상의 포인트가 여러 개 포함되어 있는 경우, 해당 복셀의 모든 소스 포인트는 결과 포인트 클라우드에서 평균적인 위치와 색상을 갖는 단일 포인트로 대체됩니다. 복셀의 소스 포인트 수가 한계보다 적으면 결과 포인트 클라우드에서 해당 복셀은 비어 있게 됩니다.UnorganizedPointCloud::centroid()메서드: 포인트 클라우드의 중심, 즉 모든 XYZ 포인트 위치의 평균을 계산합니다.UnorganizedPointCloud::center()메서드: 포인트 클라우드를 그 자리에서 변환하여 중심이 원점(0,0,0)에 오도록 합니다.
로컬 포인트 클라우드 등록을 수행하기 위한
Experimental::Toolbox::localPointCloudRegistration(target, source, params, initialTransform)함수가 추가되었습니다.source포인트 클라우드와target포인트 클라우드가 주어지면, 이 함수는source를target과 최적으로 정렬하기 위해 적용해야 하는 변환을 계산합니다. 이 함수는 다양한 카메라 각도에서 수집된 데이터를 결합하여 객체의 “stitched” 비정형 포인트 클라우드를 생성하는 데 사용할 수 있습니다.source와target이 일치하지 않는 경우, 이 함수는 초기 추측을 요구하는데, 이는 캡처 시점의 로봇 자세나 장면의 알려진 참조 마커와 같은 다른 정보를 통해 얻을 수 있습니다.다른 처리 설정을 사용하여 프레임에서 처리를 다시 실행하기 위해
Experimental::reprocess기능이 추가되었습니다.측정된 주변광 깜박임 주파수를 포함하는
Camera::measureSceneConditions의 일부로 반환된SceneConditions::AmbientLight::FlickerFrequency가 추가되었습니다.3D 포인트의 2D 배열을 입력으로 받아서 픽셀 좌표의 2D 배열을 반환하는
Projection::pixelsFrom3DPoints의 오버로드를 추가했습니다.그 자리에서 변환하는 대신 포인트 클라우드의 변환된 복사본을 반환하는
PointCloud::transformed메서드를 추가했습니다..pcd 파일로 내보낼 때
organized또는 unorganized` 레이아웃을 선택할 수 있도록PCD파일 형식 사양에 레이아웃 옵션을 추가했습니다.Zivid 칼리브레이션 보드 ZVDA-CB02에 대한 지원이 추가되었습니다.
Zivid 2+ R 시리즈 카메라는 이제 투사하는 동안 밝기 > 0으로 촬영하여 장면과 투사된 이미지 간의 대비를 제어할 수 있습니다.
Zivid 2, 2+, 2+R 펌웨어를 버전 1.35.1로 업데이트했습니다.
Python
이번 릴리스부터 zivid-python의 버전 관리 체계가 변경됩니다. zivid-python 패키지 버전은 이제 지원하는 Zivid SDK 버전과 일치합니다. 자세한 내용은 zivid-python README(<https://github.com/zivid/zivid-python/blob/v2.16.0/README.md#versioning>)를 참조하세요.
이전 인스턴스가 범위를 벗어난 후에
zivid.Application()클래스를 다시 생성할 수 없는 버그를 수정했습니다.
Studio
Acquisition 설정과 Processing 설정이 이제 두 섹션으로 구분되었습니다.
프레임 “Re-processing” 를 추가하여 캡처한 후 프레임의 처리 설정을 조정할 수 있게 되었습니다.
Re-processing는 캡처 섹션에서 “Re-processing” 체크박스를 클릭하여 수동 모드에서만 활성화할 수 있습니다.
진단 설정(Diagnostics)이 활성화된 상태에서 캡처한 프레임만 다시 처리할 수 있습니다.
Studio에서 회전 및 팬 기능이 개선되었습니다:
큰 회전으로 인해 카메라가 뒤집히는 버그를 수정했습니다.
큰 장면에서의 팬닝이 훨씬 빨라졌습니다.
Shift 키를 누르고 있으면 장면을 창 중앙을 중심으로 회전할 수 있습니다.
Studio의 모양과 느낌을 현대화했습니다.
진단 설정이 활성화된 경우 Studio에서 설정을 내보낼 때 확인 대화 상자가 표시됩니다.
Studio에서 포인트 클라우드를 PCD 형식으로 내보낼 때, 이제 내보내기 옵션 대화 상자에서 PCD 파일의 레이아웃을 선택할 수 있습니다.
클립보드가 업데이트되었다는 것을 나타내는 피드백을 “클립보드에 복사” 버튼에 추가했습니다.
2.15.0
API
Zivid 2+ R 시리즈 카메라의 어둡고 노이즈가 많은 영역에서 색상 아티팩트를 줄여 2D 이미지 품질을 개선했습니다.
2D 캡처의 경우 사용되는 GPU에 따라 캡처 시간이 증가합니다.
고성능 Nvidia GPU의 경우 캡처 시간이 약 5~10% 증가합니다.
인텔 통합 그래픽의 경우, 고급 인텔 프로세서의 경우 증가율이 약 30-40%이고, 저급 인텔 프로세서의 경우 최대 60%입니다.
2D+3D 캡처의 경우 2D 처리가 3D 수집과 병렬로 수행되므로 캡처 시간이 증가하지 않습니다.
촬영 시간의 증가는 Zivid 2+ R 시리즈 카메라에만 영향을 미칩니다.
깊이 불연속성 근처의 아티팩트를 줄여서 Normal 벡터 계산을 개선했습니다.
GPU에 따라 계산 시간이 증가합니다.
하이엔드 엔비디아 GPU의 경우 계산 시간은 2~5ms에서 6~12ms로 늘어납니다.
하이엔드 인텔 통합 그래픽의 경우 계산 시간은 10~15ms에서 25~30ms로 늘어납니다.
로우엔드 인텔 통합 그래픽의 경우 계산 시간은 25~30ms에서 60~70ms로 늘어납니다.
Nvidia Jetson Orin 모듈의 경우 계산 시간이 30~40ms에서 45~55ms로 늘어납니다.
Sage엔진은 더 이상 실험적인 것으로 간주되지 않습니다.Experimental::PointCloudExport::exportFrame()을 통해 포인트 클라우드를 내보낼 때 PLY/PCD 파일에 법선 벡터를 포함하도록 지원이 추가되었습니다.DetectionResult클래스에status와statusDescription이 추가되었습니다.status는ok또는 감지에 실패한 이유를 나타내는CalibrationBoardDetectionStatus열거형 값을 반환합니다.statusDescription은 상태를 설명하는 사람이 읽을 수 있는 문자열을 반환합니다.
DetectionResult클래스에featurePoints2D를 추가했습니다. 여기에는 픽셀 좌표에서 감지된 특징점이 포함됩니다.Jetson(CUDA) 플랫폼에서 Phase 또는 Stripe 엔진과 함께 Global Reflection Filter를 적용하여 생성된 포인트 클라우드를 개선했습니다. 이전에는 OpenCL 플랫폼에서 동일한 설정을 사용했을 때보다 Jetson을 사용할 때 반사 아티팩트가 더 많이 발생했습니다. 이제 두 플랫폼 모두 동일한 결과를 제공합니다.
Experimental::Calibration::pixelMapping함수의 동작을 업데이트하여 원래 용도에 더 적합하게 만들었습니다. 이전 릴리스에서는 항상 3D에서 전체 해상도로의 픽셀 매핑을 반환했습니다. 이제 지정된 캡처 설정에 따라 3D에서 2D 캡처로의 픽셀 매핑을 반환합니다. 자세한 내용은 함수의 docstring을 참조하세요.칼리브레이션 보드 감지 견고성이 향상되었습니다.
어두운 장면에서 ArUco 마커 감지 기능이 더욱 강화되었습니다.
sRGB 색상 공간에 대해
PointCloud및Frame2D에 새로운 출력 형식이 추가되었습니다.새로운 유형
ColorRGBA_SRGB,ColorBGRA_SRGB,PointXYZColorRGBA_SRGB,PointXYZColorBGRA_SRGB가 추가되었습니다.copyColorsRGBA_SRGB,copyColorsBGRA_SRGB(),copyImageRGBA_SRGB,copyImageBGRA_SRGB(),copyPointsXYZColorRGBA_SRGB,copyPointsXYZColorBGRA_SRGB()라는PointCloud메서드가 추가되었습니다.Frame2D메서드imageRGBA_SRGB()및imageBGRA_SRGB()를 추가했습니다.일관성을 위해
ColorSRGB유형은 더 이상 사용되지 않으며 새로운 유형인ColorRGBA_SRGB로 대체되었습니다.PointCloud메서드copyColorsSRGB()및copyImageSRGB()는 더 이상 사용되지 않으며copyColorsRGBA_SRGB()및copyImageRGBA_SRGB()로 대체되었습니다.Frame2D메서드imageSRGB()는 더 이상 사용되지 않으며imageRGBA_SRGB()로 대체되었습니다.
포인트 클라우드의 현재 변환 행렬을 반환하는
PointCloud::transformationMatrix()메서드를 추가했습니다. 변환이 적용되지 않은 경우 단위 행렬이 반환됩니다.편의를 위해
Settings객체를 받는ProjectedImage::capture2D오버로드를 추가했습니다. 이 오버로드는Settings객체의Settings::Color부분만 사용하며,Settings::Color부분이 설정되지 않으면 예외가 발생합니다.예를 들어 “aruco4x4_50” 과 같이 문자열 표현에서
MarkerDictionary객체를 생성하기 위해 정적 메서드MarkerDictionary::fromString을 추가했습니다.제공된 카메라 정보와 설정에 따라 2D 프레임의 해상도를 반환하는
Experimental::SettingsInfo::resolution2D기능이 추가되었습니다.Zivid 2, 2+, 2+R 펌웨어를 버전 1.33.4로 업데이트했습니다.
.NET
이제
Frame클래스는 자신이 삭제될 때PointCloud및Frame2D객체도 함께 삭제합니다. 이를 통해 삭제되지 않은 이전PointCloud또는Frame2D인스턴스로 인해 시스템의 컴퓨팅 장치 메모리가 부족해지는 문제가 해결되었습니다.Frame클래스의PointCloud및Frame2D속성은 더 이상 각 액세스 시PointCloud또는Frame2D의 새 인스턴스를 반환하지 않습니다. 대신, 해당 인스턴스가 삭제될 때까지 동일한 인스턴스를 반환하고, 삭제된 후에는 새 인스턴스를 생성합니다.
폐기 가능 클래스는 이제 객체가 폐기된 후 메서드나 속성을 사용하면
ObjectDisposedException을 throw합니다. 객체가 폐기되었는지 확인하는 데 사용할 수 있는IsDisposed라는 새 속성이 추가되었습니다.Frame,Frame2D,PointCloud클래스에ShallowCopy메서드를 추가했습니다. 이 메서드는 GPU에서 원본 인스턴스와 동일한 데이터를 참조하는 클래스의 새 인스턴스를 생성합니다. 이 메서드는 데이터를 복사하지 않고도 데이터의 수명을 연장하는 데 유용합니다. 예를 들어 Frame이 삭제된 후 PointCloud가 필요한 경우입니다.PointCloud및Frame2D클래스에Clone메서드를 추가했습니다. 이 메서드는 GPU 데이터를 포함하여 객체의 모든 데이터에 대한 깊은 복사본을 생성합니다. 이는 원본 객체에 영향을 주지 않고 데이터를 수정해야 할 때 유용합니다.
Studio
포인트 클라우드를 변환하는 기능이 추가되었습니다.
포인트 클라우드는 관심 영역 상자의 원점으로 변환될 수 있습니다.
변환 행렬은 YAML 파일에 저장하고 로드할 수 있으며, 클립보드에 복사할 수 있습니다.
포인트 클라우드를 PCD, PLY 또는 ASCII 포인트로 내보낼 때 새로운 “Export Options” 대화 상자를 통해 사용자는 내보내기에 대한 추가 옵션을 선택할 수 있습니다.
Added a “Preferences” dialog to Studio. It is accessible from the “File” menu. Preferences are persisted between Studio sessions in a
Preferences.inifile. On Linux, this file is stored in"${XDG_CONFIG_HOME-$HOME/.config}"/Zivid/Studio/, and on Windows, it is stored in%LOCALAPPDATA%\Zivid\Studio\.“A new version of Zivid Studio is available” 알림을 비활성화하는 옵션이 추가되었습니다. 이 옵션은 “Preferences” 대화 상자에서 찾을 수 있습니다.
보기 메뉴의 “Reset 3D View When Opening Files” 옵션이 이제 여러 Studio 세션에서도 유지됩니다.
여러 Studio 인스턴스에서 3D 뷰 동기화 기능이 추가되었습니다. 이 기능은 특히 같은 장면의 여러 캡처를 비교할 때 유용합니다. 동기화할 각 Studio 인스턴스의 “Preferences” 대화상자에서 이 기능을 켜야 합니다.
3D 포인트 클라우드 뷰에 SNR 컬러 오버레이 모드가 추가되었습니다.
관심 영역 상자에 대한 조작기 위젯의 모양과 느낌을 개선했습니다.
이제 “Region of Interest: Box” 설정 아래의 “Fit to scene” 버튼을 클릭하면 자동으로 3D 보기로 이동합니다.
카메라 연결 속도가 느린 경우(컴퓨트 파이프라인에서 사용되는 GPU 커널 초기화로 인해 발생할 수 있음) 표시되는 설명 텍스트 라벨을 추가했습니다. 자세한 내용은 <https://support.zivid.com/en/latest/support/long-connection-time.html> 을 참조하세요.
저장/내보내기 파일 대화 상자는 이제 이전에 선택한 파일 형식을 기억합니다.
변형된 포인트 클라우드가 포함된 .zdf 파일을 로드할 때 제대로 표시되지 않는 문제를 해결했습니다. 이 수정 사항은 SDK 2.15 이상에서 저장된 .zdf 파일에만 적용됩니다.
CLI
ZividExperimentalHandEyeCalibration도구에--dictionary매개변수를 추가하여 기준 마커 감지에 사용할 사전을 지정합니다.
GenICam
2D 캡처에 대한 지원이 추가되었습니다.
카메라의 캡처 모드를 제어하는
CaptureMode매개변수를 추가했습니다. 이 매개변수는Capture2D,Capture3D,Capture2D3D모드를 지원합니다.
.yml 파일에서 2D 캡처 설정을 로드하는
LoadSettings2DFromFile매개변수를 추가했습니다.이 매개변수는 .yml 파일의 파일 경로를 허용합니다. Settings2D .yml 파일은 Zivid Studio 또는 API에서 내보내거나 <https://support.zivid.com/en/latest/reference-articles/presets-settings.html> 에서 다운로드할 수 있습니다.
2D 캡처에 대한 설정은 기존
LoadSettingsFromFile매개변수와 함께 결합된 2D+3D 설정 .yml 파일을 로드하여 설정할 수도 있습니다.
GenICam에서
CameraInfo정보를 읽기 전용 매개변수로 노출하여 GenICam을 통해 카메라 정보에 더 쉽게 액세스할 수 있게 했습니다. 예를 들어, 카메라 모델의 경우CameraInfoModel, 펌웨어 버전의 경우CameraInfoFirmwareVersion등이 있습니다.
Windows
Windows 설치 프로그램은 모양과 느낌을 개선하고 보다 안정적인 설치 프로세스를 제공하기 위해 재설계되었습니다.
새로운 설치 프로그램의 명령줄 인터페이스는 이전 버전과 달라졌습니다. 이전의
/S플래그와 동일한 자동 설치를 수행하려면 다음 플래그를 사용하세요./VERYSILENT /SUPPRESSMSGBOXES /NORESTART /TYPE=full.
Bug fixes
2+R 시리즈 카메라 펌웨어에서 다양한 픽셀 샘플링 설정과 짧은 노출 시간으로 2D+3D를 반복적으로 캡처할 때 카메라에서 “timed out” 예외가 발생하는 버그를 수정했습니다.
드물게 포인트 클라우드에 노이즈가 많은 포인트가 대량으로 포함되는 버그를 수정했습니다. 이 버그는 제조된 모든 Zivid 카메라 중 일부에서만 발생했습니다.
Sage엔진에서 드물게 적용 범위가 매우 낮은 포인트 클라우드를 생성하는 버그를 수정했습니다.
Known issues & limitations
자주 발생하는 문제 및 제한 사항들은 <https://support.zivid.com/latest/support/troubleshooting.html> 를 참조하십시오.
2.14.2
Bug fixes
다운샘플링으로 인해 Hole Repair 필터로 채워진 포인트가 제거될 수 있는 버그를 수정했습니다.
한 프로세스에서 카메라를 검색하면 다른 프로세스에서 수행하는 카메라 펌웨어 업데이트가 중단될 수 있는 버그를 수정했습니다.
2.14.1
Studio
파일 카메라를 사용할 때 캡처 측면 패널의 장면 조명 조건 상자가 표시되지만 텍스트가 포함되지 않는 버그를 수정했습니다.
Bug fixes
Zivid 2+ R 시리즈 카메라의 색상 정확도가 개선되어 색상에서 약간의 붉은 색조가 제거되었습니다.
Stripe 또는 Sage 엔진을 사용하여 16개 이상의 수집을 캡처할 때 인덱스가 범위를 벗어났다는 오류로 인해 예외가 발생하는 버그를 수정했습니다.
2.14.0
API
Zivid 2+ MR60, MR130 및 LR110 카메라 모델에 대한 지원이 추가되었습니다.
Zivid 2+ R 시리즈 카메라는 Zivid의 차세대 3D 카메라입니다.
이 카메라는 향상된 획득 및 캡처 속도, 다양한 주변광 조건에서도 안정적인 더 선명한 컬러 이미지, 새로운
Sage엔진을 사용한 반사 완화 등 수많은 개선 사항을 제공합니다.<https://www.zivid.com/zivid-2-plus-r-series> 에서 Zivid 2+ R 시리즈에 대한 자세한 내용을 알아보세요.
새로운 실험적
Sage엔진이 추가되었습니다:Sage엔진은 모든 점이 특히 높은 신뢰도로 정확해야 하는 사용 사례를 위해 설계되었습니다. 이 엔진은 반사 아티팩트를 제거하는 데 매우 적합합니다.Stripe엔진과 비교했을 때Sage엔진은 신뢰도가 낮은 데이터를 제거하기 때문에 반환하는 포인트가 더 적을 수 있습니다.Sage엔진은 Zivid 2+ R 시리즈 카메라에서만 사용할 수 있습니다.Sage엔진은 실험적 단계이므로 향후 변경될 수 있습니다.
Zivid::Settings2D객체를 사용하여 2D+3D 캡처에 대한 2D 컬러 이미지 수집 및 처리 설정을 지정하기 위한 지원이 추가되었습니다.새로운
Zivid::Settings::Color설정이 추가되었으며, 이 설정은Zivid::Settings2D객체로 설정할 수 있습니다.Zivid::Settings::Color를 사용하면 2D+3D 캡처에 대한 특정 사용자 지정 2D 촬영 설정(ExposureTime,Aperture,Brightness,Gain)을 지정할 수 있습니다. 이를 통해 사용자는 2D 및 3D 촬영 설정을 개별적으로 완벽하게 제어할 수 있습니다.Zivid::Settings의 기존 색상 설정(Zivid::Settings::Sampling::Color및Zivid::Settings::Processing::Color하위의 모든 설정)은 더 이상 지원되지 않으며, SDK 3.0에서 제거됩니다. 기존의 모든 설정 객체와 settings.yml 파일은 SDK 3.0까지 이 SDK 릴리스 이전과 동일하게 작동합니다. 앞으로 2D+3D 캡처에 대한 2D 수집 및 처리 설정을 정의하는 권장 및 선호 방식은 새로운Zivid::Settings::Color설정을 사용하는 것입니다.모든 Presets은 미세 조정된
Settings::Color값으로 업데이트되었습니다.참고:
CaptureAssistant::suggestSettings()함수는 이제Zivid::Settings::Color가 정의된 설정을 반환합니다.suggestSettings()를 사용한 후 캡처 전에 반환된 설정을 수정하는 경우(예:Settings::Sampling::Pixel또는Settings::Sampling::Color조정), 반환된Settings::Color설정에도 동일한 수정을 적용할 수 있습니다.
2D+3D, 3D 전용 또는 2D 전용 캡처를 수행하기 위해 새로운 캡처 메서드
Camera::capture2D3D(settings),Camera::capture3D(settings),Camera::capture2D(settings)및Camera::capture2D(settings2D)가 추가되었습니다.이러한 새로운 캡처 방법을 사용하면 단일
Zivid::Settings.yml 파일을 기반으로 2D 및 3D 캡처를 별도 또는 결합하여 수행할 수 있습니다.기존
Camera::capture(settings)및Camera::capture(settings2D)메서드는 더 이상 지원되지 않으며 SDK 3.0에서 제거될 예정입니다. 사용자 여러분은 이번 릴리스에 도입된 새로운capture2D3D()/capture2D()/capture3D()메서드로 이동하는 것이 좋습니다.새로운
Camera::capture2D(settings)및Camera::capture2D3D(settings)메서드를 사용하려면 새 설정Settings::Color가Settings2D객체로 정의되어야 합니다. 기존 .yml 파일은 Zivid Studio로 가져온 다음 설정을 .yml로 다시 내보내 새 형식으로 변환할 수 있습니다. 이렇게 하면Settings::Color값이 설정되어 이 SDK 릴리스 이전과 동일한 2D 색상 동작을 제공합니다.
기본 2D 해상도로 캡처된 2D+3D 프레임에서
Frame2D를 반환하는Frame::frame2D()메서드가 추가되었습니다.이
Frame2D객체는 색상 값과 함께 3D 데이터를 포함하는 프레임의PointCloud와 해상도가 다를 수 있습니다.Frame2D색상 이미지와 3DPointCloud의 해상도는 사용된Sampling::Pixel및Resampling::Mode설정에 따라 달라집니다.2D+3D 캡처의 경우,
PointCloud에는 3D 해상도에 맞게 매핑된 색상이 포함됩니다.PointCloud의 색상은 캡처된 2D 색상 이미지의 해상도가 다른 경우, 필요에 따라 업샘플링되거나 다운샘플링됩니다. 예를 들어, 2D 설정에Settings2D::Pixel::Sampling::all이 있고 3D 설정에Settings::Pixel::Sampling::blueSubsample2x2가 있는 경우입니다.
2D HDR 캡처에 대한 지원이 추가되었습니다.
2D HDR에서 획득한 이미지는 3D HDR 캡처의 2D 컬러 이미지와 동일하게 병합됩니다.
2D-HDR 캡처의 경우 모든
Aperture값이 동일해야 합니다. 그렇지 않으면 캡처할 때 예외가 발생합니다.
Settings의 기존 설정과 동일한Settings2D::Processing::Color::Experimental::Mode라는 새로운 설정이 추가되었습니다. 이 설정은 2D 캡처에 대한 톤 매핑을 활성화하는 데 사용할 수 있습니다.자유도가 6도 미만인 로봇인 저자유도 로봇에 대한 핸드-아이 보정에 대한 실험적 지원을 추가했습니다.
감지된 특징점(보정 보드 사각형의 중심)의 위치를 반환하는
Calibration::DetectionResult::featurePoints()메서드를 추가했습니다.현재 장면의 주변광 조건을 측정하는
Camera::measureSceneConditions()메서드를 추가했습니다.이 방법은 눈에 띄는 주변광 깜박임이 감지되었는지, 그리고 해당 조명이 50Hz 또는 60Hz 전력망을 나타내는지 보고합니다.
지정된 카메라 모델에 대한 2D 설정 Presets을 반환하는
Presets::categories2D()함수가 추가되었습니다.Zivid 카메라에 연결된 로컬 네트워크 인터페이스의 이름, 서브넷 마스크, IP 주소가 포함된
CameraState클래스에Network::LocalInterfaces를 추가했습니다.FrameInfo클래스에Metrics::AcquisitionTime과Metrics::CaptureTime을 추가했습니다.ComputeDevice클래스에vendor()및model()메서드를 추가했습니다.Matrix클래스에identity()정적 팩토리 함수를 추가했습니다.Calibration::MarkerDictionary클래스에toString()메서드를 추가했습니다.PLY, PCD 또는 XYZ로 프레임을 내보내기 위한 실험적 API
Experimental::PointCloudExport::exportFrame()이 추가되었습니다.Frame::save()함수를 사용하는 것과 비교해 이 새로운 API를 사용하면 정렬된 PLY 또는 정렬되지 않은 PLY로 저장하고 선형 또는 sRGB 색상을 사용하는 등 더 많은 옵션을 제어할 수 있습니다.
.yml 파일 구문 분석 실패 시 표시되는 오류 메시지가 개선되었습니다. 이제 메시지에 오류에 대한 자세한 정보와 .yml 파일에서 오류가 발생한 위치에 대한 정보가 포함됩니다.
파일 카메라의
CameraInfo::ModelName을 SDK 버전 뒤에 붙는 “FileCamera-” 대신 “FileCamera” 로 변경했습니다.Noise::Suppression 및 Noise::Repair 필터의 속도가 최대 2배까지 향상되었습니다.
Intel 통합 GPU의 경우 캡처당 약 35~50ms가 개선되고, Nvidia의 경우 GPU 모델의 성능에 따라 약 3~10ms가 개선됩니다.
프레임에 Zivid 보정 보드가 포함되지 않은 경우
Calibration::detectCalibrationBoard()함수의 속도가 향상되었습니다.인쇄된 칼리브레이션 보드를 사용한 Hand-Eye 교정 지원이 종료되었습니다. 이번 릴리스에서는 Zivid 칼리브레이션 보드와 ArUco 마커만 지원됩니다.
Zivid 2 및 2+ 펌웨어를 버전 1.31.3으로 업데이트했습니다.
C++
Zivid C++ API에는 이제 C++17 이상을 지원하는 컴파일러가 필요합니다.
Zivid SDK가 지원하는 모든 컴파일러/OS는 이미 C++17을 지원하지만, 어떤 경우에는 명시적으로 C++17 지원을 활성화해야 할 수도 있습니다.
CMake를 사용하는 경우
set(CMAKE_CXX_STANDARD 17)명령을 사용할 수 있습니다.CMake 없이 Visual Studio를 사용하는 경우 프로젝트 설정 -> 속성 -> C/C++ -> 언어 -> C++ 언어 표준에서 C++17을 활성화할 수 있습니다.
다른 빌드 시스템을 사용하거나 컴파일러를 직접 호출하는 경우 컴파일러 인수
-std=c++17을 추가할 수 있습니다.
.NET
Zivid.NET.Experimental.SettingsInfo.Resolution기능이 추가되었습니다.이 함수는 제공된 카메라 정보와 설정에 따라 캡처된 프레임의 해상도를 반환합니다.
Frame클래스에Clone()메서드를 추가했습니다.Application,ComputeDevice,Frame,Frame2D,Image및MarkerDictionary클래스에ToString()메서드를 추가했습니다.
GenICam
.yml 파일에서 캡처 설정을 로드하기 위해
LoadSettingsFromFile매개변수를 추가했습니다.이 매개변수는 .yml 파일의 파일 경로를 허용합니다. 설정 .yml 파일은 Zivid Studio 또는 API에서 내보내거나 <https://support.zivid.com/en/latest/reference-articles/presets-settings.html> 에서 다운로드할 수 있습니다.
이 매개변수를 설정하면 다른 Zivid 캡처 설정 매개변수가 .yml 파일의 내용과 일치하도록 업데이트됩니다.
새로운
Settings::Color설정(위의 API 섹션 참조)은LoadSettingsFromFile매개변수를 통해서만 구성할 수 있습니다.Zivid에서는 모든 GenICam 사용자에게 개별 GenICam 매개변수를 통해 캡처 설정을 구성하는 대신 .yml 파일을 사용하도록 전환할 것을 권장합니다.
Zivid GenTL 프로듀서의 색상 출력이 sRGB 인지 linear RGB 인지 제어하는 매개변수
CameraOutputColorSpace가 추가되었습니다.이 릴리스 이전에는 GenICam 제작자가 항상 linear RGB 색상을 반환했습니다.
기본값은
sRGB이며, GenICam에서 Zivid Studio에서 관찰하는 것과 동일한 색상을 제공합니다. SDK 2.13의 동작을 유지하려면 이 옵션을linearRGB로 설정하세요.
기본값과 다른
SamplingPixel설정으로 캡처하는 경우 발생하는GC_ERR_BUFFER_TOO_SMALL오류를 수정했습니다.Windows에서 Zivid GenTLProducer 라이브러리에 대한 고정 설치된 CMake 타겟을 수정했습니다.
Zivid GenTL 제작자의 오류 보고 기능이 개선되었습니다.
Bug fixes
Camera::applyNetworkConfiguration()은 이제 카메라 IP를 예약된 범위인 0.0.0.0/8 또는 169.254.0.0/16에 있는 IP로 설정하면 예외를 발생시킵니다.Calibration::detectMarkers()는 ArUco 마커가 2D 이미지에서 감지되었지만 관심 영역 상자 밖에 있거나 3D 데이터가 없는 경우 더 이상 예외를 발생시키지 않습니다.잘못된 HandEye 입력으로 인해 HandEye 보정이 잘못된 결과를 반환하는 대신 OpenCV 예외를 발생시키는 버그를 수정했습니다.
HandEye 입력의 하위 집합에서 일부 ArUco 마커가 누락되어도 더 이상 보정이 실패하지 않습니다.
Stripe 엔진으로 HDR 캡처 시, 적어도 하나의 촬영물이 충분히 노출되었을 때 과다 노출된 촬영물의 데이터로 인해 잘못된 지점이 생성되는 버그를 수정했습니다. 이 버그는 Nvidia Jetson을 사용하거나 노이즈 리페어 필터가 활성화된 경우 발생할 수 있습니다.
일부 경우 네트워크 표시기 LED가 올바른 네트워크 연결 상태로 업데이트되지 않는 문제가 수정되었습니다. 이 문제는 SDK 2.13부터 발생하고 있습니다.
드물게 캡처 시
CameraImageTimeout오류가 반환되는 버그를 수정했습니다.
Studio
3D 보기에서 관심 영역 상자를 쉽게 조정할 수 있는 조작기 위젯을 추가했습니다.
관심 영역 설정 섹션에 “Fit to scene” 버튼을 추가했는데, 이 버튼을 누르면 포인트 클라우드를 감싸는 ROI 상자가 자동으로 설정됩니다.
캡처 측면 패널에 2D / 2D+3D / 3D 모드 선택기를 추가하여 어떤 종류의 캡처를 수행할지 제어할 수 있습니다.
이러한 새로운 모드는 각각
Camera::capture2D/capture2D3D/capture3D메서드에 해당합니다(위의 API 참조).
3D 보기에 ‘R’ 키보드 단축키를 사용해 무지개 색칠 모드를 추가했습니다.
카메라 네트워크 구성 창에 PC의 로컬 네트워크 인터페이스 이름, 로컬 IP 주소, 로컬 서브넷 마스크를 표시하는 레이블을 추가했습니다.
2D 캡처 Presets이 추가되었습니다. 2D Presets은 2D 모드를 선택한 경우에만 표시됩니다.
3D 보기 왼쪽 하단에 축 표시기를 추가했습니다. 이 표시기는 보기 메뉴에서 비활성화할 수 있습니다.
3D 보기에서 찾은 4x4_250 사전의 4x4 Aruco 마커를 강조 표시하는 “Show 4x4 Aruco Markers” 옵션이 보기 메뉴에 추가되었습니다.
장면에서 심각한 주변광 간섭이 감지되면 캡처 패널에 정보 레이블이 추가되었습니다.
50Hz 또는 60Hz 전력망을 나타내는 상당한 주변광 깜박임이 감지되면 사용자에게 50Hz 또는 60Hz 주변광 적응을 활성화하도록 권장합니다.
장면의 주변광 조건은 카메라에 연결할 때 측정됩니다. 캡처 섹션의 “…” 메뉴에서 “Measure scene lighting conditions” 을 선택하여 필요에 따라 측정할 수도 있습니다.
2D 컬러 이미지, 깊이 맵, SNR 맵 또는 일반 맵의 해상도를 보여주는 라벨을 바닥글에 추가했습니다.
인필드 보정 마법사의 “…” 메뉴에 마지막으로 측정한 내용을 제거하는 옵션이 추가되었습니다.
파일 메뉴에 SNR 맵을 .png 이미지로 저장하는 옵션이 추가되었습니다.
파일 메뉴에 일반 맵을 .png 이미지로 저장하는 옵션이 추가되었습니다.
Zivid Studio에서 사용하는 색 공간인 sRGB 색 공간을 사용하여 PLY/PCD/XYZ 파일로 내보내는 옵션이 추가되었습니다. sRGB 색상을 사용하여 내보내면 내보낸 파일의 색상이 Zivid Studio의 색상과 동일하게 표시됩니다.
진단 모드가 활성화된 경우 파일 메뉴를 통해 설정을 .yml로 내보낼 때 확인 대화 상자가 추가되었습니다.
File -> Open 을 통해 Zivid 파일 카메라(.zfc 파일)를 열 수 있는 기능이 추가되었습니다. .zfc 파일을 열 때 Studio에 파일 카메라가 나타나기까지 몇 초 정도 걸릴 수 있습니다.
파일 탐색기에서 .zdf 또는 .zfc 파일을 두 번 클릭하여 열 수 있는 지원이 추가되었습니다.
3D 보기에서 포인트 크기를 숫자로 표시하도록 “Point Size” 옵션을 변경하고, 포인트 크기 옵션을 더 추가했습니다.
멀티샘플 앤티앨리어싱(MSAA)을 사용하여 3D 포인트 클라우드의 렌더링 품질을 개선했습니다.
렌더러를 개선하여 화면의 DPI 크기에 맞춰 점과 기타 객체의 크기를 조정합니다.
오른쪽 패널의 설정에 대한 전반적인 구조와 구성을 개선했습니다.
일부 라벨, 버튼 및 입력 필드의 모양과 느낌이 개선되었습니다.
Studio에서 사용자 지정 글꼴 대신 시스템 기본 글꼴을 사용하는 버그를 수정했습니다.
정보 패널의 라벨 위에 마우스를 올려놓고 라이브 모드로 캡처할 때 Studio가 “ToolTip: cannot find any window to open popup in” 오류와 함께 종료되는 버그를 수정했습니다.
Studio에서는 캡처 어시스턴트가 더 이상 옵션으로 제공되지 않습니다. Zivid는 최적의 캡처 품질을 위해 Presets 사용을 권장합니다.
CLI
여러 대의 카메라가 연결된 경우, 모든 카메라의 펌웨어를 병렬로 업데이트하여
ZividFirmwareUpdater의 속도를 개선했습니다.
Deprecation notice
Settings::Sampling::Color설정과Settings::Processing::Color하위의 모든 설정은 더 이상 지원되지 않으며 SDK 3.0에서 제거됩니다. 이번 릴리스에서는 이러한 설정을 대체하는 새로운Settings::Color설정이 도입되었습니다. 자세한 내용은 위의 API 섹션을 참조하세요.Camera::capture()함수는 더 이상 사용되지 않으며 SDK 3.0에서 제거될 예정입니다. 대체 메서드는Camera::capture2D3D(),Camera::capture3D(),Camera::capture2D()입니다. 자세한 내용은 위의 API 섹션을 참조하세요.
Known issues & limitations
이제 Zivid SDK는 추가 동적 라이브러리인 ZividUtils를 설치하고 사용합니다.
라이브러리 이름은 Linux에서는 libZividUtils.so이고, Windows에서는 ZividUtils.dll/ZividUtils.lib(릴리스 모드의 경우), ZividUtilsd.dll/ZividUtilsd.lib(디버그 모드의 경우)입니다.
“Unresolved external symbol” 또는 이와 유사한 오류가 발생하는 경우, 기존 ZividCore 라이브러리와 마찬가지로 ZividUtils 라이브러리가 프로젝트의 종속성으로 추가되었는지 확인하세요. CMake를 사용하는 경우 프로젝트를 다시 생성하는 것으로 충분합니다. CMake 없이 Visual Studio를 사용하는 경우, 프로젝트 설정 -> 링커 -> 입력에서 새 라이브러리를 추가해야 할 수 있습니다.
자주 발생하는 문제 및 제한 사항들은 <https://support.zivid.com/latest/support/troubleshooting.html> 를 참조하십시오.
2.13.1
Bug fixes
Calibration::MarkerShape::pose()에서 반환된 ArUco 마커 포즈의 방향이 보정 보드 포즈와 일치하지 않는 문제가 해결되었습니다. 감지된 ArUco 마커의 모든 포즈는 이제 양의 z 방향, 즉 카메라에서 멀어지는 방향을 가리킵니다. ArUco 마커 포즈는 2.13.0 버전에서 도입되었습니다.
2.13.0
API
Zivid 카메라의 네트워크 구성을 가져오고 변경하기 위한 새로운 API가 추가되었습니다.
Camera::networkConfiguration()을 호출하여 카메라의 현재 네트워크/IP 구성을 가져옵니다.새로운 구성과 함께
NetworkConfiguration객체를 사용하여Camera::applyNetworkConfiguration(...)을 호출하여 이 구성을 카메라에 적용합니다.Zivid는 멀티캐스트를 사용하여 카메라를 검색하고 구성합니다. 즉, PC와 카메라의 IP/서브넷 설정이 일치하지 않더라도 PC와 동일한 네트워크에 있는 모든 Zivid 카메라를 찾아 구성할 수 있습니다. 이 기능을 사용하려면 Zivid 카메라 펌웨어 버전 1.16.0 이상(SDK 2.10.0 이상)이 필요합니다.
Zivid Studio에서도 카메라 네트워크 구성을 사용할 수 있습니다. 자세한 내용은 아래 Studio 섹션을 참조하세요.
포인트 클라우드에서 하나 이상의 ArUco 마커를 감지하기 위해
Zivid::Calibration::detectMarkers(...)함수가 추가되었습니다.반환 값은 마커 모서리의 2D+3D 좌표와 중심 포즈(위치+방향)를 제공합니다.
ArUco 마커를 사용하여 손과 눈의 보정에 대한 지원이 추가되었습니다.
ArUco 마커를 기반으로 한 핸드-아이 보정을 위한 API는 보정 보드를 위한 현재의 핸드-아이 보정 API와 동일합니다. 다만
detectFeaturePoints(...)대신Zivid::Calibration::detectMarkers(...)를 호출해야 합니다.사용자는 장면에 어떤 마커(하나 또는 여러 개)가 있는지 지정해야 합니다. 각 로봇 포즈와 관련된 3D 캡처에는 해당 마커의 일부만 표시되어야 합니다.
기존의
Zivid::Experimental::Calibration::detectFeaturePoints(...)함수와 동일한 기능을 수행하지만 실험적인 기능은 아닌Zivid::Calibration::detectCalibrationBoard(...)함수가 추가되었습니다.기존의
Zivid::Experimental::Calibration::captureCalibrationBoard(...)함수와 동일한 기능을 수행하지만 실험적인 기능은 아닌Zivid::Calibration::captureCalibrationBoard(...)함수가 추가되었습니다.Stripe 엔진으로 HDR을 구현할 때 과다 노출되기 쉬운 밝은 물체의 포인트 클라우드 품질이 향상되었습니다.
Settings/Settings2D와 같은 데이터 유형을 문자열에서 직렬화/역직렬화하기 위한 API가 추가되었습니다.serialize()메서드와fromSerialized()정적 함수를 사용하여 객체를 직렬화/역직렬화합니다.객체는 YAML 형식을 사용하여 직렬화됩니다.
Ubuntu 24.04에 대한 지원이 추가되었습니다.
Zivid 2 및 2+ 펌웨어를 버전 1.26.3으로 업데이트했습니다.
Bug Fixes
Intel GPU 드라이버를 사용할 때 Windows에서 캡처하는 동안 발생할 수 있는 충돌을 해결했습니다.
설정의 리샘플링 옵션을 카메라 Intrinsics 함수가 따르지 않는 버그를 수정했습니다.
Application::cameras()를 호출하면 CPU 코어 하나가 100% 사용되는 문제가 해결되었습니다.Application::cameras()를 호출할 때 드물게 발생할 수 있는 충돌을 수정했습니다. 이는 함수 호출 중에 카메라의 상태가 변경된 경우(예: 카메라에 접근할 수 없게 되거나 네트워크에서 사라진 경우)에 발생할 수 있습니다.잘못 패딩된 이더넷 프레임이 삭제되어 카메라 연결 시 예외가 발생하는 펌웨어 버그를 수정했습니다. VLAN 구성을 사용하는 일부 스위치에서 이 문제가 발생했습니다.
SDK 애플리케이션이 캡처 중에 중단되면 카메라 네트워크 인터페이스가 멈추고 카메라가 재부팅되는 펌웨어 버그를 수정했습니다.
이전 SDK 버전에서 업그레이드하면 설치 디렉터리에 파일이 누락되는 Windows 설치 프로그램의 문제를 해결했습니다.
Windows 설치 프로그램에서 중복되거나 이전에 설치 제거된 Zivid SDK 항목이 Windows “Programs and Features” / “Installed Apps” 목록에 표시되는 문제를 해결했습니다.
Zivid GenICam 래퍼를 설치할 때 Windows 설치 프로그램에서 환경 변수가 없으면 Zivid SDK가
GENICAM_GENTL64_PATH에 추가되지 않고 RegAddPathToVar 오류에 대한 팝업 대화 상자가 표시되는 문제를 해결했습니다.
Studio
메인 메뉴 막대를 통해 접근할 수 있는 새로운
Cameras창이 추가되었습니다. 이 창에는 발견된 모든 Zivid 카메라 목록이 포함되어 있습니다.표에는 각 카메라의 일련번호, 모델명, IP 주소 및 현재 상태가 나열되어 있습니다.
펌웨어 버전과 하드웨어 개정 정보는 모델 이름 위에 마우스를 올리면 툴팁으로 제공됩니다.
Zivid 카메라의 네트워크/IP 설정을 위한 양식이 추가되었습니다. 이 양식은
Cameras창에서 카메라 IP 주소 옆에 있는Configure버튼을 클릭하면 표시됩니다.Cameras창을 사용하여 여러 카메라의 펌웨어를 병렬로 업데이트할 수 있는 지원이 추가되었습니다.About Zivid Studio,Legal Notices및System Information창의 모양과 느낌을 조정했습니다.“…” 버튼을 클릭했을 때 표시되는 팝업 메뉴의 모양과 느낌을 조정했습니다.
노출 시간과 같은 일부 설정에 대한 값을 입력한 다음 Tab 키를 눌러 다음 설정으로 이동하면 숫자 값이 가장 가까운 권장 값(노출 시간의 경우 8333 또는 10000의 가장 가까운 배수)으로 변경되는 버그가 수정되었습니다.
Windows 설치 프로그램의 마지막 페이지에 “Launch Zivid Studio” 옵션이 추가되었습니다.
Deprecation notice
SDK 2.13은 C++ API에서 C++11을 지원하는 마지막 릴리스입니다. SDK 2.14 이상에서는 C++17 이상이 필요합니다.
Known issues & limitations
자주 발생하는 문제 및 제한 사항들은 <https://support.zivid.com/latest/support/troubleshooting.html> 를 참조하십시오.
2.12.0
API
Nvidia Jetson Orin에 대한 지원이 추가되었습니다.
Nvidia Jetson Orin 사용 시 알려진 문제에 대해서는 아래의 “Known issues & limitations” 을 참조하세요.
Omni 엔진의 품질과 성능이 개선되었습니다.
새롭게 개선된 Omni 엔진 버전은 더 짧은 시간에 투명한 물체에 대한 더 나은 적용 범위를 제공합니다.
이제 Omni를 사용하면 전경과 배경 사이의 거리를 더 넓혀 투명한 객체를 캡처할 수 있습니다.
에지 아티팩트, 떠다니는 평면, 떠 다니는 포인트들이 대폭 감소합니다.
이제 Omni 엔진은 동일한 수준의 커버리지를 확보하는 데 필요한 광량이 줄어들어 모든 Zivid 2+ 카메라 모델에서 획득 시간을 최대 2배까지 단축할 수 있습니다. Zivid 2+ M60의 경우 획득 시간이 28% 더 단축됩니다.
Settings::RegionOfInterest::Box를 사용하면 이제 수집 및 처리 시간이 크게 단축될 수 있습니다.SDK는 관심 영역 밖에 있을 것으로 보장되는 센서 데이터를 수집하고 처리하는 것을 피할 수 있습니다.
속도 향상은 ROI 상자의 크기와 모양에 따라 달라집니다. 일반적으로 카메라 관점에서 볼 때 ROI 상자가 작을수록 속도 향상이 더 큽니다.
하위 샘플링된 2D 캡처를 수행하기 위해 새로운
Settings2D::Sampling::Pixel이 추가되었습니다.하위 샘플링된 2D 캡처는 전체 해상도 2D 캡처보다 상당히 빠를 수 있습니다.
사용 가능한 옵션은
Settings::Sampling::Pixel을 반영하므로 사용자는 동등한 3D 캡처의 색상 데이터와 정확히 일치하는 2D 캡처를 요청할 수 있습니다.
포인트 클라우드를 업샘플링/다운샘플링하기 위한 새로운
Settings::Processing::Resampling이 추가되었습니다.이러한 작업은 다른 모든 처리가 완료된 후에 수행됩니다.
다운샘플링은 포인트 클라우드의 포인트 수를 줄이는 데 사용됩니다. 이는 원래 포인트 클라우드의 2x2 또는 4x4 픽셀 그룹을 각각 새로운 포인트 클라우드의 픽셀 하나로 결합하여 수행됩니다. 이 다운샘플링 기능은 PointCloud 클래스의 downsample() 메서드와 동일합니다.
업샘플링은 기존 서브샘플링 모드와 함께 사용하여 서브샘플링된 캡처의 속도 이점을 유지하면서 출력 포인트 클라우드 해상도를 높일 수 있습니다. 이는 계산된 픽셀을 더 높은 해상도에 매핑하고 가능한 경우 그 사이의 누락된 포인트를 보간함으로써 달성됩니다.
투영 API는 더 이상 실험적이지 않습니다.
함수와 클래스가
Zivid::Experimental네임스페이스에서Zivid::Projection네임스페이스로 이동되었습니다. 관련 헤더도Zivid/Experimental에서Zivid/Projection네임스페이스로 이동되었습니다.
여러 설정이 더 이상 실험적이지 않으며 설정 계층 구조로 이동되었습니다.
엔진 설정이
Settings::Experimental::Engine에서Settings::Engine으로 이동되었습니다.반사 제거 필터의 모드 설정이
Settings::Processing::Filters::Reflection::Removal::Experimental::Mode에서Settings::Processing::Filters::Reflection::Removal::Mode로 이동되었습니다.HoleFilling 필터의 이름이 Hole Repair 필터로 변경되었습니다. 설정은
Settings::Processing::Filters::Experimental::HoleFilling에서Settings::Processing::Filters::Hole::Repair로 이동/이름이 변경되었습니다.이러한 특정 설정을 코드에서 직접 지정한 경우 코드를 새 위치로 업데이트해야 합니다.
이전 SDK에서 생성된 Settings.yml 파일은 2.12에서도 계속 작동합니다. 하지만 이러한 .yml 파일을 수동으로 수정하고 파일 상단의
__version__.data필드를 24 이상으로 업데이트하는 경우, 설정 노드를 새 위치에 맞게 업데이트해야 합니다. 그렇지 않으면 .yml 파일을 로드할 때 “YAML document contains unknown key” 라는 예외가 발생합니다.
Stripe와 Omni 엔진은 더 이상 실험적이지 않습니다.
CameraInfo클래스에HardwareRevision문자열을 추가했습니다.Zivid 2+의 획득 시간 단축:
3D 캡처의 경우 수집 시간이 약 5% 단축되었습니다.
2D 캡처의 경우 수집 시간이 최대 50% 단축되었습니다.
전체 해상도 Phase 엔진 3D 캡처의 RGB 색상 값이 이제 더욱 안정적이고 정확해졌습니다.
이러한 변경으로 인해 노출 시간이 제한된 캡처(고사양 GPU 및 높은 노출 시간)의 경우 성능이 약간 저하되고 컴퓨팅이 제한된 캡처(저사양 GPU 및 낮은 노출 시간)의 경우 성능이 약간 향상됩니다.
저사양 GPU의 성능을 개선하기 위해 3D 캡처를 위한 최적화된 색상 처리:
색상을 활성화한 전체 해상도 3D 캡처가 최대 10% 더 빠릅니다.
색상을 활성화한 하위 샘플링 3D 캡처는 최대 20% 더 빠릅니다.
로컬 모드의 반사 필터가 이제 저사양 GPU에서 최대 15% 더 빨라졌습니다.
카메라 부팅 후 60초 동안 카메라 정보를 투사하는 시작 화면을 추가했습니다.
시작 화면에는 Zivid 로고, 카메라 일련 번호, IP 주소, 펌웨어 버전 및 네트워크 링크 상태가 표시됩니다.
시작 화면은 60초 후, 또는 SDK/Studio를 통해 카메라에 연결하면 사라집니다.
시작 화면은 기본적으로 활성화되어 있으며, ZividNetworkCameraConfigurator 도구를 사용하여 비활성화할 수 있습니다.
여러 로컬 네트워크 인터페이스에서 접속 가능한 카메라가 더 이상 접속 불가로 보고되지 않습니다.
이전에는 여러 로컬 네트워크 인터페이스에서 카메라의 IP에 접근할 수 있는 경우, 해당 카메라의 상태는
inaccessible이고CameraState::InaccessibleReason은ipInMultipleLocalSubnets였습니다. 이 조건이 참이 되는 유효한 네트워크 구성이 있으므로, 이 조건은 더 이상 접근 불가 카메라로 보고되지 않습니다.
Zivid 2 및 2+ 펌웨어를 버전 1.22.4로 업데이트했습니다.
.NET
.NET에 Infield Calibration에 대한 지원이 추가되었습니다.
Bug fixes
detectFeaturePoints(Frame)함수가Frame이captureCalibrationBoard(Camera)함수에서 나오지 않으면 예외를 발생시키는 버그를 수정했습니다. 이제detectFeaturePoints(Frame)은 모든Frame을 입력으로 허용하며, 사용자가DetectionResult를 현장 검증이나 수정에 사용하려고 시도하는 경우에만 더 엄격한 요구 사항이 적용됩니다.Omni 엔진의 SNR이 가려지고 노이즈가 많은 영역에서 잘못 계산되는 버그를 수정했습니다. 이로 인해 노이즈 필터를 효과적으로 사용하여 노이즈가 많은 가장자리를 제거하는 데 방해가 되었습니다.
Windows에서 일부 최신 버전의 Intel OpenCL 드라이버에서 발생할 수 있는 충돌을 해결했습니다. 이는
Frame2D객체가 활성 상태인 동안Application이 파괴된 경우입니다.캡처가 “Internal error: The acquisition done signal was never received!” 예외로 인해 실패하는 매우 드문 버그를 수정했습니다.
Studio
정보 패널에 “Acquisition Time” 이 추가되었습니다. “Acquisition Time” 은 캡처 시작부터 카메라가 마지막 이미지를 획득할 때까지의 기간으로 정의됩니다.
“File” 메뉴에 “Save Depth Map” 옵션을 추가하여 심도 맵을 Jet 색상으로 매핑된 .png 이미지로 저장할 수 있습니다.
정보 패널의 모든 설정 노드에 설명적인 도구 설명을 추가했습니다.
CLI
이제 ZividListCameras의 출력에 제품 라벨에 인쇄된 버전과 일치하는 영숫자 문자열로 “Hardware Revision” 이 표시됩니다. 이전에는 정수 형태의 주 버전과 부 버전이 표시되었습니다.
이제 ZividFirmwareUpdater가 카메라를 찾을 수 없는 경우 오류 코드와 함께 종료됩니다. 이전에는 오류 코드 0과 함께 도구가 정상적으로 종료되었습니다.
Removal of support
Zivid One+ 카메라는 더 이상 SDK에서 지원되지 않습니다. Zivid One+를 지원하는 마지막 SDK는 2.11입니다.
연결된 Zivid One+ 카메라는 API, Zivid Studio 또는 ZividListCameras에 표시되지 않습니다.
Ubuntu/Linux의
zivid-telicam-driver데비안 패키지와 Windows의 TELICAMSDK 애플리케이션은 더 이상 SDK에 필요하지 않습니다. Zivid SDK Windows 설치 프로그램을 사용하면 컴퓨터에서 TELICAMSDK를 제거할 수 있습니다.
Visual Studio 2017은 더 이상 SDK에서 지원되지 않습니다. Windows 사용자는 Visual Studio 2019 이상으로 마이그레이션해야 합니다.
Known issues & limitations
Nvidia Jetson Orin의 알려진 문제:
모든 Jetson Orin 모듈이 지원되며, Zivid는 Orin AGX, Orin NX 및 Orin Nano 모듈을 테스트했습니다.
Jetson Orin Nano는 SDK에서 지원하지만, Orin Nano의 총 RAM 용량은 4GB/8GB에 불과하며, 이는 GPU와 CPU가 공유합니다. 4GB는 일반적으로 Zivid SDK를 사용하는 애플리케이션을 실행하기에 부족하며, 실제로 8GB는 일부 사용 사례, 특히 장시간 캡처, Stripe/Omni 엔진 사용, 여러 필터 활성화 시 부족할 수 있습니다. 또한 사용자 코드에서 RAM 사용량에 따라 달라질 수 있습니다. Jetson Orin을 8GB 이하의 RAM으로 사용하는 경우 애플리케이션의 RAM 사용량을 신중하게 평가해야 합니다.
Zivid Studio 도구 설명이 예상대로 표시되지 않는 경우가 있습니다. 해결 방법은 “System Monitor” 처럼 화면에 계속 표시되는 다른 애플리케이션을 열어 두는 것입니다.
Visualizer 클래스는 키보드 단축키를 사용할 때 포인트 클라우드 출력을 올바르게 업데이트하지 못할 수 있습니다.
자주 발생하는 문제 및 제한 사항들은 <https://support.zivid.com/latest/support/troubleshooting.html> 를 참조하십시오.
2.11.1
API
Zivid 2 및 2+ 펌웨어를 버전 1.20.8로 업데이트했습니다.
Bug fixes
Zivid 2 및 2+에서 DHCP 모드로 구성된 카메라가 카메라 연결 시 “Timed out waiting for …” 예외가 발생하는 버그를 수정했습니다. 이 버그는 SDK 2.11.0에서 처음 발생했습니다.
Zivid 2 및 2+ 버전에서
Zivid::Experimental::Projection::showImage()를 계속 호출할 때 잘못된 이미지가 투영되는 버그를 수정했습니다. 이 버그는 2.10.0 버전에 해당 기능이 도입된 이후부터 존재해 왔습니다.
Deprecation notice
SDK 2.11은 Zivid One+를 지원하는 마지막 SDK입니다. 2.11은 Zivid One+를 위한 장기 지원(LTS) 버전입니다. 2.11은 2026년 12월까지 One+ 운영에 영향을 미칠 수 있는 심각한 버그나 보안 문제를 수정한 패치 업데이트를 받을 예정입니다.
2.11.0
API
Zivid 2+에
Settings::Sampling::Pixel::blueSubsample4x4/redSubsample4x4가 추가되었습니다.이는 투영 색상과 포인트 클라우드 처리를 위한 픽셀 샘플링 방식을 제어합니다.
blueSubsample4x4/redSubsample4x4모드는 파란색 또는 빨간색 빛을 투사하고 픽셀의 16분의 1을 샘플링합니다(Zivid 2+에서 612x512 해상도).blueSubsample2x2/redSubsample2x2와 비교했을 때, 이러한 새로운 모드는 데이터 수집과 GPU 처리 시간을 모두 가속화하고 GPU 메모리 사용량을 줄여줍니다.Zivid 2+를 사용하면 최대 포인트 클라우드 캡처 속도가 거의 두 배로 빨라집니다(약 100ms에서 50-60ms로).
컴퓨팅 집약적 설정(예:
Omni엔진)을 사용하여 성능이 낮은 GPU에서 포인트 클라우드를 캡처하는 경우2x2모드에 비해4x4모드에서 최대 3배 더 빠릅니다.ParcelsFast,ParcelsQuality,ConsumerGoodsFast라는 Zivid 2+ 설정 Presets이4x4모드를 활용하도록 수정되었습니다.
검색된 모든 Zivid 2 및 2+ 카메라는 이제
Application::cameras()에서 반환됩니다.SDK는 멀티캐스트 DNS 프로토콜을 사용하여 로컬 서브넷에 있는 Zivid 카메라를 검색합니다. 여기에는 PC와 호환되지 않는 IP 구성을 가진 Zivid 카메라가 포함됩니다. 예를 들어 IP/서브넷 설정이 일치하지 않거나, 동일한 IP 주소를 가진 Zivid 카메라가 여러 대 있는 경우가 있습니다. 멀티캐스트 메시지는 사무실/LAN 네트워크 어댑터 등을 포함한 모든 로컬 네트워크 어댑터의 PC에서 전송됩니다.
PC와 호환되지 않는 IP 설정을 가진 카메라는
inaccessible상태로 표시됩니다. Zivid SDK/Studio에서 카메라를 사용하려면 카메라의 IP 설정을 업데이트하거나 PC 네트워크 어댑터 구성을 조정해야 합니다. 카메라의 IP는ZividNetworkCameraConfiguratorCLI 도구를 사용하여 일련 번호를 사용하여 변경할 수 있습니다. 변경 로그의 CLI 섹션을 참조하세요.Zivid 2 및 2+ 카메라가 다른 프로세스에서 사용 중이면
Application::cameras()에서도 반환되고busy상태가 됩니다.참고! 이는 이전 SDK 버전에서 변경된 동작입니다. 이전에는 액세스할 수 없는 카메라(즉, TCP/IP를 통해 연결할 수 없거나 다른 프로세스에서 이미 연결된 카메라)는
Application::cameras()에서 반환되지 않았습니다.Zivid 설정 디렉터리에 Cameras.yml 파일이 있는 경우, Cameras.yml의 항목과 일치하는 Zivid 2 및 2+ 카메라만 반환됩니다. Cameras.yml은 One+ 카메라에는 영향을 미치지 않습니다.
카메라가 사용 가능한지, 접근할 수 없는지, 사용 중인지, 펌웨어 업데이트가 필요한지 등을 나타내는
CameraState클래스에Status열거형을 추가했습니다. 가능한 상태에 대한 자세한 내용은CameraState::Status문서를 참조하세요.CameraState클래스에InaccessibleReason열거형을 추가하여inaccessible상태인 카메라에 대한 추가 정보를 제공합니다. 이 열거형은 IP 충돌, 서브넷 설정 오류 등 문제의 원인을 나타냅니다.CameraState클래스에 카메라의 IP 주소를 반환하는Network::IPV4::Address문자열을 추가했습니다.Stripe 엔진은 이제 모든 반사 필터 모드를 지원합니다.
Global반사 필터 외에도Local반사 필터를 선택하거나 반사 필터를 완전히 비활성화할 수도 있습니다. 이 기능은 케이블이나 파이프처럼 얇은 물체를 재구성해야 하는 경우에 유용하지만, 반사 처리 및 포인트 클라우드 품질이 다소 저하될 수 있습니다.
더 나은 수집, 데이터 전송 및 처리 파이프라인을 통해 연속 캡처 속도가 향상되었습니다.
이제 SDK는 동일한 카메라를 사용한 이전(2D 또는 3D) 캡처가 전송/처리되는 동안 다음(2D 또는 3D) 캡처의 획득을 시작할 수 있습니다. 이 릴리스 이전에는 동일한 카메라에서 이전에 캡처된 모든 캡처의 전송 및 처리가 완료될 때까지 다음 캡처가 시작되지 않았습니다.
네트워크 속도와 GPU 성능에 따라, 고성능 Nvidia GPU에서는 총 2D+3D 캡처 시간이 약 15~20ms, 통합 Intel GPU에서는 약 50~70ms 향상됩니다.
가능한 한 빨리 연속 캡처를 수행하려면 이전
Camera::capture()가 반환된 후(해당 캡처의 이미지 획득이 완료된 직후) 가능한 한 빨리Camera::capture()를 호출하세요.frame.pointCloud()또는frame.imageRGBA()와 같은 일부Frame/Frame2D메서드 호출은 해당 캡처 처리가 완료될 때까지 차단됩니다. 따라서 최대 속도를 위해서는 다음 캡처를 시작하기 전에 동일한 스레드에서 이러한 메서드를 호출하지 않는 것이 좋습니다. 예를 들어 별도의 캡처/처리 스레드를 사용하거나std::async를 사용하는 것이 좋습니다.
Stripe/Omni 엔진이 탑재된 Zivid 2 및 2+ 카메라의
Camera::capture()반환 시간이 낮은 GPU에서 개선되었습니다.이 릴리스 이전에는 캡처 완료 후 capture() 함수가 즉시 반환되지 않았습니다. 캡처 완료 후
capture()함수가 반환되기 전까지 최대 100~200ms의 지연이 발생할 수 있었습니다. 이 지연은 일반적으로 Intel 내장 GPU와 같이 성능이 낮은 GPU에서만 발생했습니다. 이번 릴리스부터는 캡처 설정 및 GPU에 관계없이 캡처 완료 후 몇 ms 이내에Camera::capture()함수가 반환됩니다.
컴퓨팅이 제한적(노출 시간이 짧음)일 때 Stripe/Omni 엔진을 사용하여 캡처 속도를 최대 10%까지 향상시킵니다.
Image클래스에 .png/.bmp/.jpg 파일 경로에서 이미지를 구성하는 생성자를 추가했습니다.sRGB 색상 공간에서 색상을 복사하기 위해
PointCloud및Frame2D클래스에 새로운ColorSRGB출력 형식이 추가되었습니다.sRGB 색 공간은 사람이 볼 수 있도록 디스플레이에 이미지를 표시하는 데 적합합니다. sRGB 출력 형식을 사용하면 기존 (선형) 색상 형식보다 색상이 더 밝고 정확하게 표현됩니다.
Camera::toString()의 출력을 변경했습니다 :새로운
Status필드가 추가되었습니다.Network Path필드의 이름이IP Address로 변경되었습니다.Internal camera id및Projector firmware tag필드는 제거되었습니다.
연결이 끊긴 파일 카메라는 이제 사용자가 파일 카메라의 핸들을 보유하고 있는 한
Application::cameras()에서 반환됩니다. 이 릴리스 이전에는 연결이 끊긴 파일 카메라가cameras()에 포함되지 않았습니다.Zivid 2와 Zivid 2+ 펌웨어를 1.20.6 버전으로 업데이트했습니다.
C++
Resolution객체에서 이미지 크기를 반환하는Zivid::Image::resolution()멤버 함수가 추가되었습니다.하위 샘플링된 캡처의 픽셀이 전체 해상도 캡처의 픽셀에 어떻게 매핑되는지에 대한 정보를 검색하기 위해 새로운 함수
Experimental::Calibration::pixelMapping()을 추가했습니다.
.NET
Zivid 프로젝터로 사용자 정의 컬러 이미지를 투사하기 위한 실험적 투사 API가 추가되었습니다.
이 API는 2.10.0에서 C++ 및 Python에 추가되었으며, 이제 .NET에서 사용할 수 있습니다.
Zivid 2 및 Zivid 2+에서 사용 가능합니다.
Image클래스에Resolution속성을 추가해Resolution객체에서 이미지 크기를 반환합니다.
Bug fixes
Zivid.NET.CloudVisualizer인스턴스를 동일한 프로세스에서 여러 번 실행할 수 없는 .NET 래퍼의 버그를 수정했습니다.Zivid 2 이상에서
Settings::Sampling::Pixel을blueSubsample2x2/redSubsample2x2로 설정하고Settings::Sampling::Color::rgb와 함께 3D 캡처를 수행할 때 카메라가 단시간 동안 100W 이상의 전력을 사용하는 문제를 수정했습니다. 이 경우 Config.yml의Camera/Power/Limit옵션을unlimited로 설정하지 않으면 카메라의 전력 사용량이 100W 미만으로 유지됩니다. 전력 제한 설정에 대한 자세한 내용은 2.10.1 버전 변경 로그를 참조하세요.특정한 드문 상황에서 카메라와의 연결을 끊을 때 발생할 수 있는 “StructuredLightCamera::~StructuredLightCamera was invoked in the wrong thread” 예외를 수정했습니다.
CLI
이제 ZividNetworkCameraConfigurator는 TCP/IP를 통해 카메라에 접근할 수 없는 경우에도 카메라의 일련 번호만 주어지면 카메라 IP 설정을 구성할 수 있습니다.
이 도구는 멀티캐스트 UDP 메시지를 사용하여 검색된 모든 Zivid 카메라의 네트워크 설정을 구성할 수 있습니다. 네트워크 설정을 변경하기 위해 카메라에 TCP/IP로 연결할 필요가 없으므로 카메라 네트워크 설정을 간편하게 변경할 수 있습니다.
이 기능을 사용하려면 카메라의 펌웨어 버전이 1.17.1 이상(SDK 2.10.0 이상)이어야 합니다. 이전 펌웨어 버전을 사용하는 카메라의 경우, SDK 2.10 이하 버전처럼 직접 TCP/IP 연결을 통해 카메라에 연결해야 합니다.
ZividListCameras는 이제 접근 불가능하거나 사용 중인 카메라를 포함하여 검색된 모든 Zivid 2 및 2+ 카메라를 나열합니다.
Status필드는 카메라의 상태를 보여줍니다. 자세한 내용은 API 섹션을 참조하세요.ZividListCameras는 더 이상 검색된 각 카메라에 대해
camera.connect()를 자동으로 호출하지 않습니다.--test-connect인수를 전달하여 각 카메라에 연결할 수 있으며, 이 인수는 TCP/IP를 통해 카메라에 접근할 수 있는지 확인하는 데 유용합니다.이제 ZividListCameras는 PC에 Cameras.yml 파일이 있는 경우 알림 메시지를 인쇄합니다.
각 카메라에 대한 ZividListCameras의 출력이 변경되었습니다. 위 API 섹션에서
Camera::toString()변경 사항에 대한 설명을 참조하세요.
Studio
3D 보기와 2D 색상 이미지 보기의 색상/RGB 값은 이제 sRGB 색상 공간에 표시됩니다.
이를 통해 이전 버전의 Studio에서는 선형 RGB 색상 공간에서 색상을 표시했던 것과 비교했을 때 컬러 이미지가 모니터에서 더 밝고 정확하게 보입니다.
Studio에서 색상/RGB 이미지를 저장할 때 사용자는 sRGB 또는 linear 색상 공간을 사용할지 선택할 수 있습니다.
.ply, .pcd 또는 .xyz 형식으로 내보낸 3D 포인트 클라우드는 여전히 선형 RGB 색상 공간에 색상을 저장합니다.
Studio에서는 이전에는 API나 Studio를 통해 표시되지 않았던 접근 불가능 카메라와 사용 중인 카메라를 모두 표시합니다. 접근 불가능한 카메라의 경우, 카메라 설정 방법에 대한 유용한 설명이 표시됩니다.
카메라 선택기 콤보박스에 IP 주소와 카메라 상태가 추가되었습니다.
Studio는 이제 모든 카메라의 연결 상태를 주기적으로 확인합니다. Studio는 새 카메라, 연결 해제된 카메라, 그리고 상태 변경(예: 카메라 상태 변경 또는 IP 주소 변경)을 자동으로 감지합니다.
Removal of support
AMD 컴퓨팅 장치/GPU는 더 이상 SDK에서 지원되지 않으며 다음과 같은 오류 메시지가 표시됩니다.
지원되는 컴퓨팅 장치로는 Nvidia GPU와 Intel GPU가 있습니다.
AMD CPU는 Nvidia 또는 Intel GPU와 함께 사용하는 경우 사용할 수 있습니다.
사용자는 Config.yml 옵션
ComputeDevice/AllowUnsupported를yes로 설정하여 지원되지 않는 컴퓨팅 장치로 실행하도록 선택할 수 있습니다. 하지만 이러한 설정은 예상치 못한 결과와 오류를 초래할 수 있으며, Zivid에서 테스트되지 않았습니다. 자세한 내용은 기술 자료를 참조하세요.
Deprecation notice
Visual Studio 2017 지원은 2.10.1 버전부터 중단되었으며, 다음 SDK 릴리스에서 제거될 예정입니다. VS 2019 이상으로 마이그레이션하는 것이 좋습니다.
Known issues & limitations
자주 발생하는 문제 및 제한 사항들은 <https://support.zivid.com/latest/support/troubleshooting.html> 를 참조하십시오.
2.10.1
API
Zivid 2+ M60 및 Zivid 2+ L110에 대한 지원이 추가되었습니다.
Zivid 2+ M60에 대해 자세히 알아보려면 <https://www.zivid.com/zivid-2-plus-m60>을 참조하세요.
Zivid 2+ L110에 대해 자세히 알아보려면 <https://www.zivid.com/zivid-2-plus-l110>을 참조하세요.
Zivid 2+ 카메라만 해당: 이제 Stripe 엔진을 사용할 때 ContrastDistortion Correction 필터를 비활성화할 수 있습니다.
CD 보정 필터는 가장자리를 매끄럽게 만들어 주므로, 이 필터를 비활성화하면 가장자리 세부 정보를 보존하는 데 유용할 수 있습니다.
참고: Zivid 2 및 One+ 카메라는 변경되지 않았으며 Stripe 엔진을 사용하는 경우 여전히 이 필터를 켜야 합니다.
Settings::Processing::Filters::Cluster::Removal::MaxNeighborDistance의 최소 가능 값을 4에서 2로 낮췄습니다.MaxNeighborDistance값을 4보다 작게 설정하면 특정 장면에서 더 많은 불량 지점을 제거하는 데 유용할 수 있습니다.Zivid 2+ 카메라만 해당: 백색광을 투사할 때 최대 밝기 설정이 2.5에서 2.2로 감소했습니다.
Settings::Sampling::Pixel::all을 사용하여 2D 캡처 및 3D 캡처 시 최대 밝기가 2.5에서 2.2로 감소합니다. 밝기를 2.2보다 높게 설정하면 예외 메시지가 발생합니다.API에서 2D 캡처의 기본 밝기가 2.5에서 2.2로 변경되었습니다. 3D 캡처의 기본값은 2.5로 유지됩니다.
이 변경 사항은 두 대 이상의 카메라가 촬영할 때 전력 사용량을 100W 미만으로 유지하기 위한 것입니다. 애플리케이션에서 100W 이상의 전력 소비를 허용하는 경우, Config.yml의 “Camera/Power/Limit” 옵션을 사용하여 이 제한을 제거하고 2.5 버전을 계속 사용할 수 있습니다.
자세한 내용은 <https://support.zivid.com/en/latest/reference-articles/settings/acquisition-settings/projector-brightness.html> 을 참조하세요.
Zivid 2와 Zivid 2+ 펌웨어를 1.18.4 버전으로 업데이트했습니다.
Bug fixes
Zivid 2 및 2+가 10GbE에서 작동하지 않을 때 이더넷 패킷을 삭제하고 연결이 끊어지는 버그를 수정했습니다.
Zivid 2+ M130에서 대비 왜곡 보정 필터를 사용할 때 과도한 포인트 클라우드 평활화가 발생할 수 있는 버그를 수정했습니다.
Deprecation notice
Visual Studio 2017 사용에 대한 지원은 더 이상 제공되지 않으며 다음 SDK 릴리스에서 제거될 예정입니다.
Zivid에서는 최신 Visual Studio 버전으로 전환할 것을 권장합니다.
AMD 컴퓨팅 장치/GPU 사용 지원은 2.10.1에서 더 이상 지원되지 않으며 2.11.0에서 제거됩니다.
AMD 컴퓨팅 장치는 드라이버의 사용률 저하 및 OpenCL 안정성 문제로 인해 더 이상 지원되지 않습니다.
지원되는 컴퓨팅 장치는 Nvidia GPU와 Intel GPU입니다.
Config.yml 파일에서 옵션을 활성화하여 지원되지 않는 컴퓨팅 장치에서 SDK를 실행하도록 설정할 수 있습니다. 하지만 이러한 설정은 예상치 못한 결과와 오류를 초래할 수 있으며, Zivid에서 테스트하지 않았습니다.
2.10.0
API
Zivid 2+ M130에 대한 지원 추가되엇습니다.:
Zivid 2+ M130은 더 높은 해상도의 포인트 클라우드 및 2D 컬러 이미지, 개선된 색상 및 향상된 개체 적용 범위를 제공합니다. 이 카메라에 대한 자세한 내용은 <https://www.zivid.com/zivid-2-plus-m130> 을 참조하십시오.
Zivid 2+를 위한 새로운 Omni vision engine 추가:
투명하고 어려운 물체에 더 높은 적용 범위. Omni Engine에 대한 자세한 내용은 <https://support.zivid.com/en/latest/reference-articles/settings/vision-engine/omni-engine.html> 을 참조하십시오.
Zivid 2 및 Zivid 2+에 대한
Settings::Sampling::Pixel::all/blueSubsample2x2/redSubsample2x2추가되엇습니다:포인트 클라우드 처리를 위해 투영 색상과 픽셀이 샘플링되는 방법을 제어합니다.
blueSubsample2x2/redSubsample2x2는 블루 라이트 또는 레드 라이트를 투사하고 픽셀의 1/4을 샘플링합니다. 이러한 옵션은 포인트 클라우드의 캡처 시간, 메모리 사용량 및 해상도를 줄입니다. 또한 주변 조명과 반짝이는 개체에 대해 더 나은 성능을 제공할 수 있습니다.Zivid 2+의 기본값은
blueSubsample2x2입니다. 전체 해상도(5MP) 포인트 클라우드를 원하면all로 설정하십시오.Zivid 2의 기본값은 ‘all’ 입니다.
AMD GPU를 사용하는 경우 아래의 “New known issues in this release” 섹션에서 알려진 문제를 참조하십시오.
색상 샘플링 구성을 위한
Settings::Sampling::Color::rgb/disabled추가:‘disabled’ 로 설정하면 색상 데이터가 PointCloud에 포함되지 않습니다.
‘disabled’ 는 캡처 속도를 최적화합니다.
‘disabled’ 는 ‘Settings::Sampling::Pixel’ 서브샘플링 모드에서 별도의 흰색 프로젝터 빛을 사용하지 않습니다.
기본값은
rgb입니다.
Settings::Processing::Filters::Noise::Suppression추가:포인트 클라우드에서 노이즈와 Outliers을 줄입니다.
이 필터는 상호 반사로 인한 파급 효과를 줄이는 데에도 사용할 수 있습니다.
매우 미세한 세부 사항을 구별해야 하므로 스무딩 효과를 피해야 하는 경우 이 필터를 비활성화하는 것이 좋습니다.
Settings::Processing::Filters::Noise::Repair추가:노이즈 포인트로 인해 누락된 데이터 영역을 복구하여 표면 적용 범위를 개선합니다.
포인트 클라우드의 모든 포인트가 신뢰도가 높아야 하는 경우 이 필터를 비활성화하는 것이 좋습니다.
실험용
Zivid::Experimental::ProjectionAPI를 추가하여 Zivid 프로젝터로 사용자 지정 컬러 이미지를 투사합니다.Zivid 2 및 Zivid 2+ 카메라 모델에서 사용할 수 있습니다.
장면의 3D 지점에 해당하는 프로젝터 픽셀로 조명할 수 있습니다.
주어진
Settings또는Settings2D에 적합한 내장 함수를 가져오도록 실험용 내장 함수 API를 확장했습니다.Settings::Sampling::Pixel의 도입으로 단일 카메라 모델에서 다양한 출력 해상도를 생성할 수 있습니다. 새 Intrinsics 함수를 사용하여 출력 해상도에 적합한 Intrinsics 함수를 가져옵니다.원래 함수는 주어진 카메라 모델의 기본
Settings에 해당하는 Intrinsics 함수를 생성합니다. <https://support.zivid.com/en/latest/reference-articles/default-settings.html> 에서 모든 기본 설정을 확인하십시오.
50Hz 및 60Hz 주변 광원에 맞게 조정된 Presets 설정을 추가했습니다.
더 큰
HoleSize값으로 구멍 채우기 필터의 향상된 성능:High-end 하드웨어에서 2배-4배 더 빠르고 Low-end 하드웨어에서 최대 15% 더 빠릅니다.
HoleSize값이 클수록 속도 향상이 증가합니다.HoleSize는 약 0.2-0.3입니다.필터는 작은
HoleSize값(약 0.1)과 High-end 하드웨어의 경우 약 5-10ms로 느려질 수 있습니다.
Zivid 2 M70 및 Zivid 2 L100 카메라에 대한
CameraInfo::ModelName문자열 변경:M70의 모델명이 “Zivid Two” 에서 “Zivid 2 M70” 으로 변경되었습니다.
L100의 모델명이 “Zivid Two L100” 에서 “Zivid 2 L100” 으로 변경되었습니다.
프로그래밍 방식으로 카메라 모델을 확인하려면
CameraInfo::Model을 확인하는 것이 좋습니다.
FileCameraZividOne.zfc 파일 카메라 로드에 대한 지원이 제거되었습니다. 새로운 파일 카메라는 <https://support.zivid.com/en/latest/academy/camera/file-camera.html> 에서 사용할 수 있습니다.
Zivid 2 및 Zivid 2+ 펌웨어를 버전 1.17.1로 업데이트했습니다.
Ubuntu 18.04에 대한 지원이 종료되었습니다.
C++
시작 및 끝 iterators/pointers에서 이미지를 생성하기 위해
Zivid::Image에 constructors를 추가했습니다.2D 공간에서 점을 나타내는 클래스
Zivid::PointXY를 추가했습니다.Zivid::Array2D에 대한 전역begin/end/cbegin/cend반복자 함수를 추가했습니다.
Bug fixes
Frame::clone()이 PointCloud 데이터의 shallow 복사(deep 복사가 아님)를 수행하는 버그를 수정했습니다.Z가 NaN이 아닌데 점의 X 및 Y 좌표가 NaN일 수 있는 버그를 수정했습니다. 이 버그는 매우 낮은 확률로 ContrastDistortion 필터가 활성화된 경우에만 발생했습니다.
Studio
2D 캡처에 대한 지원이 추가되었습니다.
Presets 설정에 대해 주변광 적응(50Hz/60Hz/끄기)을 활성화하는 옵션이 추가되었습니다.
이제 사용자는 캡처 버튼을 활성화하기 전에 Presets 또는 Capture Assistant를 선택하거나 Manual Mode로 변경해야 합니다.
설정 슬라이더의 시각적 위치가 텍스트 상자에 표시된 실제 값과 일치하지 않는 버그를 수정했습니다.
Stripe Engine을 선택할 때 표시되던 정보 상자가 제거되었습니다.
New known issues in this release
AMD GPU만 해당: Zivid 2 M70 또는 L100을 사용하여
Settings::Sampling::Pixel이blueSubsample2x2또는redSubsample2x2로 설정된 multi-acquisition HDR을 사용하여 캡처하면 “A Halide error occurred: Failed to execute pipeline” 예외가 발생했습니다. 자세한 내용은 <https://support.zivid.com/en/latest/support/failed-to-execute-pipeline.html> 을 참조하십시오.자주 발생하는 문제 및 제한 사항들은 <https://support.zivid.com/latest/support/troubleshooting.html> 를 참조하십시오.
2.9.0
API
Cluster 제거 필터가 추가되었습니다.:
포인트 클라우드에서 작은 Cluster와 각각의 Floating 포인트들을 제거합니다. 이는 반사 및 부분적으로 가려진 영역에서 발생할 수 있습니다.
MaxNeighborDistance설정은 포인트를 그룹화할 때 알고리즘이 얼마나 엄격한지를 제어합니다. 값이 낮으면 희박하고 잡음이 많은 데이터와 반사면도 제거하는 경향이 있습니다. 유용한 데이터가 제거되지 않도록 주의해서 낮은 값을 사용하십시오.‘MinArea’ 설정은 mm^2 단위로 지정되며 Cluster가 유지되기 위해 가져야 하는 최소 영역을 정의합니다.
필터의 처리 오버헤드는 고급 Nvidia 및 AMD GPU에서 약 10 ms, Intel GPU에서 75-225 ms입니다.
이 필터는 기본적으로 꺼져 있습니다.
Capture Assistant는 이 필터를 켭니다.
Gaussian 필터의 성능이 개선되었습니다.:
Gaussian 필터는 전경과 배경 가장자리 사이(예: 개체의 뒷면/그림자 측면)에 더 이상 잘못된 평면을 만들지 않습니다. 예를 들어 새 필터는 상자의 전면 가장자리와 같은 개체의 대규모 3차원 모양을 보존하는 데 약간 더 좋습니다.
노이즈가 많은 평면에서 시그마 매개변수의 동일한 값은 이전 버전의 필터에서와 거의 동일한 양의 평활화를 제공합니다.
관심 영역 기능이 추가되었습니다.:
관심 영역 상자는 설정에서 지정할 수 있습니다. 이 상자 밖의 모든 포인트는 필터링됩니다(NaN으로 설정).
상자는 OA와 OB라는 두 벡터를 정의하는 3개의 점 O, A, B로 지정됩니다. 점 O와 벡터 OA 및 OB는 함께 평행사변형을 정의합니다. 상자를 정의하기 위해 평행사변형이 표면 법선 벡터를 따라 돌출되는 방법을 정의하는 두 개의 범위 값이 제공됩니다.
깊이 (Z) 범위도 지정할 수 있습니다. 이렇게 하면 이 범위를 벗어나는 Z 좌표를 가진 모든 포인트가 필터링됩니다.
관심 영역은 캡처 시간이나 포인트 클라우드의 데이터 양을 줄이지 않습니다.
관심 영역은 매우 작은 처리 오버헤드를 추가합니다.
이제
Camera::capture()함수는 이미지 획득이 완료된 직후 반환됩니다.‘capture()’ 가 반환되면 모든 이미지가 획득되고 프로젝터가 패턴 투사를 중지한 것입니다. 이 시점에서 카메라를 안전하게 이동하거나 로봇을 작업 공간으로 이동하거나 동일한 작업 공간과 겹치는 두 번째 카메라에서 캡처할 수 있습니다. 캡처가 완료되고 포인트 클라우드를 사용할 수 있기 전에 데이터 전송 및 처리가 남아 있음을 유의하십시오.
frame.pointCloud()를 호출하면 처리가 완료되고 포인트 클라우드를 사용할 수 있을 때까지 차단됩니다.자세한 내용은
capture()함수에 대한 API 문서를 참조하세요.
새로운 실험용 Hole filling 필터를 추가했습니다.
Hole filling은 포인트 클라우드에서 누락된 값을 원형 이웃의 이웃에서 보간합니다.
HoleSize는 채울 구멍의 상대적 직경을 정의합니다. 이 값을 늘리면 더 많은 포인트가 채워지지만 더 많은 계산 시간이 필요합니다. 허용되는 최대 구멍 크기는 거리에 따라 확장되므로 더 먼 거리에서 더 큰 구멍을 채울 수 있습니다.Strictness은 포인트를 채워야 하는지 고려할 때 엄격함의 수준을 제어합니다. 더 높은 수준의 엄격함은 채워지기 위해 더 많은 면에서 유효한 점으로 둘러싸인 누락된 점을 요구합니다. 이 값을 늘리면 더 적은 수의 점이 채워지지만 원형이 아닌 간격(예: 두 가장자리 사이)을 채울 가능성이 줄어듭니다.Hole filling은 3D 포인트만 변경하고 SNR 및 색상 값은 변경하지 않습니다.
자세한 내용은 <https://support.zivid.com/en/latest/reference-articles/settings/processing-settings/hole-filling-filter.html> 을 참조하십시오.
캡처 속도가 개선되었습니다.:
이제 Gaussian 스무딩 필터가 더 빨라졌습니다. 이는 기본 시그마로 필터를 활성화하는 비용이 20-30 ms에서 5-10 ms로 감소하는 Intel GPU에서 가장 두드러집니다. 이 효과는 시그마 값이 높을수록 더욱 강해집니다.
이제 Stripe 엔진으로 캡처할 때 처리 속도가 빨라졌습니다. 이는 전체 Stripe 엔진 캡처 시간 (획득 + 처리)이 최대 15% 감소한 Intel GPU에서 가장 두드러집니다.
Zivid Two의 획득 프로세스는 최적화되어 기본 설정으로 총 캡처 시간 (획득 + 처리)이 GPU에 관계없이 약 10% 감소합니다.
Zivid Two의 온도 안정화 모드는 기본적으로 활성화되어 있으며 더 이상 실험적이지 않습니다.
이 모드에서 카메라는 내부 카메라 온도를 보다 일관되게 유지하기 위해 유휴 상태일 때 더 많은 전력을 사용합니다. 더 일관된 온도는 높은 듀티 사이클 캡처 기간과 낮은 듀티 사이클 캡처 기간 사이의 Dimension Trueness의 차이를 줄입니다.
이 모드가 활성화되면 약간의 노란색 빛이 프로젝터에서 나옵니다.
이 모드는 구성 파일을 사용하여 비활성화할 수 있습니다. <https://support.zivid.com/en/latest/reference-articles/thermal-stabilization.html> 을 참조하십시오.
Presets 설정을 위한 API를 추가했습니다.
Presets 설정은 특정 시나리오/사용 사례 및 다양한 카메라 모델에 최적화된 Zivid에서 제공하는 세팅입니다.
Presets 설정은
Zivid::Presets네임스페이스에서 사용할 수 있습니다.참고: 새 Presets 설정을 추가할 수 있으며 기존 Presets을 변경하거나 향후 SDK 릴리스에서 완전히 제거할 수 있습니다. 향후 SDK 릴리스에서 의도하지 않은 동작 변경을 방지하려면 settings.yml 파일로 사용하려는 Presets을 저장한 다음 해당 파일을 직접 로드하는 것이 좋습니다.
Zivid One+ 및 Zivid Two 기반의 새로운 파일 카메라에 대한 지원 추가:
이 새로운 파일 카메라를 다운로드하려면 다음 링크를 참조하십시오.: <https://support.zivid.com/en/latest/api-reference/samples/sample-data/file-camera.html>
Zivid의 Customer Success 팀은 Diagnostics이 활성화된 상태에서 캡처된 .zdf 파일을 파일 카메라로 만들어 줄 수 있습니다.
기존
FileCameraZividOne.zfc파일 카메라에 대한 지원은 다음 SDK 버전에서 제거됩니다.
저장된 .zdf 파일에서 Infield correction/verification에 대한 지원이 추가되었습니다.
captureCalibrationBoard(Zivid::Camera &camera)및detectFeaturePoints(const Zivid::Frame &frame)기능이Zivid::Experimental::Calibration에 추가되었습니다.
Z 값이 음수인 포인트 필터링이 추가되었습니다. 이 포인트는 이제 NaN으로 설정됩니다. 일반적인 캡처 설정을 사용하면 이러한 포인트는 일반적으로 노이즈 또는 이상값 필터에 의해 필터링됩니다.
프레임을 캡처하는데 사용되는 카메라에 대한
CameraInfo개체를 반환하는Frame2D::cameraInfo()함수가 추가되었습니다.PointCloud및Imageclasses에ColorBGRA출력 형식에 대한 지원이 추가되었습니다.인식할 수 없는 혹은 알 수 없는 YAML 노드가 포함된 .yml 파일을 로드할 때 예외 메시지를 추가했습니다. 이전에는 이러한 노드가 무시되었습니다. 이 예외가 발생하면 문제는 .yml 파일 맨 위에 있는
__version__data노드를 증가시켜야 한다는 것일 수도 있습니다.이제
Zivid::Camera개체의 메서드를 예를 들어std::async를 사용하여 여러 스레드에서 동시에 안전하게 호출할 수 있습니다. 후드 아래에서 함수 호출은 카메라별 대기열에 배치되고 순서대로 실행됩니다. 카메라를 나열하고, 카메라에 연결하고, 동일한 스레드에서 펌웨어 업그레이드를 수행해야 합니다. 이러한 작업은 스레드로부터 안전하지 않기 때문입니다.모든 Zivid One+ 카메라 모델에 대해
Settings::Processing::Filters::Reflection::Removal::Enabled의 기본값이false에서true로 변경되었습니다. Zivid One+를 사용하고 반사 필터 없이 캡처하려면 이 설정이false(또는 .yml 파일에서no)로 설정되어 있는지 확인하십시오.Zivid Two 펌웨어를 버전 1.14.7로 업데이트했습니다.
Ubuntu 18.04에 대한 지원은 2023년 4월 30일에 종료됩니다. Ubuntu 18.04에 대한 지원은 이 SDK 릴리스에서 더 이상 사용되지 않으며 다음 릴리스에서 제거될 예정입니다.
C++
이제
Zivid::Range의 생성자는 최소값이 최대값보다 큰 경우 예외를 발생시킵니다.
Bug fixes
Linux: libZividCore.so 가 boost 및 asio와 같은 타사 라이브러리에서 약한 기호를 내보내는 버그를 수정했습니다. 이로 인해 이러한 라이브러리를 사용하는 사용자에게 동적 연결 문제가 발생할 수 있습니다.
이 릴리스의 새로운 알려진 문제
Nvidia 드라이버 510을 사용하고 2대 이상의 카메라로 연달아 캡처할 때 포인트 클라우드의 상단 부분에서 잘못된 패턴/Stripe가 표시되는 경우가 있습니다. 이 문제는 이 Nvidia 드라이버 버전에서만 나타났습니다. 여러 대의 카메라로 캡처하는 경우 다른 Nvidia 드라이버 버전을 사용하는 것이 좋습니다. 드라이버 470, 515 및 525는 테스트되었으며 잘 작동합니다. 하나의 카메라만 사용하는 경우 이 문제가 보이지 않습니다.
자주 발생하는 문제 및 제한 사항들은 <https://support.zivid.com/latest/support/troubleshooting.html> 를 참조하십시오.
Studio
‘Tools’ 메뉴에 Infield Correction/Verification 마법사를 추가했습니다.
Presets 설정을 추가했습니다. Presets은 ‘Capture’ 상자의 ‘Assisted’ 탭 아래에 있는 선택 상자에 표시됩니다.
Depth/색상/snr/일반 맵에서 포인트를 선택하기 위해 관심 영역 상자 설정 아래에 포인트 선택기 아이콘을 추가했습니다.
Region of Interest Box 와이어프레임을 표시하거나 숨기는 버튼을 추가했습니다.
카메라를 찾을 수 없을 때 오른쪽 패널에 도움말 버튼을 추가했습니다. 도움말 버튼은 기술 자료로 이동합니다.
Stripe 엔진의 “Enable Required Filters” 버튼은 이제 반사 제거 필터 모드를
global로 설정합니다.“Start Firmware Update” 버튼을 빠르게 두 번 이상 클릭하면 업데이트가 완료된 후 “The camera firmware is already up to date” 오류가 발생할 수 있는 버그를 수정했습니다.
이제 설정 트리에서 입력 필드를 클릭하면 텍스트가 자동으로 선택됩니다.
많은 버튼, 선택 상자 및 기타 UI 요소에 대한 툴팁이 개선되었습니다.
2.8.1
API
ZividExperimentalHandEyeCalibrationCLI 도구는 이제 Zivid SDK에서 저장된Zivid::Matrix4x4YAML 파일을 읽을 수 있습니다. 이 도구는 이전 SDK 릴리스에서 사용된 Open CV YAML 파일 양식을 계속 사용할 수 있습니다.--transform-file인수가 제공되면 이 도구는 입력 파일과 동일한 파일 형식을 사용하여 Hand-Eye Calibration Transform을 저장합니다.
Bug fixes
디버그 모드의 Windows에서 Zivid Two로 캡처할 때 발생하는 debug assert을 수정했습니다. 이 버그는 SDK 2.8.0에서 도입되었습니다.
매우 어둡고 매우 밝은 획득을 결합할 때 컬러 이미지에 이상한 아티팩트가 포함될 수 있는 HDR 캡처의 버그를 수정했습니다. 이 버그는 SDK 2.7.0에서 도입되었습니다.
로그 디렉토리의 크기가
MaxTotalSizeMB구성(기본값 1000MB)보다 큰 경우 이전 로그 파일이 삭제되지 않는 버그를 수정했습니다. 로그 파일은HistorySize구성(기본 30일)보다 오래되면 여전히 삭제되며 단일 프로세스의 경우 로그는MaxFileSizeMB * (1 + RotationCount)MB(기본 50MB*3 = 150MB)이면 삭제됩니다. 이 버그는 SDK 2.7.0에서 발견되었습니다.Zivid Two 카메라를 검색할 때 “Unknown product number ‘’” 오류가 발생할 수 있는 문제를 수정했습니다. 이 버그는 SDK 2.8.0에서 개선되었습니다.
Studio
Studio: 터치패드를 사용하여 Studio에서 슬라이더를 드래그할 때 발생할 수 있는 “Cannot assign [undefined] to double” 오류를 수정했습니다.
2.8.0
API
Zivid Two의 향상된 캡처 속도:
각 획득에 대해 Zivid Two에서 PC로 전송되는 데이터의 양이 줄어듭니다. 이렇게 하면 네트워크 링크가 병목 현상이 발생하는 경우(예: 카메라와 PC 간의 연결이 10Gbps 미만인 경우 또는 여러 대의 카메라로 동시에 캡처하는 경우) 캡처 속도가 향상됩니다.
Zivid Two는 이제 HDR 시퀀스의 모든 이미지를 바로 얻을 수 있습니다. 이전에는 카메라가 다음 획득이 시작되기 전에 한 획득의 모든 이미지가 PC로 다시 전송될 때까지 기다렸습니다. 이렇게 하면 HDR 캡처의 캡처 속도가 향상되고 네트워크 속도와 관계없이 더 짧고 예측 가능한 수집 시간이 제공됩니다. 밝기 설정이 1.0 이상인 경우 열 안전 메커니즘으로 인해 획득이 계속 일시 중지될 수 있습니다. 자세한 내용은 <https://support.zivid.com/en/latest/reference-articles/settings/acquisition-settings/projector-brightness.html> 을 참조하십시오.
1Gbps 연결 시 캡처 속도가 1.5배에서 2.5배까지 향상되었습니다. 10Gbps 연결을 사용하면 캡처 속도가 Windows에서 5%-50%, Linux에서 0%-15% 향상됩니다. HDR 및/또는 Stripe 엔진을 사용할 때 가장 큰 비율 개선을 볼 수 있습니다.
혼잡한 네트워크 링크에서 여러 대의 Zivid Two 카메라로 동시에 캡처할 때 캡처 속도가 향상되었습니다. 예를 들어 1Gbps 스위치를 사용하여 동시에 3개의 카메라에서 3개 획득 HDR의 캡처 속도가 2.5배에서 3배까지 향상됩니다.
Zivid Two의 자동 검색 지원 추가:
SDK는 이제 멀티캐스트 DNS 프로토콜을 사용하여 네트워크에서 사용 가능한 Zivid Two 카메라를 검색합니다. 검색되고 도달 가능한 카메라는 SDK와 Zivid Studio를 통해 볼 수 있습니다.
Cameras.yml파일이 Zivid 구성 폴더에 있으면 해당 파일에 나열된 IP/호스트 이름만 SDK에 표시되고 자동 검색이 수행되지 않습니다.카메라를 검색하려면 먼저 최신 펌웨어 버전(FW 1.9.6, SDK 2.8에 포함)으로 업데이트해야 합니다.
자세한 내용은 <https://support.zivid.com/en/latest/getting-started/software-installation/zivid-two-network-configuration.html> 을 참조하십시오.
Matrix4x4클래스에 저장 및 로드 메소드를 추가했습니다.Image개체를 JPG 및 BMP 형식으로 저장하기 위한 지원이 추가되었습니다.Ubuntu 22.04에 대한 지원이 추가되었습니다.
Zivid Two L100에 대한 지원이 추가되었습니다.
Camera::closeAperture()메소드 호출은 이전에 Zivid Two에 영향을 미치지 않았습니다. 이 방법은 이제 이 기능이 Zivid Two에서 지원되지 않는다는 예외를 출력합니다.Zivid Two 펌웨어를 버전 1.9.6으로 업데이트했습니다.
C++
begin,end,cbegin및cend메소드를Array2D클래스에 추가했습니다.
Windows
Visual Studio에서 정적 런타임 라이브러리를 사용하는 경우 컴파일 오류가 추가되었습니다. Zivid SDK는 동적 런타임 라이브러리인 /MD 또는 /MDd 옵션으로 빌드해야 합니다. 이것은 Visual Studio 프로젝트의 “C/C++” -> “Code Generation” -> “Runtime Library” 에서 구성할 수 있습니다.
Bug fixes
Zivid Two만 해당: 잘못된 color balance 계산 문제를 수정했습니다.
색상 이미지에 색상 균형 요소가 잘못 적용되었습니다.
이 문제는 색상 균형 설정을 기본값인 1.0보다 높게 설정한 경우에만 발생합니다.
자세한 내용은 기술 자료를 참조하십시오: <https://support.zivid.com/en/latest/support/color-inconsistency-after-sdk-update.html>.
Zivid Two만 해당: 느린 네트워크 업로드 속도로 인해 펌웨어 업데이트가 시간 초과되어 실패할 수 있는 문제가 수정되었습니다.
Studio
Signal-to-noise ratio(SNR) ㅠ맵이 추가되었습니다.
Normal 맵이 추가되었습니다.
다른 보기 간에 전환할 수 있도록 왼쪽 상단 모서리에 드롭다운 메뉴를 추가했습니다.
포인트 크기를 선택하기 위해 3D 보기 상단에 드롭다운 메뉴를 추가했습니다.
다른 보기 중에서 선택하기 위해 바로 가기 버튼 1~5를 추가했습니다.
바닥글 표시줄의 텍스트를 가리지 않도록 바닥글 미리보기 이미지의 디자인을 조정했습니다.
Known issues & limitations
자주 발생하는 문제 및 제한 사항들은 <https://support.zivid.com/latest/support/troubleshooting.html> 를 참조하십시오.
2.7.0
API
반사 필터의 새로운 실험적 로컬 모드를 추가했습니다.
새로운 설정인
Settings::Processing::Filters::Reflection::Removal::Experimental::Mode가 선택 모드에 추가되었으며, 이는local또는global일 수 있습니다.global은 이전 반사 필터에 해당하며 기본값입니다.Local 모드는 얇은 개체에서 더 많은 3D 데이터를 보존하고 일반적으로 Global 모드보다 더 많은 반사 아티팩트 및 프로세스를 더 빠르게 제거합니다.
Global 모드는 일반적으로 포인트 클라우드에서 Outlier points을 제거하는 데 더 좋습니다.
Local 모드는 실험적이며 향후 릴리스에서 변경할 수 있습니다.
새로운 설정
Settings::Processing::Color::Experimental::Mode추가:이 설정에는
automatic,toneMapping및useFirstAcquisition의 세 가지 옵션이 있습니다.automatic모드는 기본값이며 SDK의 이전 기본 동작에 해당합니다. 이 모드는 단일 캡처의 경우useFirstAcquisition및 HDR 캡처의 경우toneMapping과 같습니다.useFirstAcquisition은 항상 설정에서 제공된 첫 번째 수집(Acquisition)의 색상 데이터를 사용합니다. 이 모드는 단일 획득 및 다중 획득 HDR 캡처 모두에 사용할 수 있습니다. 이 모드는toneMapping보다 색상을 더 세밀하게 제어할 수 있으며 장면의 내용이 바뀌어도 안정적인 색상 출력을 제공합니다.toneMapping은 모든 획득의 색상 데이터를 결합하여 하나의 병합되고 정규화된 색상 이미지를 생성합니다.이 새로운 설정은 SDK 2.3.0에 추가된 기존의
Settings::Processing::Color::Experimental::ToneMapping::Enabled설정을 대체합니다.자세한 내용은
Settings::Processing::Color::Experimental::Mode문서를 참조하십시오.
Zivid Two: 캡처 간에 내부 카메라 온도를 안정적으로 유지하기 위한 새로운 실험 모드를 추가했습니다.
이 옵션은 카메라의 더 빠른 워밍업에도 사용할 수 있습니다.
이 기능을 활성화하는 방법에 대한 자세한 내용은 기술 자료를 참조하십시오. <https://support.zivid.com/latest/reference-articles/thermal-stabilization.html>
Zivid Two: Multicast DNS를 사용하여 .local 레이블로 끝나는 이름 쿼리에 대한 지원이 추가되었습니다.
보정 보드의 포즈를 반환하는
DetectionResult클래스에pose메서드를 추가했습니다.Matrix4x4클래스에 역행렬을 반환하는inverse메소드를 추가했습니다.Zivid One+: Phase engine을 사용할 때 신호가 없는 픽셀(예: 과포화 픽셀)의 바로 왼쪽 또는 오른쪽에 있는 픽셀의 처리가 향상되었습니다. 이러한 픽셀은 이전에 신호 없음 픽셀이 포함된 영역에서 소량의 floating points을 유발할 수 있었습니다.
Zivid One+: Phase engine 패턴 내에서 안정적으로 디코딩할 수 없는 픽셀 필터링이 개선되었습니다. Noise 및 Outlier 필터가 꺼져 있는 경우 이러한 픽셀은 이전에 주로 신호가 낮은 영역에서 floating points으로 표시될 수 있었습니다. Zivid Two에는 유사한 필터링이 이미 존재했습니다.
최신 AMD GPU에 대한 지원 추가:
RDNA 아키텍처가 있는 AMD 카드는 이전 SDK 버전에서 간혹 오류가 발생했지만 지금은 정상 지원됩니다.
AMD RDNA 카드(예: RX5500 및 RX5700)는 설치된 GPU 드라이버 버전 및 OS 버전에 따라 Ubuntu에서 불안정할 수 있습니다. 이러한 모델을 사용하는 경우 설정에서 안정성을 신중하게 테스트하는 것이 좋습니다.
Stripe engine의 캡처 속도 향상:
고급 Nvidia GPU에서 측정된 약 3%-12% 개선 및 Intel 통합 GPU에서 5%-15% 개선. HDR로 캡처할 때 백분율 면에서 가장 많은 개선이 있었습니다.
Phase engine의 캡처 속도 향상:
고급 Nvidia에서 2%에서 12%로 개선되었습니다. Low-end Intel integrated GPU에서 유사한 개선 사항이 있는 반면 고급형 통합 Intel GPU는 SDK 2.6과 유사한 성능을 제공합니다.
짧은 HDR 시퀀스에서 가장 많이 개선되었습니다.
Intel 드라이버를 사용할 때 Phase engine을 사용한 단일 획득 캡처의 캡처 속도 저하:
캡처 시간은 설정에 따라 SDK 2.6에 비해 5%에서 15% 증가했습니다. 많은 필터를 활성화할 때 백분율 면에서 가장 많은 저하가 있었습니다.
이것은 Stripe engine 또는 HDR 캡처에는 적용되지 않습니다. 위의 사항을 참조하십시오.
Normals 처리 시간 약 50% 향상:
전체 해상도 포인트 클라우드의 Normals 계산을 위한 일반적인 처리 시간은 GPU 성능에 따라 Nvidia GPU에서 약 5-20ms, 통합 Intel GPU에서 15-40ms입니다.
내부적으로 새로운 GPU 컴퓨팅 프레임워크를 사용하도록 변경되었습니다.
컴퓨팅 파이프라인 초기화로 인해 카메라 연결 시간이 늘어납니다.
카메라가 프로세스에서 처음 연결될 때 SDK 2.6에서보다 6-10초 더 오래 걸릴 수 있습니다.
이러한 연결 시간 증가는 카메라 모델당,
Zivid::Application개체당 한 번만 발생합니다.
제품 품질 및 고객 서비스 경험을 개선하기 위해 클라우드 연결 로깅을 추가했습니다.
데이터는 익명으로 수집됩니다.
이 기능에 대한 자세한 내용은 다음 기술 자료를 참조하십시오: <https://support.zivid.com/latest/reference-articles/zivid-cloud-logging.html>
이미 존재하는
Zivid::Application객체를 다시 생성하는 경우의 오류 메시지를 개선했습니다.여러 대의 Zivid One+ 카메라를 동시에 사용하는 것은 이제 실험적이지 않습니다.
여러 대의 카메라를 사용하는 방법 및 알려진 제한 사항에 대한 자세한 내용은 다음 기술 자료를 참조하십시오: <https://support.zivid.com/latest/academy/camera/multiple-zivid-cameras.html>
Zivid Two 펌웨어의 버전이 1.7.4로 업데이트되었습니다.
experimental 설정
Settings::Processing::Color::Experimental::ToneMapping::Enabled이 제거되었습니다:이 설정은
Settings::Processing::Color::Experimental::Mode로 대체되었습니다(위 항목 참조).
Ubuntu 16.04에 대한 지원이 종료되었습니다.
C++
Matrix4x4클래스에 대한begin및end멤버 함수의 const 오버로드를 추가했습니다.
.NET
.NET wrapper에 C++ API에서와 마찬가지로 새로운
Matrix4x4클래스를 추가했습니다.Matrix4x4생성자는 2D .NET 배열을 입력으로 사용합니다.Matrix4x4는 역행렬을 반환하는Inverse메서드를 제공합니다.Matrix4x4는 2D .NET 배열을 반환하는ToArray메서드를 제공합니다.
Matrix4x4를 인수로 사용하는Transform메서드 오버로드를PointCloud클래스에 추가했습니다.
Bug fixes
동일한 프로세스 내에서 많은 애플리케이션을 순차적으로 만들 때 메모리 부족 오류가 발생할 수 있는
Zivid::Application소멸자의 메모리 누수가 수정되었습니다.Ubuntu에서 Intel GPU와 함께
Visualizer클래스를 사용할 때 사용자에게 “An OpenCL error occurred: Failed to read buffer” 가 표시되는 버그를 수정했습니다.HDR로 캡처하면 여러 캡처에서 일관되지 않은 결과가 반환되는 AMD GPU의 버그가 수정되었습니다.
몇 번 캡처한 후 응용 프로그램이 충돌할 수 있는 AMD GPU의 버그를 수정했습니다.
간헐적으로
estimateIntrinsics함수가 suboptimal intrinsics 파라미터를 반환하는 버그를 수정했습니다.Zivid Two: 카메라가 잘못된 소스 주소(RFC 1122 ch. 4.2.3.10)로 TCP 연결에 응답하는 TCP/IP 멀티캐스트 보안 취약점을 수정했습니다.
Studio
Ubuntu에서 Intel GPU를 사용할 때 캡처할 때 사용자에게 “OpenGL error: GL_INVALID_OPERATION” 가 표시되는 버그를 수정했습니다.
“Open Frame” 파일 대화 상자가 응답하지 않거나 정지하는 Ubuntu의 버그를 수정했습니다.
오른쪽 패널의 각 획득 아래에 있는 “…” 상황에 맞는 메뉴에서 “Move to top” 작업을 추가했습니다.
Known issues & limitations
자주 발생하는 문제 및 제한 사항들은 <https://support.zivid.com/latest/support/troubleshooting.html> 를 참조하십시오.
2.6.1
Bug fixes
파일 이름에 ASCII가 아닌 문자가 있는 .zdf 파일을 로드하면 “파일에서 프레임 로드 실패” 예외가 발생하는 Windows의 버그가 수정되었습니다.
SDK가 포즈 변환 매트릭스의 유효성을 확인할 때 너무 엄격한 제한을 사용하여 손 눈 또는 다중 카메라 보정 중에 예외가 발생할 수 있는 문제가 수정되었습니다.
동일한 획득 설정으로 HDR 캡처를 수행할 때 SDK 2.6.0에 도입된 색상 출력의 의도하지 않은 변경을 수정했습니다.
SDK 2.5.0 및 이전 버전에서 HDR의 모든 획득에 대해 동일한 획득 설정을 사용하여 HDR 캡처를 수행하면 출력 컬러 이미지가 톤 매핑되지 않습니다. SDK 2.6.0에서는 의도하지 않은 동작 변경으로 인해 이 시나리오에서 컬러 이미지가 톤 매핑되었습니다. SDK 2.6.1에서 이 변경 사항은 SDK 2.5.0 및 이전 버전의 동작과 일치하도록 되돌려졌습니다.
톤 매핑은
Settings::Processing::Color::Experimental::ToneMapping::Enabled를always로 설정하여 명시적으로 켤 수 있습니다.
2.6.0
API
Diagnostics::Enabled이 설정에 추가되었습니다:
Diagnostics이 활성화되면 캡처 중에 추가 진단 및 디버깅 정보가 수집됩니다. 이 정보는
.zdf파일에 저장되며 Zivid 지원 팀에서 문제를 해결하고 더 나은 지원을 제공하는 데 사용할 수 있습니다.Diagnostics을 활성화하면 캡처 시간과 RAM 사용량,
.zdf파일 크기가 늘어납니다.Zivid 지원팀에 문제를 보고할 때만 진단을 활성화하는 것이 좋습니다.
Zivid One+만 해당: 중요한 제품 수명 개선: Zivid One+ 카메라의 전원을 몇 주 동안 켜면 응용 프로그램에서 첫 번째 캡처가 트리거될 때까지 프로젝터가 손상될 수 있는 문제를 해결했습니다.
Zivid One+만 해당: 2D 캡처가 밝기 0을 사용하는 경우 3D 캡처와 2D 캡처 간에 전환할 때 시간 패널티가 제거되었습니다.
Stripe engine의 캡처 속도 향상:
NVIDIA GPU를 사용하여 측정한 캡처 속도가 5~15% 향상되었습니다.
빠른 CPU와 느린 GPU(예: Intel 통합 GPU)를 사용하면 2.5에 비해 성능이 거의 같거나 약간 더 낮습니다(1%-5% 더 나빠짐).
FrameInfo 클래스에 CPU 모델, ComputeDevice 모델, ComputeDevice Vendor 및 OperatingSystem을 추가했습니다.
in-field correction/verification을 위한 calibration board 회전 지원이 추가되었습니다. 이제 보드의 방향을 카메라 관점에서 0, 90, 180 또는 270도(+/- 15도)로 지정할 수 있습니다.
calibration board에서 심한 반사 또는 눈부심이 있는 경우의 calibration 및 in-field correction/verification 시 사용되는 체커보드 감지 알고리즘의 견고성이 향상되었습니다.
ZividInfieldCorrection으로 in-field correction을 확인할 때 command-line 명령어가 개선되었습니다.이제 카메라에 다시 연결할 필요 없이 Verification을 반복할 수 있습니다.
Verification은 또한 Dimension Trueness 측정의 통계적 요약을 제공합니다.
존재하지 않는 디렉토리에 파일을 저장하려고 할 때 예외 메시지가 개선되었습니다.
SDK 1.x를 사용하여 저장한
.zdf파일에서Frame객체를 생성하고 해당Frame객체를.zdf파일로 다시 저장하는 것은 더 이상 지원되지 않으며 예외가 발생합니다.이번 릴리스에서
.zdf파일의 기본 형식이 변경되었습니다.2.6.0 이상의
.zdf파일을 SDK 2.5.0 또는 이전 버전에서 열면 SDK에서 “Failed to load frame from file” 라는 메시지와 함께 예외가 발생합니다.이전
.zdf파일은 여전히 API 또는 Zivid Studio를 사용하여 로드할 수 있습니다.
Zivid One+ 펌웨어를 버전 1.9.2로 업데이트했습니다.
Zivid Two 펌웨어를 버전 1.6.0으로 업데이트했습니다.
Ubuntu 16.04에 대해 더 이상 지원하지 않으며 SDK 2.7에서 관련 내용이 제거될 예정입니다.
C++
<Zivid/Zivid.h>헤더에는 더 이상 Experimental 헤더 파일이 포함되지 않습니다. 실험 헤더 파일은 명시적으로 포함되어야 합니다.
Studio
마우스 휠을 빠르게 스크롤할 때 3D 포인트 클라우드가 거꾸로 뒤집힐 수 있는 버그를 수정했습니다.
Known issues and current limitations
자주 발생하는 문제 및 제한 사항들은 <https://support.zivid.com/latest/support/troubleshooting.html> 를 참조하십시오.
2.5.0
API
Normals에 대한 지원이 추가되었습니다.
Normals은
copyNormalsXYZ()를 사용하여 PointCloud 객체에서 계산할 수 있습니다. 포인트 클라우드의 각 포인트에 대한 단위 법선 벡터의 2D 배열을 반환합니다.
CameraInfo클래스에Model클래스를 추가했습니다. 이 클래스는 카메라 모델을 구별하는 데 사용할 수 있습니다. Zivid One+ 소형/중형/대형 및 Zivid Two로 구성됩니다.organized 포인트 클라우드를 .pcd 형식으로 내보내기 위한 지원이 추가되었습니다(올바른 WIDTH 및 HEIGHT 속성 포함). 이 수정 사항을 사용하려면 Config.yml 파일을 사용해야 합니다. Config.yml의 구성 값 APIBreakingBugFixes / FileFormats / PCD / UseOrganizedFormat을
true로 설정합니다. Config.yml 파일 작성 및 사용 방법에 대한 예는 <https://support.zivid.com/latest/academy/getting-started/zivid-software-installation/gpu/select-specific-gpu-for-zivid-software.html> 를 참고하십시오.“Stripe” 비전 엔진의 성능이 향상되었습니다. GPU 유형에 따라 2~10% 향상됩니다.
Zivid Two의 초기 엔지니어링 샘플(revision A)에 대한 지원을 제거했습니다.
Zivid One+ 펌웨어를 버전 1.8.8로 업데이트했습니다.
Zivid Two 펌웨어를 버전 1.5.2로 업데이트했습니다.
Ubuntu 16.04에 대한 지원은 더 이상 사용되지 않으며 2022년 4월경에 SDK에서 제거됩니다.
C++
Settings 객체와 CameraInfo 객체가 주어지면 포인트 클라우드 해상도를 쿼리하기 위해 실험적 메서드
Zivid::Experimental::SettingsInfo::resolution()이 추가되었습니다.
Bug fixes
GenICam 카메라 연결 프로세스 도중 카메라에 대한 물리적 연결이 끊어진 경우 GenICam 드라이버에서 발생할 수 있는 충돌을 수정했습니다.
Zivid::Application이 정적 변수에 저장된 경우 프로그램을 종료하는 동안 발생할 수 있는 충돌을 수정했습니다.
Zivid SDK를 사용하는 프로세스가 SIGTERM/SIGILL 또는 유사한 신호를 수신한 경우 종료하는 동안 영원히 멈출 수 있는 문제가 수정되었습니다.
Zivid One+ 카메라를 사용하여
Camera::connect()를 호출할 때 작은 메모리 누수가 수정되었습니다.
Studio
3D 포인트 클라우드 보기에서 포인트의 깊이 맵 색상에 대한 지원이 추가되었습니다. 이 모드를 켜고 끄려면 “D” 를 누르십시오.
.zdf 및 .yml 파일을 Zivid Studio 창으로 끌어다 놓아(dragging and dropping) 열기에 대한 지원이 추가되었습니다.
정보 패널이 열려 있는 경우 기본 오른쪽 패널의 가장자리를 왼쪽으로 끌어서 확장하면 정보 패널이 잘못 축소되는 문제가 수정되었습니다.
Zivid Two의 현재 제한 사항
최적의 성능을 위해 Zivid Two와 전용 10Gb PCI-Express 네트워크 카드 간의 직접 연결을 권장합니다. Thunderbolt 3 포트에 연결된 Thunderbolt 3 외부 네트워크 어댑터는 전용 PCI-express 카드와 유사한 성능을 제공합니다. USB 기반 네트워크 어댑터는 때때로 카메라를 사용할 때 오류가 발생할 수 있으며 캡처 속도가 감소하고 가변적입니다.
Known issues
Zivid Two만 해당: Zivid Two에 연결할 때 PC 프로세스가 비정상적으로 중단되어(예: SIGINT, SIGABRT 등을 통해) 카메라와 PC 간의 TCP 연결이 정상적으로 닫히지 않으면 카메라가 네트워크 연결이 끊어진 것을 감지하고 전원을 껐다 켭니다(일반적으로 15초 이내).
드문 경우지만 카메라가 PC 프로세스에 대한 연결이 끊어진 것을 제대로 감지하지 못할 수 있습니다. 그런 다음 카메라는 SDK에서 새 연결을 계속 거부하므로 SDK에서 카메라가 표시되지 않습니다. 이 상황에서는 카메라는 수동으로 전원을 껐다 켜야 합니다.
Zivid Two만 해당: 매우 드문 경우지만 캡처하는 동안 “Command failed: CameraImageTimeout” 예외가 발생할 수 있습니다. 이것은 다음 캡처에서 자체적으로 해결됩니다.
Zivid Two만 해당: Windows에서 캡처 시간은 때때로 데이터 재전송으로 이어지는 이더넷 패킷 손실로 인해 더 길어질 수 있습니다(정상보다 1초 이상). 패킷 손실 발생을 줄이기 위해 Windows의 네트워크 드라이버 설정에서 “Receive Buffers” 및 “Transmit Buffers” 를 늘리는 것이 좋습니다.
캡처 시간은 동일한 하드웨어의 경우 Linux에 비해 Windows에서 더 길 수 있습니다. 그 차이는 노출 시간이 짧을수록 더 커지고 노출 시간이 길수록 낮아집니다. 동일한 하드웨어에서 Windows와 Linux 간의 상대적인 차이는 Zivid One+를 사용할 때와 비교하여 Zivid Two를 사용할 때 더 큽니다.
Ubuntu 20.04만 해당: Intel GPU를 렌더링 장치로 사용하여 Linux 5.8 커널(최신 HWE 커널을 사용할 때 Ubuntu 20.04.2와 함께 출시)을 사용할 때 Zivid Studio 및 Visualizer는 “CL_OUT_OF_RESOURCES” 및 “OpenGL error: GL_INVALID_OPERATION” 와 같은 오류를 발생시킬 수 있습니다. 포인트 클라우드를 표시할 때, 이 문제를 방지하려면 Ubuntu 20.04용 LTS(안정적인) 기본 Linux 커널인 Linux 커널 5.4를 사용하십시오.
2.4.2
Bug fixes
사용자가 libusb(SDK에서 내부적으로 사용)를 자신의 버전으로 교체할 수 없는 문제를 수정했습니다.
2.4.1
Bug fixes
보정 모델 2.1이 있는 Zivid Two만 해당: Windows의 디버그 모드에서 캡처 시 “Assertion Failed” 예외가 발생하는 버그가 수정되었습니다.
2.4.0
API
Zivid Two용 실험용 “Stripe” 비전 엔진에 대한 지원이 추가되었습니다.
Zivid Two용 보정 모델 2.1에 대한 지원이 추가되었습니다. 캘리브레이션 모델 2.1은 Zivid Two 카메라의 정확도를 더욱 향상시킵니다.
여러 대의 Zivid Two 카메라 사용에 대한 지원이 추가되었습니다.
이 기능은 한 대의 PC에서 동시에 최대 4대의 Zivid Two 카메라를 사용하여 테스트되었습니다.
여러 대의 카메라를 동시에 사용할 수 있지만 각 개별 카메라를 여러 스레드에서 동시에 사용해서는 안 됩니다. SDK를 통한 카메라 연결은 순서대로 이루어져야 합니다.
여러 대의 카메라를 설정하는 방법에 대한 자세한 내용은 기술 자료를 참조하십시오: <https://support.zivid.com/latest/academy/camera/multiple-zivid-cameras.html>
Zivid Two 카메라의 네트워크 설정을 변경하기 위해 ZividNetworkCameraConfigurator CLI 도구를 추가했습니다.
카메라는 고정 IP 모드 또는 DHCP 모드로 구성할 수 있습니다.
이 도구를 사용하는 방법과 사용자 지정 IP 또는 호스트 이름에 연결하도록 SDK를 구성하는 방법에 대한 자세한 내용은 기술 자료를 방문하십시오: <https://support.zivid.com/latest/academy/getting-started/zivid-software-installation/zivid-two-network-configuration.html#custom-ip-configuration>
온도 사양 밖에서 카메라를 사용할 때 포인트 클라우드 정확도가 향상되었습니다. 모든 Zivid One+ 또는 Zivid Two 카메라에 자동으로 적용됩니다.
eye-in-hand 및 eye-to-hand 구성 모두에서 hand-eye calibration 정확도가 향상되었습니다.
네트워크 패킷 손실에 대한 Zivid Two 네트워크 성능이 향상되었습니다.
높은 작동 온도에서 Zivid Two 프로젝터 수명이 향상되었습니다.
노출 시간 10000 microseconds 이상을 사용할 때 Zivid Two 캡처 시간이 개선되었습니다.
Zivid One+ 펌웨어를 버전 1.8.7로 업데이트했습니다.
Zivid Two 펌웨어를 버전 1.4.1로 업데이트했습니다.
기존 Zivid One 카메라에 대한 지원이 제거되었습니다. (참고: Zivid One Plus 카메라에는 적용되지 않습니다.)
Studio
카메라에 연결할 때 두 대 이상의 카메라를 전환하면 오류가 발생할 수 있는 문제를 수정했습니다.
Bug fixes
short-lived Zivid::Application 개체를 제거하는 동안 발생할 수 있는 충돌을 수정했습니다.
모든 필터가 비활성화된 상태로 캡처할 때 AMD 컴퓨팅 장치에서 몇몇의 포인트가 NaN 대신 “inf” 로 잘못 표시되는 문제를 수정했습니다.
Stripe 엔진이 AVX와 같은 기능이 없는 CPU에서 실행될 때 Linux에서 SIGILL을 유발할 수 있는 문제를 수정했습니다.
Signal-to-Noise ratio가 NaN 값을 포함할 수 있는 Stripe Engine의 문제를 수정했습니다.
Zivid One Plus 전용: 부팅 중 과도한 전류 소비를 유발하는 SDK 2.2에서 발생한 버그를 수정했습니다.
Zivid One Plus Revision C만 해당: 정상 작동 시 카메라 후면의 상태 LED가 빨간색으로 표시되는 문제가 수정되었습니다.
Zivid Two만 해당: 펌웨어 업그레이드 후 첫 번째 캡처한 포인트 클라우드에 누락/잘못된 3D 데이터 Stripe가 포함될 수 있는 문제가 수정되었습니다.
Zivid Two만 해당: DHCP를 사용하여 IP 주소를 얻을 때 너무 짧은 timeout이 수정되었습니다. 짧은 timeout으로 인해 DHCP 프로세스가 완료되기 전에 카메라가 링크 로컬 IP 주소로 대체될 수 있습니다.
Zivid Two만 해당: SDK가 카메라에 연결하지 못하는 네트워크 지연이 있을 때 두드러지는 경쟁 조건 문제를 수정했습니다.
Zivid Two만 해당: 팬이 지나치게 높은 RPM으로 작동하는 문제를 수정했습니다.
Zivid Two만 해당: 카메라의 전송되지 않은 데이터가 새 데이터 혹은 잘못된 데이터로 덮어쓸 수 있는 문제가 수정되었습니다.
Zivid Two의 현재 제한 사항
최적의 성능을 위해 Zivid Two와 전용 10Gb PCI-Express 네트워크 카드 간의 직접 연결을 권장합니다. Thunderbolt 3 포트에 연결된 Thunderbolt 3 외부 네트워크 어댑터는 전용 PCI-express 카드와 유사한 성능을 제공합니다. USB 기반 네트워크 어댑터는 때때로 카메라를 사용할 때 오류가 발생할 수 있으며 캡처 속도가 감소하고 가변적입니다.
Known issues
Zivid Two만 해당: Zivid Two에 연결할 때 PC 프로세스가 비정상적으로 중단되어(예: SIGINT, SIGABRT 등을 통해) 카메라와 PC 간의 TCP 연결이 정상적으로 닫히지 않으면 카메라가 네트워크 연결이 끊어진 것을 감지하고 전원을 껐다 켭니다(일반적으로 15초 이내).
드문 경우지만 카메라가 PC 프로세스에 대한 연결이 끊어진 것을 제대로 감지하지 못할 수 있습니다. 그런 다음 카메라는 SDK에서 새 연결을 계속 거부하므로 SDK에서 카메라가 표시되지 않습니다. 이 상황에서는 카메라는 수동으로 전원을 껐다 켜야 합니다.
Zivid Two만 해당: 매우 드문 경우지만 캡처하는 동안 “Command failed: CameraImageTimeout” 예외가 발생할 수 있습니다. 이것은 다음 캡처에서 자체적으로 해결됩니다.
Zivid Two만 해당: Windows에서 캡처 시간은 때때로 데이터 재전송으로 이어지는 이더넷 패킷 손실로 인해 더 길어질 수 있습니다(정상보다 1초 이상). 패킷 손실 발생을 줄이기 위해 Windows의 네트워크 드라이버 설정에서 “Receive Buffers” 및 “Transmit Buffers” 를 늘리는 것이 좋습니다.
캡처 시간은 동일한 하드웨어의 경우 Linux에 비해 Windows에서 더 길 수 있습니다. 그 차이는 노출 시간이 짧을수록 더 커지고 노출 시간이 길수록 낮아집니다. 동일한 하드웨어에서 Windows와 Linux 간의 상대적인 차이는 Zivid One+를 사용할 때와 비교하여 Zivid Two를 사용할 때 더 큽니다.
Ubuntu 20.04만 해당: Intel GPU를 렌더링 장치로 사용하여 Linux 5.8 커널(최신 HWE 커널을 사용할 때 Ubuntu 20.04.2와 함께 출시)을 사용할 때 Zivid Studio 및 Visualizer는 “CL_OUT_OF_RESOURCES” 및 “OpenGL error: GL_INVALID_OPERATION” 와 같은 오류를 발생시킬 수 있습니다. 포인트 클라우드를 표시할 때, 이 문제를 방지하려면 Ubuntu 20.04용 LTS(안정적인) 기본 Linux 커널인 Linux 커널 5.4를 사용하십시오.
2.3.0
API
Zivid Two 카메라에 대한 지원이 추가되었습니다.
실험적인 “Stripe” 비전 엔진의 속도가 향상되었습니다.
Ubuntu 20.04에 대한 공식 지원이 추가되었습니다.
개선된 실험적 In-field Correction:
경우에 따라 더 나은 post-correction 정확도를 제공하기 위해 알고리즘이 개선되었습니다.
입력 데이터가 실제로 보정을 계산하기에 충분함에도 불구하고 사용자에게 “No significant correction could be identified (noise >> signal).” 이라는 예외가 발생하는 문제가 수정되었습니다.
calibration API 및 in-field correction에 사용되는 체커보드 감지의 견고성이 향상되었습니다.
색상 균형 설정의 최대값이 2.0에서 8.0으로 증가했습니다.
실험 설정
Settings::Processing::Color::Experimental::ToneMapping::Enabled를 추가했습니다. 이 설정은 톤 매핑이 모든 3D 캡처(단일 및 HDR 캡처)에서 수행되는지 또는 HDR 캡처에 대해서만 수행되는지 제어합니다.특히 톤 매핑이 활성화되고/또는 감마가 1 미만인 경우 3D 캡처를 위해 컬러 이미지의 어둡거나 노출 부족 영역에서 노이즈가 감소했습니다.
AMD는 Ubuntu 16.04에서 더 이상 지원되지 않습니다. (AMD는 Linux 18.50용 Radeon Software부터 Ubuntu 16.04에 대한 지원을 중단했습니다.)
기존 Zivid One 카메라에 대한 지원이 종료되며 sdk 2.4에서 제거될 예정입니다. (참고: 이것은 Zivid One 카메라에만 해당되며 Zivid One Plus는 계속 지원됩니다.)
Studio
프레임 설정을 파일에 저장하기 위한 옵션이 정보 패널에 추가되었습니다.
Ubuntu에서 파일 대화 상자의 모양이 개선되었습니다.
CPU 부하가 높은 상태에서 마우스 휠을 빠르게 스크롤할 때 Zivid Studio에서 2D 이미지가 거꾸로 뒤집힐 수 있는 문제가 수정되었습니다.
Bug fixes
Zivid One+ 카메라에 연결을 시도할 때 “Failed to check if block 0 in the EEPROM master table is occupied” 오류가 발생하는 문제가 수정되었습니다.
Stripe 엔진의 Signal-to-noise ratio (SNR)가 수정되었으며 이제 Phase 엔진의 SNR과 비슷합니다.
개선된 SNR 계산은 이제 노이즈 필터가 두 엔진의 동작에서 더 밀접하게 일치함을 의미합니다.
Noteworthy changes in this release
2.2에 비해 3D 캡처 시간의 약간의 성능 저하가 특정 약한 Intel 통합 GPU 또는 CPU와 같은 약한 컴퓨팅 장치를 사용할 때 관찰될 수 있습니다. 이러한 장치의 성능 저하는 일반적으로 컴퓨팅 장치 및 캡처 설정에 따라 1%에서 6%입니다.
Zivid Two의 현재 제한 사항
실험적인 “Stripe” 비전 엔진은 아직 지원되지 않습니다.
한 번에 하나의 Zivid Two만 PC에 연결할 수 있습니다.
Zivid Two의 네트워크 구성은 사용자가 정의할 수 없습니다.
최적의 성능을 위해 Zivid Two와 전용 10Gb PCI-Express 네트워크 카드 간의 직접 연결을 권장합니다. Thunderbolt 3 포트에 연결된 Thunderbolt 3 외부 네트워크 어댑터는 전용 PCI-express 카드와 유사한 성능을 제공합니다. USB 기반 네트워크 어댑터는 캡처 오류를 발생시키고 캡처 속도를 제한할 수 있으므로 이 릴리스에는 권장되지 않습니다.
Known issues
캡처 시간은 동일한 하드웨어의 경우 Linux에 비해 Windows에서 더 길 수 있습니다. 그 차이는 노출 시간이 짧을수록 더 커지고 노출 시간이 길수록 낮아집니다. 동일한 하드웨어에서 Windows와 Linux 간의 상대적인 차이는 Zivid One 또는 One+를 사용할 때와 비교할 때 Zivid Two를 사용할 때 더 높습니다.
Zivid Two만 해당: 때때로 펌웨어 업그레이드가 완료된 후 첫 번째 캡처에서 포인트 클라우드 출력이 잘못될 수 있습니다. 이것은 포인트 클라우드에서 잘못된/누락된 데이터 라인으로 볼 수 있습니다. 이 문제는 다음 캡처에서 자체적으로 해결됩니다.
Zivid Two만 해당: 경우에 따라 카메라의 펌웨어 업그레이드가 완료된 후 캡처하는 경우 “Camera not connected” 또는 이와 유사한 예외가 발생할 수 있습니다. 이 문제는 카메라에 다시 연결하면 저절로 해결됩니다.
Zivid Two만 해당: Windows에서 캡처 시간은 때때로 데이터 재전송으로 이어지는 이더넷 패킷 손실로 인해 더 길어질 수 있습니다(정상보다 1초 이상).
Zivid Two만 해당: 매우 드문 경우지만 캡처하는 동안 “Command failed: CameraImageTimeout” 예외가 발생할 수 있습니다. 이것은 다음 캡처에서 자체적으로 해결됩니다.
Zivid Two만 해당: 매우 드물게 카메라와 클라이언트 간의 네트워크 링크가 끊어져 시간 초과가 발생할 수 있습니다. 그러나 링크는 자동으로 복원되며 사용자는
Zivid::Exception을 포착하여 수동 개입 없이 카메라에 다시 연결할 수 있습니다.Ubuntu 20.04만 해당: Intel GPU를 렌더링 장치로 사용하여 Linux 5.8 커널(최신 HWE 커널을 사용할 때 Ubuntu 20.04.2와 함께 출시)을 사용할 때 Zivid Studio 및 Visualizer는 “CL_OUT_OF_RESOURCES” 및 “OpenGL error: GL_INVALID_OPERATION” 와 같은 오류를 발생시킬 수 있습니다. 포인트 클라우드를 표시할 때, 이 문제를 방지하려면 Ubuntu 20.04용 LTS(안정적인) 기본 Linux 커널인 Linux 커널 5.4를 사용하십시오.
2.2.0
API
Stripe라는 새로운 실험용 Zivid Vision Engine이 추가되었습니다.
기존 Zivid Vision Engine의 이름은 Phase입니다.
사용할 Zivid Vision 엔진을 지정하기 위해 새로운
Settings::Experimental::Engine이 추가되었습니다.Stripe Engine은 inter-reflection 아티팩트를 억제하고 실린더 및 크롬 도금 부품과 같은 반짝이는 물체의 포인트 클라우드 품질을 향상시킵니다.
Stripe Engine에는 추가 획득 및 처리 시간이 필요합니다.
Stripe 엔진을 사용할 때는 Reflection Removal Filter와 Contrast Distortion Correction filter를 모두 활성화해야 합니다. 이는 향후 변경될 수 있습니다.
GenICam wrappers의 버그로 인해 Reflection Removal Filter 및 Contrast Distortion Correction filter가 활성화되지 않은 경우 오류를 보고하는 대신 호출이 중단됩니다.
Stripe Engine은 현재 실험적이며 향후 변경 및 개선될 수 있습니다.
Stripe Engine은 Zivid One Plus에서만 지원됩니다(Zivid One 아님).
새로운 공식 Zivid 칼리브레이션 보드 제품군을 지원하도록 교정 API를 확장했습니다. 첫 번째는 ZVDA-CB01(7x8 30mm)입니다. 이 보드는 이제 클라이언트 코드 수정 없이 기존 핸드아이 및 멀티 카메라 교정 기능과 함께 사용할 수 있습니다. 또한 새로운 In-field Correction 기능(아래 참조)과도 함께 사용할 수 있습니다.
새로운 실험용 In-field Correction API가 추가되었습니다. 새로운 ZVDA-CB01 칼리브레이션 보드와 함께 사용하면 카메라의 치수 진위성을 검증하고 보정할 수 있습니다. 이 API는 다음과 같은 기능을 제공합니다.
verifyCamera: 단일 칼리브레이션 보드 캡처를 기반으로 카메라의 Local Dimension Trueness을 정량화합니다.computeCameraCorrection: 하나 이상의 보정 보드 캡처를 기반으로 카메라의 실제 치수를 개선하기 위해 카메라에 적용할 수 있는 보정을 계산합니다. 이 함수는 또한 보정이 적용될 경우 예상할 수 있는 참에 대한 신뢰 구간을 계산합니다.writeCameraCorrection: 카메라에 수정 사항을 씁니다. 카메라의 전원을 껐다 켜거나 다른 PC에 연결하더라도 보정은 카메라에서 지속됩니다. 이 함수를 호출한 후 이 카메라에서 캡처 함수가 호출될 때마다 주어진 보정이 자동으로 사용됩니다.resetCameraCorrection: 카메라 보정을 공장 기본값으로 재설정합니다.hasCameraCorrection: 카메라에 기본이 아닌 보정이 있는지 확인합니다.cameraCorrectionTimestamp: 현재 보정이 카메라에 언제 기록되었는지 확인합니다.자세한 설명은 API 문서를 참조하십시오.
command-line 도구
ZividExperimentalInfieldCorrection을 추가했습니다. 이 도구를 사용하면 사용자가 코드를 작성할 필요 없이 새로운 현장 수정 API에서 핵심 작업을 쉽게 수행할 수 있습니다.ZividExperimentalInfieldCorrection --help명령을 사용하여 사용 지침을 확인하세요. 참고: Linux에서 이 도구는 핵심 설치 프로그램이 아닌zivid-tools패키지의 일부로 제공됩니다.Gamma 설정이 추가되었습니다. 감마는 감마 곡선을 사용하여 포인트 클라우드의 색상을 밝게 또는 어둡게 하는 데 사용할 수 있습니다.
Zivid One+ 펌웨어를 버전 1.8.4로 업데이트했습니다.
Studio
새로운 정보 측면 패널을 추가했습니다.
이 패널에는 사용된 설정, 포인트 클라우드의 해상도 및 캡처 시간을 포함하여 현재 프레임/포인트 클라우드에 대한 정보가 포함되어 있습니다.
캡처 시간은 캡처가 시작된 후 모든 처리가 완료되고 컴퓨팅 장치에서 포인트 클라우드 데이터를 사용할 수 있을 때까지 걸리는 시간으로 정의됩니다.
.zdf 파일을 열면 측면 패널에 이 프레임을 캡처하는 데 사용된 카메라의 일련 번호와 모델 이름과 Zivid SDK 버전이 표시됩니다.
이 새로운 측면 패널은 오른쪽 하단 모서리에 있는 “Information” 를 클릭하거나 “View” 메뉴와 바로 가기, “Shift+I” 를 통해 표시할 수 있습니다.
새로운 Stripe 엔진에 대한 지원이 추가되었습니다.
.zdf 파일을 열 때 포인트 클라우드 뷰 재설정을 비활성화하는 옵션을 “View” 메뉴에 추가했습니다.
메쉬에 대한 바로 가기로 “M” 을 추가했습니다.
Assisted 모드와 Manual 모드 사이를 더 쉽게 전환할 수 있는 탭 버튼이 추가되었습니다.
창 크기가 변경되면 깊이 및 색상 이미지 보기가 재설정되는 문제를 수정했습니다.
GUI의 다양한 위치에서 색상, 크기 및 패딩을 조정했습니다.
Bug fixes
Linux
capture()함수의 후속 예외 이후에 발생할 수 있는 충돌을 수정했습니다. 이전에capture()에서 하나의 예외가 발생한 경우 다른 오류가 발생하면 다른 예외를 throw하는 대신 시스템이 중단될 수 있습니다. 이 충돌은 Ubuntu 16.04 패키지를 사용할 때만 발생합니다.
Windows
일부 바이러스 백신 소프트웨어에서 false positive malware alert를 트리거하는 문제를 수정했습니다.
.NET
동일한 객체에서
.Dispose()를 여러 번 호출하면System.AccessViolationException이 발생할 수 있는 버그가 수정되었습니다.
Firmware
펌웨어가 오랜 시간 후에 중단될 수 있는 문제 수정되었습니다.
2.1.0
API
PointCloud클래스에 다운샘플링 기능을 추가했습니다.다운샘플링은 더 적은 수의 포인트에서 계산을 수행하기 위해 포인트 클라우드의 크기를 줄이는 데 사용할 수 있습니다.
다운샘플링은 원래 포인트 클라우드의 NxN 픽셀 영역을 다운샘플링된 포인트 클라우드의 한 픽셀에 결합합니다. 2x2, 3x3 및 4x4 다운샘플링 옵션을 사용할 수 있습니다.
다운샘플링은 유효하지 않은(NaN) 포인트를 무시하고 SNR^2로 가중치를 평균하여 포인트의 노이즈를 줄이는 방식으로 수행됩니다. 다운샘플링은 컴퓨팅 장치에서 수행됩니다.
이제
Frame클래스에서CameraInfo를 사용할 수 있습니다.CameraInfo에는 프레임을 캡처하는 데 사용되는 카메라의 일련 번호와 모델 이름이 포함됩니다.카메라에 연결하면 “픽셀 형식을 설정하지 못했습니다(CAM_API_STS_NOT_WRITABLE).” 메시지와 함께 예외가 발생하는 문제가 수정되었습니다.
Zivid One+ 펌웨어를 버전 1.7.4로 업데이트했습니다.
카메라가 잠재적으로 응답을 멈출 수 있는 버그를 수정했습니다.
C++
Settings및Settings2D의 숫자 값(예:ExposureTime,Aperture등)은 이제operator<및operator>를 사용하여 비교할 수 있습니다.
.NET
PointCloud.Transform은 이제Transform,Downsample등을 함께 연결할 수 있도록 자체 참조를 반환합니다.
Studio
Depth 이미지 보기에서 “mm” 를 단위로 추가했습니다.
2.0.0
API
새로운
Settings/Settings2D/CaptureAPI가 추가되었습니다:이제 단일
Settings개체에 캡처에 필요한 모든 정보가 포함됩니다.Settings에는 하나 이상의 획득과 필터 및 색상 밸런스와 같은 처리 설정이 포함됩니다. 둘 이상의 획득이 제공되면 HDR 캡처가 수행되고 결합된 프레임이 반환됩니다.이제
Settings개체가Camera의 캡처 방법에 대한 인수로 직접 제공됩니다.Camera에서 별도의 2D 캡처 방식이 제거되었습니다. 2D 캡처는 이제 캡처 메소드에Settings2D를 전달하여 수행됩니다.사용자는
Settings또는Settings2D의 일부를 원하는 만큼 지정할 수 있습니다. 캡처할 때 명시적으로 지정되지 않은 설정은 카메라별 기본값을 사용합니다.
새로운 포인트 클라우드 API:
capture 메소드를 호출하면
PointCloud에 대한 핸들을 제공하는Frame이 반환됩니다.PointCloud객체는 여전히 GPU에 저장되어 있는 포인트 클라우드에 대한 핸들이며, 원하는 경우PointCloud의 다양한 방법을 통해 특정 데이터를 CPU 메모리에 복사할 수 있습니다.PointCloud는 다음 데이터 형식의 복사를 허용합니다.PointXYZPointXYZWPointZColorRGBAPointXYZColorRGBAPointXYZColorBGRASNR
PointCloud기능은DeviceCloud기능을 대체합니다.
새로운
ContrastDistortion필터:이 필터는 매우 강한 강도 기울기로 인해 왜곡된 점을 수정 및/또는 제거하는 기능이 있습니다. 이것은 예를 들어 흰색에서 검은색으로의 갑작스런 변화와 함께 반짝이는/반사되는 물체뿐만 아니라 확산된 물체에도 적용할 수 있습니다.
이 필터는 실험적인 것으로 간주되며 향후 릴리스에서 변경될 수 있습니다.
새로운 multi-camera 보정:
hand-eye 보정과 함께 새로운
Calibration네임스페이스의 일부입니다.Multi-camera calibration은 예를 들어 포인트 클라우드를 단일 참조 프레임으로 결합하기 위해 지정된 기본 카메라의 프레임에서 보조 카메라의 포즈를 찾기 위해 다중 카메라 설정에서 사용됩니다.
GPU-accelerated 포인트 클라우드 변환:
PointCloud의 변환 방법을 통해 사용자는 이제 포인트 클라우드의 3D 좌표에 대한 GPU-accelerated 변환을 제자리에서 수행할 수 있습니다. 4x4 행렬 형태로 제공되는 이러한 변환은Calibration네임스페이스의 기능에서 가져오거나 사용자 정의 변환일 수 있습니다.
새로운
Aperture설정입니다:기존의
Iris설정을 대체하는Aperture설정을 소개합니다.F-number 단위의 소수점 숫자입니다. API는 [1.4 - 32] 범위의 값을 지원합니다.
캡처 시 카메라는 지정된 F-number에서 가장 근접할 수 있는 내부 조리개 위치를 선택합니다.
조리개는
Camera에서 메소드를 호출하여 완전히 닫을 수 있습니다.
새로운 색상 균형 설정:
이제 사용자는 계산된 3D 포인트 좌표에 영향을 주지 않고 세 가지 색상 채널에 적용된 게인을 독립적으로 제어할 수 있습니다.
캡처는 이제 동일한 장면에서, 특히 장면에 밝은 빨간색이 포함된 경우 더 유효한 포인트를 제공할 수 있습니다.
2D 캡처에서 색상 균형에 대한 지원이 추가되었습니다.
새로운 포인트 클라우드 SNR 메트릭:
Signal-to-Noise Ratio(
SNR) 메트릭을 소개합니다. 이것은 이전의Contrast메트릭을 대체하며 항상 음수와 NaN이 아닌 숫자입니다.새로운 SNR 메트릭을 기반으로 하는 3D 포인트 좌표의 향상된 HDR을 제공합니다.
API 1.X로 생성된 ZDF 파일을 로드할 때 포인트 클라우드의 SNR 값은 이전 Contrast 값을 기반으로 근사됩니다.
설정에 대한 새 기본값:
Gain의 기본값이2에서1로 줄어듭니다.One Plus Medium 카메라의 기본값인
Brightness가1.0에서1.5로 증가했습니다.One Plus Large 카메라의 기본값인
Brightness가1.0에서1.8로 증가했습니다.모든 One Plus 카메라의
ExposureTime기본값이8333에서6500으로 축소되었습니다.
새로운
Noise필터:SNR 값을 기반으로 포인트 필터링.
기존 대비 필터를 대체합니다.
제거된 이전
Saturated필터 설정:채도 필터는 이제 항상 활성화되며 설정을 통해 비활성화할 수 없습니다.
새로운
Calibration네임스페이스:기존
HandEye네임스페이스의 내용이Calibration네임스페이스로 이동되었습니다.모든 입력 및 출력 변환 행렬은 이제
PointCloud데이터 형식과 더 잘 일치하도록 double 형식 대신 float 형식입니다.
새로운
CameraInfoAPI:일련 번호, 모델 이름 등을 가져오는 데 사용되는
Camera의 멤버 함수가 제거되었습니다.대신
Camera의 메서드를 통해 새 클래스CameraInfo의 인스턴스에 액세스할 수 있습니다.CameraInfo는 카메라 모델명, 버전, 일련번호, 펌웨어 버전, 카메라에 저장할 수 있는 사용자 데이터의 최대 바이트 수를 포함합니다.
카메라 내장 API 변경 사항:
Frame을 기반으로 효과적인 카메라 intrinsics 기능을 추정할 때 성능이 크게 향상되었습니다.카메라 intrinsics 함수를 가져오는 메서드는
Camera클래스에서 가져와서Frame에서 내장 함수를 가져오는 함수와 함께Experimental::Calibration네임스페이스에 배치됩니다.
성능 향상을 위해
Gaussian필터가 HDR 병합 후로 이동했습니다.“Live-mode” 가 API에서 제거되었습니다.
API에서 양방향 패턴이 제거되었습니다.
ZividVis3D라이브러리의 이름이ZividVisualization으로 변경되었습니다.CloudVisualizer클래스의 이름이Visualizer로 바뀌고Visualization네임스페이스로 이동되었습니다.파일 카메라의 파일 확장자가 .zdf에서 .zfc로 변경되었습니다.
Environment네임스페이스가 API에서 제거되었습니다.이미지 데이터에 접근하기 위한
Frame2D메소드의 이름이colorsRGBA에서imageRGBA로 변경되었습니다.단일 예외인
Zivid::Exception만 포함하도록 예외 API를 단순화했습니다.naming/terminology에 대한 많은 조정.
C++
C++ API에서
PointCloud클래스에는copyData(PointXYZ*)와 같은 멤버 함수를 통해 GPU에서 지정된 사용자 할당 CPU 데이터 버퍼로 데이터를 직접 복사하는 기능도 있습니다.
C#
핵심 API의 기본 변경 사항을 반영하도록 재구성된 C# 인터페이스(위 참조).
CaptureAssistant가 클래스에서 네임스페이스로 변경되었습니다. 이 네임스페이스에는 두 가지 클래스가 있습니다.SuggestSettingsParametersSuggestSettings메서드가 포함된Assistant.
Firmware가 클래스에서 네임스페이스로 변경되었습니다. 이 네임스페이스에는 펌웨어 업데이트 관련 기능을 제공하는Updater라는 새로운 클래스가 있습니다.2D 컬러 데이터의 기본 이미지 클래스는 이제
ImageRGBA라고 합니다. 색상 데이터에 액세스하는 두 가지 방법을 제공합니다.ToArray():ColorRGBA구조체의 2D 배열입니다.ToByteArray(): 3D 바이트 배열로, 세 번째 인덱스는 이미지 채널(RGBA)을 선택하는 데 사용됩니다.
Pose::ToArray()가 제거되었습니다.Pose::ToArray2D의 이름이Pose::ToMatrix()로 변경되었습니다.
GenICam
모든 설정은 핵심 C++ API의 새 이름과 일치하도록 이름이 바뀝니다.
MergedMultiFrame에는 더 이상ApplyType필드가 없습니다.MergedMultiFrame이MultiAcquisitionFrame으로 이름이 변경되었습니다.MultiAcquisitionFrame및 단일 프레임에 대한 중복 설정을 제거했습니다.SettingsControl에는 필터 및 색상 균형과 같은 일반적인 캡처 설정이 포함되어 있습니다.AcquisitionSettingsControl에는 하나의 획득에 대한 설정이 포함되어 있습니다.SingleFrame모드는SettingsControl및AcquisitionSettingsControl카테고리 아래의 설정을 사용합니다.SingleFrame모드는 단일 획득으로 캡처하는 데 사용됩니다.MultiAcquisitionFrame모드는SettingsControl아래의 설정과MultiAcquisitionFrameControl::AddAcquisition을 통해 추가된 모든 수집 설정을 사용합니다.MultiAcquisitionFrame모드는 다중 획득(HDR)으로 캡처하는 데 사용됩니다.Continuous 모드는 더 이상 지원되지 않습니다.
Zivid Studio
File -> “Import/Export Capture Settings” 를 통해 전체 캡처 설정을 저장하거나 로드하는 옵션입니다.
설정 슬라이더의 단계 크기가 개선되었습니다.
하나의 활성화된 획득으로 “Live” 모드를 실행할 때 모든 설정을 변경할 수 있습니다.
밝기 설정이 1.0 이상인 상태에서 “Live” 모드를 실행할 때 UI에 알림을 추가했습니다.
Windows
설치 프로그램에는 더 이상 샘플 또는 샘플 데이터가 포함되지 않습니다. 이것은 이제 <http://github.com/zivid> 에서 찾을 수 있습니다.
Linux
Linux 설치 프로그램(특히
zivid-telicam-driver_*.deb)은 이제 이전(<=1.4) 버전의 Zivid SDK에서 업그레이드하는 경우 이전telicam-sdk패키지를 올바르게 제거해야니다.TelicamSDK 샘플이
/root에 기록되는 Linux 설치 프로그램(특히zivid-telicam-driver_*.deb)의 버그를 수정했습니다. 이 샘플은 더 이상 설치되지 않습니다.
Bug fixes
구형 Zivid One 카메라에서 “Inconsistent frame timing detected” 예외가 발생할 수 있는 문제를 수정했습니다. 이것은 릴리스 1.8.1의 알려진 제한 사항을 수정합니다.
USB 레이어의 리소스 누수를 수정했습니다.
NaN 특징점을 포함하더라도 DetectionResult가 유효한 것으로 간주되는 버그가 수정되었습니다.
충돌하는 소수점 규칙으로 인해 다른 로케일에서 YAML 파일을 저장하고 로드하지 못할 수 있는 버그가 수정되었습니다. YAML 직렬화는 이제 항상 “.” 를 소수점으로 사용합니다.
1.8.1
API
새로운 실험 기능 Zivid::Experimental::Calibration::estimateIntrinsics()를 C++ API에 추가했습니다. 이 기능은 3D 포인트를 2D로 투영할 때 보다 정확한 카메라 내장 기능을 제공합니다.
프로젝터 field-of-view 가장자리 근처의 아티팩트가 올바르게 제거되지 않는 문제를 수정했습니다.
실험적인 multi-Zivid 지원:
이 기능은 한 대의 PC에서 동시에 최대 4대의 Zivid One Plus 카메라를 사용하여 테스트되었습니다.
여러 대의 카메라를 동시에 사용할 수 있지만 각 개별 카메라를 여러 스레드에서 동시에 사용해서는 안 됩니다. 카메라 연결은 순서대로 해야 합니다.
Known limitations:
일부 USB 칩셋은 부하가 높을 때 제대로 작동하지 않습니다(동시에 여러 캡처). 이는 캡처 중에 throw되는 예외로 나타날 수 있습니다. 이 문제가 발생하면 다른 USB 포트나 다른 PC를 사용해 보십시오.
NVIDIA GPU에서 매우 높은 부하가 장기간 지속되는 동안 캡처하면 OpenCL 메모리 부족 관련 예외가 발생할 수 있습니다. GPU의 속도와 RAM 크기가 이 문제에 영향을 줍니다.
Linux용 Intel NEO OpenCL 드라이버를 사용하는 경우 버전 20.08 이상이 필요합니다. 이 드라이버의 이전 버전은 불안정할 수 있습니다.
Linux
zivid-telicam-driver를 버전 3.0.1.1로 업데이트했습니다.
zivid-telicam-driver deb 패키지에 zivid deb 패키지에 대한 종속성을 추가했습니다.
Zivid Studio
.zdf 파일을 열면 파일 이름이 창의 제목 표시줄에 표시됩니다.
Known Limitations
기존 Zivid One 카메라(One Plus 시리즈 아님) 사용자는 캡처 중에 예외가 발생할 수 있습니다. 기존 Zivid One 모델 사용자는 SDK 1.8.0 또는 이전 버전을 유지하는 것이 좋습니다.
1.8.0
API
향상된 capture assistant:
향상된 성능(분석 시간 약 25% 단축).
캡처 시간 예산(“Max capture time”)에 대한 결과가 1초 미만으로 개선되었습니다.
대형 카메라의 경우 잘못된 outlier 필터 임계값이 반환되는 문제를 수정했습니다.
프로젝터 field-of-view 가장자리 근처의 artifacts 제거합니다.
새로운 Intel GPU(Broadwell 이상)에서 Linux용 Intel NEO OpenCL 드라이버와의 호환성 문제를 수정했습니다.
double-precision floating-point 기능이 없는 GPU 지원이 향상되었습니다.
.NET
샘플을 포함하여 Capture Assistant에 대한 지원이 .NET API에 추가되었습니다.
Zivid Studio
Assisted 모드(Capture Assistant)는 이제 Zivid Studio를 열 때 기본 모드입니다.
Tools
HandEyeCalibration CLI 도구가 Linux에서 작동하지 않는 문제가 수정되었습니다.
1.7.0
API
HDR 프레임의 색상이 개선되었습니다.
향상된 capture assistant:
일반적으로 모든 장면, 특히 반짝이는 개체에 대한 품질이 개선되었습니다.
주변광 주파수에 따라 제안을 적용하는 옵션입니다.
초점이 맞지 않는 문제가 개선되었습니다.
최대 허용 예산이 10초로 증가했습니다.
더 빠른 장면 분석합니다.
펌웨어 업데이트 중에 USB 또는 전원을 분리하면 다음 펌웨어 업데이트로 인해 소프트웨어가 충돌하거나 중단되는 상황이 발생할 수 있는 문제를 수정했습니다.
Zivid One+ 펌웨어를 버전 1.6.7로 업데이트했습니다.
Zivid Studio
주변광 주파수에 따라 캡처 도우미 제안을 조정하는 옵션입니다.
1.6.0
API
Hand-eye calibration API가 추가되었습니다.
2D capture API가 추가되었습니다.
OpenCL 드라이버가 올바르게 설정되지 않은 경우 더 유용한 오류 메시지.
Windows에서 오프라인 설치를 지원합니다. 이제 샘플 데이터가 설치 프로그램에 포함됩니다.
더 명백한 CLI 옵션으로 SampleCameraUserData를 개선하고 더 장황하게 만들었습니다.
캡처하는 동안 USB를 뽑을 때 잠재적인 카메라 교착 상태가 되던 오류가 수정되었습니다.
Capture Assistant는 피사계 심도를 증가시키기 위해 46 이상의 조리개 값을 피합니다.
PCD 파일을 내보낼 때 올바른 알파 값을 사용하십시오.
Capture Assistant CLI 도구는 이제 제안된 설정 저장을 지원합니다.
Vis3D 라이브러리에서 Qt 종속성을 제거했습니다.
SampleHandEyeCalibration 샘플을 추가했습니다.
SampleCapture2D 샘플을 추가했습니다.
Vis3D 샘플을 추가했습니다.
CloudVisualizer에 대한 reset view(백스페이스) 및 색상 켜기/끄기(c)에 대한 키보드 단축키를 추가했습니다.
.NET
.NET API를 C++ API와 동기화 상태로 유지하기 위해 누락된 사용자 데이터 기능을 추가했습니다.
릴리스 빌드에서 디버그 DLL을 로드하지 않도록 올바른 폴더에서 샘플 코드 복사본 릴리스 DLL을 만듭니다.
참조 문서가 개선되었습니다.
월 변환 버그를 수정했습니다.
GenICam
Ubuntu에서 HALCON 19에 대한 지원이 추가되었습니다.
Zivid Studio
setting tooltips이 잘못 표시되는 문제가 수정되었습니다.
depth/color 2D 보기에서 마우스를 이동할 때 잠재적인 충돌이 수정되었습니다.
탭 변경 시 depth/color 2D 보기가 재설정되는 문제가 수정되었습니다.
오른쪽 패널의 “Capture” 메뉴에 “Save settings to folder” 이 추가되었습니다.
Known defects
펌웨어 업데이트 중에 USB 또는 전원을 분리하면 다음 펌웨어 업데이트로 인해 소프트웨어가 충돌하거나 중단되는 상황이 발생할 수 있습니다. 이 상황에서 복구하려면 카메라의 전원을 껐다 켭니다.
1.5.0
API
CMake 구성 파일에서 향상된 의미 체계 버전 지원합니다. 이제 동일한 주 버전을 사용하여 find_package를 사용할 때 최신 버전의 Zivid SDK를 찾을 수 있지만 필요한 버전이나 패치 버전은 더 낮습니다.
telicam-sdk deb 패키지의 이름을 zivid-telicam-driver로 변경했습니다.
이제 empty 벡터에서 CombineFrames를 호출하면 예외가 발생하지만 이전에는 충돌이 발생했습니다.
Windows 설치 프로그램은 이제 기본적으로 설치 중에 시스템 PATH에 Zivid 바이너리 디렉토리를 추가합니다.
experimental GenICam 드라이버를 설치할 때 Zivid는 GENICAM_GENTL64_PATH에 추가됩니다.
experimental GenICam 드라이버에 대해 지원되는 Halcon 버전은 19로 변경되었습니다.
API 문서 개선.
유휴 상태일 때 프로젝터 미러를 고정합니다.
카메라가 PC에 연결되어 있지만 시간 초과 내에 열거되지 않는 경우 카메라를 재설정하는 감시 장치를 추가했습니다.
외부 카메라 팬의 최소 RPM으로 약간 증가합니다.
정적 링크는 Windows 빌드에 대한 더 많은 종속성을 제공하므로 Matlab 및 Labview의 .NET API를 더 쉽게 사용할 수 있습니다.
최신 Ubuntu 버전에 18.04 패키지를 설치할 수 있도록 deb 패키지의 사후 설치 단계를 개선했습니다.
카메라 펌웨어 업그레이드 시 USB 재연결 처리가 개선되었습니다. 이것은 Docker에서 카메라 깜박임 문제를 수정합니다.
Contrast 값 계산이 개선되었습니다. 새로운 방법은 SNR을 기반으로 하며 다양한 주변 조명 조건에서 대비 필터와 HDR이 보다 일관되게 작동하도록 합니다.
실험적 자동 노출 기능에 대한 개선 및 주요 API 변경 사항:
Capture Assistant로 브랜드가 변경되었습니다.
핵심 알고리즘 개선.
다양한 카메라 모델에 대한 더 나은 지원을 제공합니다..
Region of Interest 기능이 제거되었습니다.
Zivid One+ 펌웨어를 버전 1.6.6으로 업데이트했습니다.
Zivid Studio
캡처를 위한 새로운 Assisted 모드를 지원합니다.
새로운 히스토그램 기능을 지원합니다.
이제 depth 보기에서 Z-range를 구성할 수 있습니다.
color/RGB 이미지를 PNG/JPG/BMP로 저장하기 위한 지원을 추가합니다.
UI의 일부에서 소수점 3자리가 사용되기 전에 모든 UI에서 일관되게 소수점 2자리를 표시합니다.
카메라 연결 해제 버튼을 하위 메뉴로 이동했습니다.
색상 또는 메쉬 설정을 변경하면 자동으로 3D 보기로 변경됩니다.
포인트 클라우드에 큰 이상값이 있을 때 3D 보기에서 탐색이 개선되었습니다.
연결 버튼이 연결 중 상태에서 멈추는 오류가 수정되었습니다.
버튼 텍스트가 UPPERCASE에서 Capitalized Case로 변경되었습니다.
UI의 모양과 느낌이 약간 개선되었습니다.
1.4.0
API
experimental Auto Exposure API가 추가되었습니다.
더 적은 수의 좋은 포인트 제거하기 위해 반사 필터 개선되었습니다.
양방향 모드에서 반사 필터가 개선되었습니다.
반사 필터에서 반짝이는 물체와 밝은 표면이 있는 장면에서 검은색 선이 나타나는 문제가 수정되었습니다.
더 적은 수의 좋은 포인트 제거하기 위해 outlier 필터 개선되었습니다
바이너리 파일과 헤더 파일이 동기화되어 있는지 확인하기 위해 애플리케이션 클래스에 테스트를 추가했습니다.
초기 CAM_API_STS_TIMEOUT 오류 후 카메라가 항상 CAM_API_STS_NOT_WRITABLE을 반환하는 문제를 수정했습니다.
Zivid Studio
시작 중 오류 처리 방법이 개선 되었습니다. 이제 Zivid Core 라이브러리가 초기화에 실패할 경우 응용 프로그램에 오류 대화 상자가 표시됩니다.
1.3.0
API
Gaussian 필터가 추가되었습니다.
OpenCV 형식으로 카메라 intrinsics 기능을 제공합니다.
HDR 포인트 병합을 개선하여 최대 sqrt(이미지)까지 노이즈를 줄입니다.
Zivid One+ 펌웨어를 버전 1.6.3으로 업데이트했습니다.
.NET
데이터 모델(Settings, FrameInfo, CameraIntrinsics 및 CameraState)에 대한 저장 및 로드 기능을 추가합니다.
Zivid Studio
Gaussian 필터가 추가되었습니다.
렌더링 성능이 향상되었습니다.
2D 보기에서 마우스 포인터 아래에 픽셀의 XYZ/RGB/Contrast를 표시합니다.
2D 이미지 보기 동작을 개선합니다.
Tools
ZividSuggestSettings의 이름이 ZividExperimentalSuggestSettings로 변경되었습니다.
1.2.1
Zivid One Plus Small, Medium 및 Large, revision B에 대한 지원을 시작합니다.
1.2.0
Ubuntu 16.04 및 18.04 지원.
Windows 10용 GenICam/HALCON 미리보기.
GPU 컴퓨팅 플랫폼으로 DirectX에서 OpenCL로 변경되었습니다.
Performance improvements.
Zivid Labs에서 Zivid로 브랜드를 변경했습니다(로그 및 구성 폴더 포함).
Zivid One Plus Small, Medium 및 Large를 위한 엔지니어링 빌드를 지원합니다.
API
API에서 카메라를 플래시하는 기능이 추가되었습니다.
카메라에 사용자 데이터를 쓰는 기능이 추가되었습니다.
Zivid One Plus에 대해 1.0 이상의 밝기를 허용하는 부스트 모드를 지원합니다.
C++
CMake 파일이 module 모드에서 config 모드로 변경되었습니다.
설정에 대한 구조적 바인딩을 지원합니다.
Zivid Studio
Rewritten from scratch:
Modern look and feel.
거의 사용되지 않는 기능을 제거했습니다.
1.0.1
새로운 카메라 revision을 지원합니다.
Iris 기능의 불일치를 수정합니다.
1.0.0
릴리스 후보 기간 동안 다음 변경 사항 중 일부가 도입되었습니다. rc-candidate에서 업그레이드하는 경우 전체가 아닌 일부가 적용됩니다.
Major changes
새로운 참조 프레임. 기준 프레임이 프로젝터에서 카메라로 변경되었습니다. 이전 소프트웨어를 사용하여 수행한 eye-hand 보정은 다시 수행해야 합니다. 이것은 rc3과 rc4 사이에서 변경되었습니다.
버전 1.0.0부터 API는 안정적이며 <https://semver.org/>의 시맨틱 버전 관리 체계를 따릅니다.
New settings API.
HDR 성능이 향상되었습니다.
API가 완전히 문서화되었습니다.
동일한 컴퓨터에 연결된 여러 대의 Zivid 카메라를 지원합니다.
Zivid Studio를 사용하여 자동으로 또는 독립 실행형 애플리케이션을 사용하여 수동으로 펌웨어 업데이트가 가능합니다.
리소스를 관리하는 Application 클래스를 추가했습니다. Zivid를 사용할 때 가장 먼저 생성되어야 하는 클래스입니다.
C++ API에서 반환 코드를 제거했습니다. API는 이제 오류 처리에만 예외를 사용합니다.
시스템 클래스를 제거하고 보다 구체적인 네임스페이스로 분할했습니다.
Full change log
Visual Studio 샘플 프로젝트가 설치 프로그램에 추가되었습니다.
CMake 샘플 프로젝트가 설치 프로그램에 추가되었습니다.
노출 시간을 19654로 설정해도 더 이상 실패하지 않습니다.
프레임을 캡처할 때 Zivid Studio가 무작위로 충돌하는 문제를 수정했습니다.
이제 MATLAB에서 ZividNET.dll을 로드할 수 있습니다.
잘못된 dimensions의 텍스처를 만들려고 할 때 오류를 보고합니다.
일부 경우에 손상된 출력 데이터를 제공하는 양방향이 수정되었습니다.
이제 기본 설정이 콘텐츠 크기를 적절하게 조정하고 있습니다.
Zivid Studio를 종료할 때 팬을 끕니다.
revision 3 이전 카메라에 대한 지원이 종료되었습니다.
개선된 signal-to-noise ratio 및 감소된 잡음을 위한 새로운 패턴이 적용됩니다.
Dialog에 Zivid Studio 버전 정보가 추가되었습니다.
설치 프로그램에 CameraState.h 및 ImageInfo.h를 추가했습니다.
Zivid Studio의 메쉬 모드에 대한 버그가 수정되었습니다.
이제 Zivid Studio에서 YML에 설정 저장/로드를 지원합니다.
ZividStudio에 카메라 재연결이 추가되었습니다.
파일에 로깅.
Zivid Studio의 타사 라이브러리에 대한 “legal notice” 를 포함합니다.
더 멋진 application 아이콘을 추가했습니다.
Toshiba Teli 드라이버의 새 버전을 사용합니다.
실행 파일에 디지털 서명을 적용했습니다.
공개 C++ API를 정리했습니다.
Program FilesZividSampleData에 샘플을 추가했습니다.
카메라 유닛 정보를 읽을 수 없는 경우 Zivid Studio에서 오류 대화 상자를 표시합니다.
모든 헤더 파일의 최신 헤더 주석을 수정했습니다.
종료 시 라이브 패턴 표시가 꺼져 있는지 확인하십시오.
public API에서 모든 TODO 및 FIXME를 수정했습니다.
더 설명적이고 일관성 있는 이름으로 public 함수 이름을 변경했습니다.
카메라를 연결하지 않아도 Zivid Studio가 제대로 초기화되도록 합니다.
public API C++11을 준수하도록 합니다.
제거 프로그램을 시작할 때 경고를 방지하려면 제거 프로그램에 서명하십시오.
새 버전을 설치할 때 이전 레지스트리 키를 제거하십시오.
설치 프로그램 실행의 일부로 이전 버전을 제거합니다.
내부 코드와 샘플 코드 모두 Visual Studio에서 /WX /W4를 사용하여 빌드합니다.
MSVC C++ 확장 사용을 중지했습니다.
.NET에서 버전 정보를 노출합니다.
펌웨어 버전이 일치하지 않으면 카메라 연결을 거부합니다.
ZividStudio에 새 버전 알림이 추가되었습니다.
public API에서 logging API를 제거합니다.
public API에서 상태 콜백 API를 제거합니다.
CameraInfo와 Camera가 병합되었습니다.
정상적인 작업 조건에서 팬 소음 감소합니다.
public API에서 usbPath 및 internalCameraId를 제거했습니다.
Zivid Studio를 .zdf 파일과 연결합니다.
Windows의 “Add/Remove programs” 에 Zivid가 나타나도록 수정되었습니다.
설치 파일에 Visual Studio용 VCRedist 파일을 포함합니다.
필요한 경우 Toshiba Teli 카메라 드라이버를 다운로드하여 설치합니다.
public API에서 std::shared_ptr을 제거했습니다.
C++ API에서 ZSetting을 제거했습니다.
Measurement 클래스의 이름을 Frame으로 변경했습니다.
saveMeasurement를 System에서 Frame 클래스로 이동했습니다.
CloudViewer에 대한 별도의 설치 프로그램을 추가했습니다.
다양한 버그 수정 및 성능 개선.
0.9.544
설치 패키지에서 부스트 DLL이 누락되는 문제가 수정되었습니다.
0.9.539
수직 패턴과 함께 사용할 때 반사 필터의 버그를 수정했습니다.
0.9.537
버전 v0.9.534에 도입된 라이브 모드의 버그를 수정했습니다.
0.9.534
이것은 API 및 GUI의 이름이 ShapeCrafter에서 Zivid로 변경되기 전의 마지막 릴리스 중 하나입니다(예: ShapeCrafterGUI는 Zivid Studio가 되고 ShapeCrafter 클래스는 이름이 Zivid로 변경됩니다).
수직 패턴에 대한 지원이 추가되었습니다(패턴의 두 배: 가로 + 세로). API에서 enablePerpendicularPatterns()를 사용합니다(또는 GUI의 기본 설정을 통해 전환). 중요: 현재 하드웨어의 한계로 인해 프로젝터 노출 시간을 약 10초 이상으로 늘려야 합니다. 이것이 안정되려면 33000 마이크로초가 필요합니다.
반사로 인한 outliers을 감지하고 제거할 수 있는 반사 필터가 추가되었습니다. 반사 필터는 수직 패턴을 사용할 때 가장 잘 작동합니다(기본 설정 참조). API의 enableReflectionFilter()를 통해 켭니다.
ShapeCrafterGUI: Edit->Preferences 을 통해 또는 API의 enableErrorCorrectingCode()를 통해 패턴 모드를 수정하는 LGGC(Large Gap Gray Code) 오류를 지원합니다.
이제 포화 픽셀을 감지하고 제거할 수 있습니다. HDR 측정의 융합을 개선해야 합니다. GUI의 환경 설정을 통해 활성화(또는 활성화 호출)하거나 API에서 setMaskSaturated를 호출합니다.
firmware revision(C++ 및 .NET API)을 가져오는 getFirmwareLabel 기능을 추가했습니다.
ShapeCrafterAPI: PCB 개정판 2에 대한 지원이 추가되었습니다. 예를 들어 Iris(따라서 setProductRevision 함수)에 대한 pinning이 다릅니다.
GUI의 기본 설정 대화 상자에서 제품 개정을 선택합니다.(Rev. 0(PoC), Engineering Model Rev. 1 및 Engineering Model Rev. 2 간의 차이점을 처리합니다.)
API에 setProductRevision() 함수를 추가했습니다. ShapeCrafter를 초기화하기 전에 이 함수를 호출하십시오.
C++ 및 .NET API에 isConnected() 함수를 추가했습니다.
함수 initialize()는 이제 카메라와 프로젝터가 모두 성공적으로 연결될 수 있는지 여부를 알려주는 부울 플래그를 반환합니다.
펌웨어 업데이트: Zivid는 이제 7초 스플래시 이미지로 시작한 다음 자동으로 꺼집니다. 이를 위해서는 펌웨어 업데이트가 필요합니다. 관련 펌웨어 ZIVID_v0_9_10_ROM_v300_splash.bin을 다운로드하여 설치하십시오.
ShapeCrafterNET: Logger.setLogCallback() 함수를 추가했습니다. .NET API의 클라이언트가 기본 C++ API에서 로그 콜백 메시지를 수신할 수 있도록 합니다.
ShapeCrafterNET: 개선된 StringSettings 및 StringSetting 클래스. 이제 C++처럼 동작합니다(인덱싱을 통해 읽기/쓰기 가능).
ShapeCrafterNET: .NET API를 사용할 때 종료 시 충돌을 일으키는 버그를 수정하려고 시도했습니다.
ShapeCrafterNET: 지정된 DLL에 대한 버전 정보를 반환하는 getVersionInfoForModule() 함수가 추가되었습니다.
ShapeCrafterGUI: Help->About dialog box를 통해 모든 DLL의 버전 번호를 확인합니다.
ShapeCrafterGUI: 도구 모음의 버튼을 통해 monochrome color (RGB 비활성화)으로 포인트 클라우드 보기를 지원합니다.
ShapeCrafterGUI: 이제 메시 보기가 시각화를 즉시 업데이트합니다.
ShapeCrafterGUI: 보정되지 않은 측정과 관련된 버그를 수정했습니다.
ShapeCrafterGUI: 기본 설정 대화 상자에서 적용을 클릭하면 이제 시스템을 다시 초기화해야 합니다(예: 새 보정 파일 로드 등).
CloudViewer: 더 이상 PCL 기반이 아닌 포인트 클라우드를 시각화하기 위한 새로운 애플리케이션(DirectX 기반 아님) W3P 파일과도 연관될 수 있습니다.
ShapeCrafterAPI: 이제 카메라를 초기화할 수 없는 경우 예외가 발생합니다.
Python API: Iris 제어에 대한 지원이 추가되었습니다.
ZividCalibrationApp: 새로운 Qt 기반 교정 애플리케이션. 응용 프로그램은 이미지를 저장하기 전에 프로젝터/카메라의 이미지 모서리를 감지하려고 시도합니다.
CMake에서 패키지 및 설치 프로그램의 자동 생성을 추가했습니다.