【发布时间】:2013-07-17 14:05:03
【问题描述】:
我正在编写代码以从图像捕获中检索经纬度。我可以使用相机事件和 onActivityResult 拍摄图像。
eprotected void onActivityResult(int requestCode, int resultCode, Intent data) {
Uri _uri = null;
Cursor cursor = null;
try {
final int PICK_IMAGE = 1;
if (requestCode == PICK_IMAGE && data != null
&& data.getData() != null) {
_uri = data.getData();
if (_uri != null) {
// User had pick an image.
cursor = getContentResolver()
.query(_uri,
new String[] { android.provider.MediaStore.Images.ImageColumns.DATA },
null, null, null);
cursor.moveToFirst();
// Link to the image
final String imageFilePath = cursor.getString(0);
// Toast.makeText(getApplicationContext(), imageFilePath,
// Toast.LENGTH_LONG).show();
imageLocation= imageFilePath;
File imgFile = new File(imageFilePath);
if (imgFile.exists()) {
Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
captureImage.setImageBitmap(myBitmap);
}
cursor.close();
} else {
// Toast.makeText(getApplicationContext(), getSdCard,
// Toast.LENGTH_LONG).show();
}
}
super.onActivityResult(requestCode, resultCode, data);
} catch (Exception e) {
if (cursor == null || cursor.equals("")) {
String getSdCard = _uri.getPath();
imageLocation= getSdCard;
File imgFile = new File(getSdCard);
if (imgFile.exists()) {
Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
captureImage.setImageBitmap(myBitmap);
}
}
e.printStackTrace();
}
}
从这里我们如何从图像中获得纬度和经度。我搜索了一段时间,我无法获得位置。
【问题讨论】:
-
从图像中“获取经纬度”是什么意思?有人会使用
LocationManager来获取该信息,但这与位置无关。 -
你是说拍照时获取当前设备的位置吗?
-
我不确定,相机是否捕获带有经纬度位置的图像。我是这个话题的新手。
-
您只能使用 gps 和/或 wi-fi 获取位置,因此,如果在拍摄照片的地方启用了这些功能,那么您可以使用 LocationManager 获取经纬度,但如果您的意思是获取通过分析该图像的经纬度,它应该非常困难
-
伙计,你想从图像中获取 lat lng 吗?你的问题是什么意思?