You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Android中使用Chaquopy时无法导入OpenCV的技术求助

解决Chaquopy中无法导入OpenCV(cv2)的问题

一、配置Chaquopy引入OpenCV依赖

在模块级build.gradle文件的chaquopy块中,添加OpenCV的pip安装配置。推荐使用headless版本(无需GUI组件,更适配Android环境):

android {
    ...
    chaquopy {
        pip {
            install "opencv-python-headless==4.8.0.74"
        }
    }
}

注意:需保证Chaquopy版本与OpenCV版本兼容,比如Chaquopy 14.0+适配Python 3.10,对应OpenCV 4.8.x版本可正常安装。

二、修正Python代码的缩进与鲁棒性

你的代码存在缩进错误,且未处理图片解码失败的情况,修正后代码如下:

import cv2
import numpy as np


def main(imageBytes):
    np_data = np.asarray(imageBytes, np.uint8)
    img = cv2.imdecode(np_data, cv2.IMREAD_UNCHANGED)

    # 处理图片解码失败的情况,避免后续报错
    if img is None:
        return "0_0"

    if img.shape[0] > img.shape[1]:
        img = cv2.transpose(img)

    # img = cv2.resize(img, (1600, 1200))

    return f"{img.shape[0]}_{img.shape[1]}"

三、排查其他可能问题

  • 网络环境:首次构建时需从PyPI下载依赖,若网络受限会导致下载失败,可查看构建日志确认是否有下载相关错误。
  • 依赖验证:构建完成后,检查项目build/chaquopy/python/site-packages目录下是否存在cv2文件夹,确认依赖安装到位。

内容的提问来源于stack exchange,提问作者Naveen Muddaraboina

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 11:42:03