opencv写图片根据系统时间生成
时间: 2023-08-01 13:11:14 浏览: 73
你可以使用Python中的OpenCV库和datetime库来生成根据系统时间命名的图片。下面是一个示例代码:
```python
import cv2
import datetime
# 获取当前时间
now = datetime.datetime.now()
time_str = now.strftime("%Y%m%d-%H%M%S")
# 创建一个空的图片
img = np.zeros((512, 512, 3), np.uint8)
# 在图片上添加文本
cv2.putText(img, time_str, (100, 256), cv2.FONT_HERSHEY_SIMPLEX, 2, (255, 255, 255), 2)
# 保存图片
cv2.imwrite(time_str + ".jpg", img)
```
这段代码首先获取当前时间并将其格式化为一个字符串,然后创建一个空的图片并在其上添加文本。最后,使用OpenCV的imwrite函数将图片保存到磁盘上,文件名为当前时间字符串加上".jpg"后缀。
相关问题
c++ opencv写图片根据系统时间生成
你可以使用C++中的OpenCV库和chrono库来生成根据系统时间命名的图片。下面是一个示例代码:
```c++
#include <opencv2/opencv.hpp>
#include <chrono>
#include <ctime>
int main()
{
// 获取当前时间
auto now = std::chrono::system_clock::now();
auto time = std::chrono::system_clock::to_time_t(now);
std::string time_str = std::ctime(&time);
// 创建一个空的图片
cv::Mat img = cv::Mat::zeros(cv::Size(512, 512), CV_8UC3);
// 在图片上添加文本
cv::putText(img, time_str, cv::Point(100, 256), cv::FONT_HERSHEY_SIMPLEX, 2, cv::Scalar(255, 255, 255), 2);
// 保存图片
std::string filename = time_str;
std::replace(filename.begin(), filename.end(), ' ', '_'); // 替换空格为下划线
std::replace(filename.begin(), filename.end(), ':', '-'); // 替换冒号为短横线
cv::imwrite(filename + ".jpg", img);
return 0;
}
```
这段代码首先获取当前时间并将其转换为一个字符串,然后创建一个空的图片并在其上添加文本。最后,使用OpenCV的imwrite函数将图片保存到磁盘上,文件名为当前时间字符串加上".jpg"后缀。注意,由于文件名不能包含空格和冒号等特殊字符,因此需要使用std::replace函数将它们替换为合适的字符。
ubuntu系统opencv显示图片
在Ubuntu系统中,你可以使用OpenCV库来显示图片。下面是一个示例代码来加载并显示一张图片:
```python
import cv2
# 加载图片
image = cv2.imread('image.jpg')
# 创建一个窗口并显示图片
cv2.imshow('Image', image)
# 等待按下任意键后关闭窗口
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在代码中,你需要将`image.jpg`替换为你想要显示的图片的路径。然后运行代码,你将会看到一张名为"Image"的窗口显示出来,并展示加载的图片。按下任意键后,窗口将关闭。
请确保你已经安装了OpenCV库。如果没有安装,可以在终端使用以下命令进行安装:
```
pip install opencv-python
```
希望这可以帮助到你!如果有任何问题,请随时提问。