Java 如何在Android Studio上的UVCCamera库中使用图像调整(亮度、对比度)
我正试图建立一个应用程序,从usb摄像头捕捉图片,使用UVCCamera从 但是,我不知道如何在这个库中实现图像调整设置(如调整亮度、对比度、白平衡)。 我尝试使用seekbar调整亮度设置,以下是我的代码:Java 如何在Android Studio上的UVCCamera库中使用图像调整(亮度、对比度),java,android,android-ndk,usb-otg,Java,Android,Android Ndk,Usb Otg,我正试图建立一个应用程序,从usb摄像头捕捉图片,使用UVCCamera从 但是,我不知道如何在这个库中实现图像调整设置(如调整亮度、对比度、白平衡)。 我尝试使用seekbar调整亮度设置,以下是我的代码: final UVCCamera camera = new UVCCamera(); private final OnSeekBarChangeListener mSeekBarChangeListener = new OnSeekBarChangeListener() { @Ov
final UVCCamera camera = new UVCCamera();
private final OnSeekBarChangeListener mSeekBarChangeListener = new OnSeekBarChangeListener()
{
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser)
{
if (mCameraHandler.isOpened()) //When USB Camera, Connected
{
camera.setBrightness(progress);
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar)
{
}
@Override
public void onStopTrackingTouch(SeekBar seekBar)
{
}
};
如果我试图改变seekbar的值,这个值已经改变了,但它不会改变亮度。
有人能告诉我,如何更改这个库中的图像调整,或者给我修改代码吗?
任何答案都将是我的荣幸
大家好,祝大家愉快:)我从新版本的库(libuvccamera、usbCameraCommon)更新了项目中的文件,并修改了示例8中的代码。我给出了一个示例代码。下面是我得到的代码示例
private SeekBar.OnSeekBarChangeListener seekBarChangeListener =
new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
// TODO Auto-generated method stub
br = progress;
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
if (isActive()) {
setValue(seekBar.getProgress());
}
}
// TODO Auto-generated method stub
};
private int setValue( final int value) {
return mCameraHandler != null ? mCameraHandler.setValue(value) : 0;
}
private boolean isActive() {
return mCameraHandler != null && mCameraHandler.isOpened();
}
并编辑AbstractUVCCameraHandler.java
public int setValue( final int value) {
checkReleased();
final CameraThread thread = mWeakThread.get();
final UVCCamera camera = thread != null ? thread.mUVCCamera : null;
if (camera != null) {
camera.setBrightness(value);
return camera.getBrightness();
}
throw new IllegalStateException();
}