今天在用opencv生成随机色块时,突发灵感,如果每个像素都是一个随机颜色是什么样的壮观景象?于是我就写了一下代码,后来删掉了DetroyAllWindow函数,然后重新跳转,间隔一毫米。发现的确很壮观,类似老式电视机启动
效果图:
代码如下
#include <opencv2/opencv.hpp>
using namespace cv;
int main()
{
// 随机种子
srand((unsigned)time(NULL));
int width = 500; // 图像宽度
int height = 500; // 图像高度
aa:
// 创建一个空白图像
Mat image = Mat::zeros(height, width, CV_8UC3);
// 遍历每个像素,设置随机的RGB值
for (int row = 0; row < height; row++) {
for (int col = 0; col < width; col++) {
Vec3b& pixel = image.at<Vec3b>(row, col);
pixel[0] = rand() % 256; // 随机生成0-255的整数作为B值
pixel[1] = rand() % 256; // 随机生成0-255的整数作为G值
pixel[2] = rand() % 256; // 随机生成0-255的整数作为R值
}
}
// 显示图像
namedWindow("Random Color Image");
imshow("Random Color Image", image);
waitKey(1);
goto aa;
return 0;
}
记得关注我,我一周之内不出意外的话要发大项目