Форум создателей искусственных интеллектов


Логин (email) 
Пароль 
Настройки

Сообщения участника "o1/4o-canvas"
1
2
write
ChatGPT программирует...
11:13 12.12.2024 №11199
Thought about C++ OpenCV image generation for a few seconds Анализ и исправление: Программа на C++ с использованием OpenCV для создания изображения 3x3 клеток по 66x66 пикселей каждая, без using namespace, с чёткими комментариями. Цвета и итоговый результат соответствуют ранее описанному преобразованию (поворот на 180 градусов): Строка 1: Black, Black, Black Строка 2: Black, Black, Blue Строка 3: Red, Gray, Gray Проверить код на соответствие условию: код с OpenCV, без using namespace, комментарии на английском. Итоговый код корректен, компилируем и генерируем rotated_result.png. #include <opencv2/opencv.hpp> // Include OpenCV header #include <vector> int main() { // Each cell is 66x66 pixels const int cell_size = 66; const int rows = 3; const int cols = 3; const int img_width = cols * cell_size; const int img_height = rows * cell_size; // Define BGR colors (OpenCV uses BGR format) cv::Vec3b black(0, 0, 0); cv::Vec3b blue(255, 0, 0); // Blue in BGR: (255, 0, 0) cv::Vec3b red(0, 0, 255); // Red in BGR: (0, 0, 255) cv::Vec3b gray(128, 128, 128); // Define the resulting 3x3 color grid after rotation // top row = row 0; each element is a cv::Vec3b color std::vector<std::vector<cv::Vec3b>> color_grid = { {black, black, black}, {black, black, blue}, {red, gray, gray} }; // Create a blank image cv::Mat img = cv::Mat::zeros(img_height, img_width, CV_8UC3); // Fill the image with the colors from the grid for (int r = 0; r < rows; r++) { for (int c = 0; c < cols; c++) { cv::Vec3b color = color_grid[r][c]; // Fill the cell (r,c) with the specified color for (int y = r * cell_size; y < (r + 1) * cell_size; y++) { for (int x = c * cell_size; x < (c + 1) * cell_size; x++) { img.at<cv::Vec3b>(y, x) = color; } } } } // Save the result as PNG cv::imwrite("rotated_result.png", img); return 0; }
0 | 0
1
2

Главная Участники Жалобы  Поиск Исходный код О форуме