使用php写图片上传并调用python脚本处理图片
时间: 2024-06-11 10:07:32 浏览: 142
PHP调用ffmpeg对视频截图并拼接脚本
首先,需要在HTML页面中添加一个表单来上传图片:
```
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="image">
<input type="submit" value="Upload">
</form>
```
然后,在upload.php文件中处理上传的图片,将其保存到服务器上,调用Python脚本处理图片,并将处理后的图片返回给HTML页面。
```
<?php
// 获取上传的图片
$image = $_FILES['image']['tmp_name'];
// 保存图片到服务器上
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["image"]["name"]);
move_uploaded_file($image, $target_file);
// 调用Python脚本处理图片
$output = shell_exec("python image_processing.py " . $target_file);
// 将处理后的图片返回给HTML页面
echo "<img src='" . $output . "'>";
?>
```
在Python脚本中,可以使用PIL库来处理图片。以下是一个简单的Python脚本,将上传的图片转换为黑白图片并保存到服务器上:
```
import sys
from PIL import Image
# 获取上传的图片路径
image_path = sys.argv[1]
# 打开图片
image = Image.open(image_path)
# 将图片转换为黑白
image = image.convert('L')
# 保存处理后的图片到服务器上
output_path = 'uploads/output.jpg'
image.save(output_path)
# 将处理后的图片路径返回给PHP脚本
print(output_path)
```
注意,需要在服务器上安装Python和PIL库,才能成功运行Python脚本。
阅读全文