Я использую ImageAnalysis для вывода, используя pytorch. Теперь я также хочу сфотографировать то, что вижу, и сохранить его в файле .jpg
Как я могу это сделать?
У меня второй (менее важный) вопрос: могу ли я добавить файл .jpg в файл .csv? Если нет, что может быть удобным способом сделать это?
Спасибо.
package org.pytorch.demo.vision;
import android.Manifest;
import ...
public abstract class AbstractCameraXActivity<R> extends BaseModuleActivity {
...
@Override
protected void onCreate(Bundle savedInstanceState) {
...
startBackgroundThread();
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.CAMERA)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(
this,
PERMISSIONS,
REQUEST_CODE_CAMERA_PERMISSION);
} else {
setupCameraX();
}
}
@Override
public void onRequestPermissionsResult(
...
}
private void setupCameraX() {
final TextureView textureView = getCameraPreviewTextureView();
final PreviewConfig previewConfig = new PreviewConfig.Builder().build();
final Preview preview = new Preview(previewConfig);
preview.setOnPreviewOutputUpdateListener(output -> textureView.setSurfaceTexture(output.getSurfaceTexture()));
final ImageAnalysisConfig imageAnalysisConfig =
new ImageAnalysisConfig.Builder()
.setTargetResolution(new Size(224, 224))
.setCallbackHandler(mBackgroundHandler)
.setImageReaderMode(ImageAnalysis.ImageReaderMode.ACQUIRE_LATEST_IMAGE)
.build();
final ImageAnalysis imageAnalysis = new ImageAnalysis(imageAnalysisConfig);
imageAnalysis.setAnalyzer(
(image, rotationDegrees) -> {
if (SystemClock.elapsedRealtime() - mLastAnalysisResultTime < 500) {
return;
}
final R result = analyzeImage(image, rotationDegrees);
if (result != null) {
mLastAnalysisResultTime = SystemClock.elapsedRealtime();
runOnUiThread(() -> applyToUiAnalyzeImageResult(result));
}
});
CameraX.bindToLifecycle(this, preview, imageAnalysis);
}