关于无人机实时发送图像数据的问题
Posted
技术标签:
【中文标题】关于无人机实时发送图像数据的问题【英文标题】:Question about Real time Image data sending from drone 【发布时间】:2021-12-31 20:18:39 【问题描述】:我有一个关于开发功能的问题...
我正在开发一种功能,可以实时接收来自 2 架无人机(Phantom 4 Advanced、Inspire 2)的图像数据并将它们合并。
为了测试,我尝试接收一张图片,但是接收时间很长..
这是我的代码...
camera.setShootPhotoMode(photoMode, new CommonCallbacks.CompletionCallback()
@Override
public void onResult(DJIError djiError)
if (null == djiError)
mHandler.postDelayed(new Runnable()
@Override
public void run()
camera.startShootPhoto(new CommonCallbacks.CompletionCallback()
@Override
public void onResult(DJIError djiError)
if (djiError == null)
showToast("take photo: success");
//start 시간 찍고
Log.d("Start Time: ", Long.toString(System.currentTimeMillis()));
else
showToast(djiError.getDescription());
);
, 2000);
);
//카메라 데이터 핸드폰에 저장
camera.setMediaFileCallback(new MediaFile.Callback()
@Override
public void onNewFile(@NonNull MediaFile mediaFile)
mediaFile.fetchFileData(file, "imageData", new DownloadListener<String>()
@Override
public void onStart()
showToast("Start downloading.");
@Override
public void onRateUpdate(long l, long l1, long l2)
@Override
public void onRealtimeDataUpdate(byte[] bytes, long l, boolean b)
@Override
public void onProgress(long l, long l1)
@Override
public void onSuccess(String s)
showToast("Download Succeed.");
//end time
Log.d("End Time: ", Long.toString(System.currentTimeMillis()));
@Override
public void onFailure(DJIError djiError)
if(djiError != null)
showToast("Failed..");
//end time
Log.d("End Time: ", Long.toString(System.currentTimeMillis()));
);
showToast("Image is successfully Saved");
Log.d("Camera Image Transfer: ", "Succeed!");
);
我使用 shootphotomode 和 setmediafilecallback 将其发送到我的手机..
还有其他实时接收数据的方法吗?
我一直很感激您花一些时间阅读我的问题。非常感谢您!
【问题讨论】:
【参考方案1】:Fullres 照片需要很长时间,您对此无能为力。这永远不会是实时的。
如果您需要实时图像,则必须从 fpv 直播中抓取帧,该直播采用低分辨率和 720p/1080p h264 编码。 这是实时的,大约有 200 毫秒的延迟,就像您在 fpvview 中看到的那样。
我通常只是从 fpvview 导出一个位图,这是最快的方法,因为您不需要解码 264。使用该方法可以轻松读取 60fps。
【讨论】:
以上是关于关于无人机实时发送图像数据的问题的主要内容,如果未能解决你的问题,请参考以下文章
无人机飞行数据java版本api大疆无人机SpringBoot
无人机飞行数据java版本api大疆无人机SpringBoot
无人机飞行数据java版本api大疆无人机SpringBoot