Для получения температуры в определенной точке вам нужны положения X и Y.
Вы можете получить положение пикселя, используя событие OnTouch, например, View.IOnTouchListener.
Пример кода:
public bool OnTouch(View v, MotionEvent e)
{
Position_X = (int)e.GetX();
Position_Y = (int)e.GetY();
return true;
}
и OnFrameProcessed, ваш код будет выглядеть так:
public void OnFrameProcessed(RenderedImage renderedImage)
{
if (renderedImage.InvokeImageType() == RenderedImage.ImageType.ThermalRadiometricKelvinImage)
{
var step = renderedImage.Width();
var pixel = Position_X + (Position_Y * step);
var thermalPixels = renderedImage.ThermalPixelValues();
if (thermalPixels.Length < pixel)
{
pixel = thermalPixels.Length - 1;
}
//temperature in point
AvgPointTemperature = (thermalPixels[pixel] / 100.0) - 273.15;
}
}
Я не знаю, лучший ли это метод, но тот, который я нашел.
Спасибо.