1. 安装anaconda3
1.1 安装anaconda
下载并安装Anaconda:Free Download | Anaconda
安装完成后,请验证 Anaconda 和 Python 版本。
1.2 测试安装结果
通过“开始”、“Anaconda3”、Anaconda PowerShell 提示符打开 Anaconda 管理器,并测试你的版本:
可通过运行以下命令来检查你的 Python 版本:python –-version
可通过运行以下命令来检查你的 Anaconda 版本:conda –-version
编辑
2. 安装PyTorch
2.1 安装PyTorch
导航到PyTorch
选择相关的 PyTorch 安装详细信息:
- PyTorch 版本 - 稳定版。
- 你的 OS - Windows
- 包 - Conda
- 语言 - Python
- 计算平台 - CPU
编辑
2.2 打开 Anaconda 管理器,并运行安装说明中指定的命令。
编辑
2.3 确认并完成提取所需的包。
编辑
3. 配置环境变量
我的电脑-属性-高级系统设置-环境变量
编辑
4. cmd下使用
编辑
5. 安装modelscope
pip install modelscope
编辑
6. 动物识别模型使用
6.1 直接在python环境下执行脚本
访问魔搭社区,复制代码范例粘贴执行,缺什么pip install什么,pip安装不了的就conda install:
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
animal_recognition= pipeline(
Tasks.animal_recognition,
model='damo/cv_resnest101_animal_recognition')
result = animal_recognition('https://pailitao-image-recog.oss-cn-zhangjiakou.aliyuncs.com/mufan/img_data/maas_test_data/dog.png')
print(result)
编辑
6.2 将模型下载到本地执行
git clone https://www.modelscope.cn/iic/cv_resnest101_animal_recognition.git
更改加载模型路径为下载目录
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
animal_recognition= pipeline(
Tasks.animal_recognition,
model='E:\gimap\animalMode\cv_resnest101_animal_recognition')
result = animal_recognition("https://pailitao-image-recog.oss-cn-zhangjiakou.aliyuncs.com/mufan/img_data/maas_test_data/dog.png")
print(result)
编辑
6.3 java调用python脚本执行(单张照片)
import java.io.*;
import java.nio.charset.StandardCharsets;
public class RunPythonScript {
public static void main(String[] args) {
try {
ProcessBuilder pb = new ProcessBuilder("D:\develop\anaconda3\python.exe", "E:\gimap\animal.py","C:\Users\Bnc\Desktop\微信图片_20240326154717.png");
pb.environment().put("PYTHONIOENCODING", "UTF-8");
// 启动进程
Process process = pb.start();
// 读取Python脚本的输出
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream(), StandardCharsets.UTF_8));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
// 将输出内容写入文本文件
}
reader.close();
// 等待Python脚本执行完成
int exitCode = process.waitFor();
System.out.println("Python脚本执行完毕,退出码:" + exitCode);
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
6.4 Java调用python脚本执行(多张照片)
import java.io.*;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
public class RunPythonScript {
public static void main(String[] args) {
try {
File folder = new File("E:\gimap\animalImage");
File[] listOfFiles = folder.listFiles();
// 创建参数列表
List<String> command = new ArrayList<>();
command.add("D:\develop\anaconda3\python.exe");
command.add("E:\gimap\animal.py");
// 将每个图片文件的路径作为参数添加到列表中
for (File file : listOfFiles) {
if (file.isFile()) {
command.add(file.getAbsolutePath());
}
}
ProcessBuilder pb = new ProcessBuilder(command);
pb.environment().put("PYTHONIOENCODING", "UTF-8");
// 启动进程
Process process = pb.start();
// 读取Python脚本的输出
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream(), StandardCharsets.UTF_8));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
// 将输出内容写入文本文件
}
reader.close();
// 等待Python脚本执行完成
int exitCode = process.waitFor();
System.out.println("Python脚本执行完毕,退出码:" + exitCode);
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
编辑
import sys
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
animal_recognition= pipeline(
Tasks.animal_recognition,
model='E:\gimap\animalMode\cv_resnest101_animal_recognition')
args = sys.argv
for arg in args[1:]:
result = animal_recognition(arg)
print(arg[21:],": %s" % result)
编辑