java - 在 Java Android 中从图像获取坐标

标签 java android image bufferedimage pixel

我在 Android 项目中使用 Java 的 BufferedImage。在此项目中,允许用户选择图像的一小部分。

例如:如果您有一张带有建筑物的公园的图像。用户可以对草进行小范围的选择,并且 Android 程序需要保存该选择的坐标。

我想知道 BufferedImage 中是否有支持此功能的功能:让用户选择图像的一小部分(使用触摸屏)并从图像中的这些位置获取坐标。如果没有,我还能做什么?

最佳答案

您可以将点击的像素位置(x,y)(即光标位置)存储到SQLite数据库中,并且不需要存储它周围的所有值。如果您想检查该像素周围的点击(带有容差值),以下代码将帮助您:

    int[] xyReceivedPixel = { 15, 20 };
    int[] xyOriginalPixel = { 30, 15 };
    int toleranceValue = 30;

    boolean status = (xyReceivedPixel[0] < xyOriginalPixel[0] + toleranceValue 
            || xyReceivedPixel[0] > xyOriginalPixel[0] - toleranceValue)
            && (xyReceivedPixel[1] < xyOriginalPixel[1] + toleranceValue 
                    || xyReceivedPixel[1] > xyOriginalPixel[1] - toleranceValue);

    System.out.println(status);

这里,xyOriginalPixel是数据库中存储的原始像素点,xyReceivedPixel是再次点击时获取的像素点或一个像素点那就是要与它进行比较。检查xyReceivedPixel是否与xyOriginalPixel接近,最大差值为toleranceValue

关于java - 在 Java Android 中从图像获取坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14650238/

相关文章:

java - 使用拉绳将字符串写入图像时更改颜色

java - 方形子序列

java - 为什么 byte += 1 编译但 byte = byte + 1 不编译?

android - Probleme线程连接数据库mysql android

Android:在代码中设置小部件尺寸的通用方法?

java - Firebase如何使用orderbychild

ios - 不同目标的 Xcode 启动图像

java - 从 Scratch 对未测试代码执行单元和集成测试的方法

java - 如何只在for循环中的所有条件都为真时才返回true?

Python matplotlib 图像 + 点图