react native 中使用OpenCV4.3.0,并实现inpaint

这篇博客介绍了如何在reactnative 0.62.0环境中,基于react-native-opencv3的修改版使用OpenCV 4.3.0-contrib。文章详细阐述了遇到的问题及解决方案,包括修改build.gradle引用、修复保存图像错误、新增matToImage方法、增加对inpaint函数的支持以及绘制矩形方法。作者提供了完整的react-native-opencv4代码供需要者获取。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.【环境】

reactnative 0.62.0

react-native-opencv3 基础上做了修改,使用了4.3.0-contrib

com.quickbirdstudios:opencv:4.3.0-contrib

不要直接安装react-native-opencv3,因为只是在其基础上进行修改。从git上下载下代码

git clone GitHub - adamgf/react-native-opencv3: react-native-opencv3 wraps functionality from OpenCV Java SDK 3.4.4 + contrib modules and iOS OpenCV 3.4.1 + contrib modules for use in React-Native apps. Please enjoy!

2.【遇到的相关问题】

        1) 修改react-native-opencv3中的build.gradle,引用opencv4.3.0修改如下:

dependencies {
    implementation 'com.quickbirdstudios:opencv:4.3.0-contrib'
    implementation 'com.facebook.react:react-native:+'
}

        2)针对react-native-opencv3中的各种bug的修复

                a). react-native-opencv3中保存图像的错误修复

                     新增如下方法:

@ReactMethod
    public void imwrite(String outPath, ReadableMap srcMat, final Promise promise) {
        int matIndex = srcMat.getInt("matIndex");
        Mat mat = (Mat) MatManager.getInstance().matAtIndex(matIndex);
        FileUtils.getInstance().imwrite(outPath, mat, promise);
    }
 public static void imwrite(final String outpath, final Mat dst, final Promise promise) {
        try {
            if (outpath == null || outpath.length() == 0) {
                // TODO: if no path sent in then auto-generate??!!!?
                rejectInvalidParam(promise, outpath);
                return;
            }

            Imgcodecs.imwrite(outpath, dst);

            WritableNativeMap result = new WritableNativeMap();
            result.putInt("width", new Double(dst.size().width).intValue());
            result.p
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_44214515

你的鼓励是我分享的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值