我有一个项目,我将使用Flutter开发一个应用程序。该应用程序需要人脸识别和实时图像处理。这类似于Instagram的故事,应用程序可以实时修改图像,例如更改背景或覆盖一些文本等。
我只是想问一下,有没有办法做到这一点?或者,如果有的话,我可以使用哪些东西(库、指南或先决条件(来开发这样的应用程序。我已经在谷歌上搜索了,但我只得到了很少的结果,它们对我来说都有点难以理解。
由于flutter有点新,它仍然没有固定的方法来执行实时图像处理。如果你只需要使用firebaseML视觉,你可以使用这个插件:https://pub.dev/packages/firebase_livestream_ml_vision
但是,如果您需要更具体的东西,我建议您使用方法通道并运行一些特定于平台的代码。特别是,如果你正在为android开发,我建议你看看CameraX库。
我给你一个例子,我是如何使用它来检索条形码的
void _launchCameraX(BuildContext context) async {
String result = await MethodChannel("CAMERA_X").invokeMethod('SCAN');
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => NewPage(result),
),
);
在android主要活动:
private final static String CAMERA_X_CHANNEL = "CAMERA_X";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getComponents();
setUpResultsHandlers();
new MethodChannel(getFlutterView(), CAMERA_X_CHANNEL).setMethodCallHandler((call, result) -> {
if (call.method.equals(SCAN_METHOD)) {
Intent intent = new Intent(this, ScannerActivity.class);
this.result = result;
startActivityForResult(intent, qrRequestCode);
}
});
GeneratedPluginRegistrant.registerWith(this);
}
//然后我用了X 相机