Opencv— — Color Gradient
来源:互联网 发布:建行网络学系统手机 编辑:程序博客网 时间:2024/06/06 10:00
// define head function#ifndef PS_ALGORITHM_H_INCLUDED#define PS_ALGORITHM_H_INCLUDED#include <iostream>#include <string>#include "cv.h"#include "highgui.h"#include "cxmat.hpp"#include "cxcore.hpp"#include "math.h"using namespace std;using namespace cv;void Show_Image(Mat&, const string &);#endif // PS_ALGORITHM_H_INCLUDED#include "PS_Algorithm.h"#include <time.h>using namespace std;using namespace cv;#define pi 3.1415926int main(){ string Img_name("4.jpg"); Mat Img; Img=imread(Img_name); Mat Img_out(Img.size(), CV_8UC3); int width=Img.cols; int height=Img.rows; float rNW=1.0; float gNW=0.0; float bNW=0.0; float rNE=1.0; float gNE=1.0; float bNE=0.0; float rSW=0.0; float gSW=0; float bSW=1.0; float rSE=0.0; float gSE=1.0; float bSE=0.0; float fx, fy; float p, q, r, g, b; for (int y=0; y<height; y++) { for (int x=0; x<width; x++) { fx=(float)(x)/width; fy=(float)(y)/height; p = rNW + (rNE - rNW) * fx; q = rSW + (rSE - rSW) * fx; r = ( p + (q - p) * fy ); r = min(max(r, 0.0f), 1.0f); p = gNW + (gNE - gNW) * fx; q = gSW + (gSE - gSW) * fx; g = ( p + (q - p) * fy ); g = min(max(g, 0.0f) ,1.0f); p = bNW + (bNE - bNW) * fx; q = bSW + (bSE - bSW) * fx; b = ( p + (q - p) * fy ); b = min(max(b, 0.0f), 1.0f); Img_out.at<Vec3b>(y, x)[0]=b*255.0; Img_out.at<Vec3b>(y, x)[1]=g*255.0; Img_out.at<Vec3b>(y, x)[2]=r*255.0; } } Show_Image(Img_out, "out"); cout<<"All is well"<<endl; // imwrite("Out.jpg", Img_out); waitKey();}// define the show image#include "PS_Algorithm.h"#include <iostream>#include <string>using namespace std;using namespace cv;void Show_Image(Mat& Image, const string& str){ namedWindow(str.c_str(),CV_WINDOW_AUTOSIZE); imshow(str.c_str(), Image);}
图像效果可以参考:
http://blog.csdn.net/matrix_space/article/details/46906849
0 0
- Opencv— — Color Gradient
- Flex Box Color Gradient
- 【学习 OpenCV】—— 图像减色(color reduced)
- Stroking or Filling with a Gradient Color
- 图像处理------颜色梯度变化 (Color Gradient)
- 图像处理------颜色梯度变化 (Color Gradient)
- CSS3——gradient渐变
- Android View — Gradient 渐变
- 梯度下降 — Gradient Descent
- OpenCV Color Ttransfer(opencv)
- OpenCV, color reduction method
- Color——opacity
- 图像处理之颜色梯度变化 (Color Gradient)
- 如何获得渐变的颜色(java Color Gradient)
- OpenCV Color System and Channels
- opencv: converting color 后序
- 【机器学习学习过程中的笔记1——Stochastic gradient descent 和 Batch gradient descent 】
- linear-gradient和radial-gradient属性——css3渐变效果
- 通过RTLabel、RCLabel、FTCoreText及webView结合SDWebImage等4种方式实现左滑或下拉中cell中图文混排使用场景方案
- jsoup抓取豆瓣美女
- 获取当前电脑所有网络连接名字
- Java Base64、AES、SHA1、MD5加密算法
- samba server set up(redhat)
- Opencv— — Color Gradient
- hdu 1009 FatMouse' Trade 贪心
- crossApp初级-CAButton类-7
- 动画插值器
- 全面理解面向对象的 JavaScript
- 基于UDP的简易聊天室(客户端)
- shell变量赋值和引用
- 理解RESTful架构
- Unity_UnityGUI原理详解