日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

OpenCV绘制朱利亚(Julia)集合图形

發布時間:2024/8/24 综合教程 38 生活家
生活随笔 收集整理的這篇文章主要介紹了 OpenCV绘制朱利亚(Julia)集合图形 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

朱利亞集合是一個在復平面上形成分形的點的集合。以法國數學家加斯頓·朱利亞(Gaston Julia)的名字命名。

朱利亞集合可以由下式進行反復迭代得到:

對于固定的復數c,取某一z值(如z = z0),可以得到序列

這一序列可能反散于無窮大或始終處于某一范圍之內并收斂于某一值。我們將使其不擴散的z值的集合稱為朱利亞集合。


以下使用OpenCV編碼繪制Julia集圖形:

#include <Windows.h>
#include<highgui/highgui.hpp>

using namespace cv;

const int icount = 200;     //迭代次數

const float c = -0.85;       //實部
const float d = 0.088;      //虛部
double m_real, m_image;     //Mandelbro集

class ComplexClass
{
public:
	double real;
	double image;

	ComplexClass(double r = 0, double i = 0) { real = r, image = i; }
};

ComplexClass operator+(const ComplexClass& a, const ComplexClass &b)
{
	ComplexClass c;
	c.real = a.real + b.real;
	c.image = a.image + b.image;
	return c;
}

ComplexClass operator*(const ComplexClass& a, const ComplexClass &b)
{
	ComplexClass c;
	c.real = a.real * b.real - a.image * b.image;
	c.image = a.image * b.real + a.real * b.image;
	return c;
}

double Model(ComplexClass a)
{
	return sqrtf(a.real * a.real + a.image * a.image);
}

double Iteration(ComplexClass a, int n)
{
	if (n == 0)
		return Model(a);
	else
	{
		ComplexClass temp = a*a;
		temp.real += c;
		temp.image += d;
		//    temp.real += m_real;  把這兩句代替前面的兩句就是mandelbrot集了
		//    temp.image += m_image;
		return Iteration(temp, n - 1);
	}
}

Vec3b dye(double dist)
{
	if (dist < 1000000 && dist>-1000000)
		return Vec3b(255, 0, 0);
	else
		return Vec3b(0, 0, 0);   //Julia集之外的區域置為黑色
}

int main()
{
	Mat image = Mat(Size(500, 500), CV_8UC3, Scalar::all(10));
	for (int Y = 0; Y < image.rows; Y++)
	{
		for (int X = 0; X < image.cols; X++)
		{
			float x = (X - image.cols / 2) / 200.0;
			float y = (Y - image.rows / 2) / 200.0;

			m_real = x;
			m_image = y;
			ComplexClass a(x, y);
			float dist = Iteration(a, icount);

			image.at<Vec3b>(Y, X) = dye(dist);
		}
	}
	//namedWindow("OpenCV For Julia", 0);
	imshow("OpenCV For Julia | c = -0.85  d = 0.088", image);
	waitKey();
}

改變實部c和虛數b的值可以得到不同的圖形,很漂亮。

c=-0.576 d=0.456:



c=-0.8 d=0.156:



c=0.285 d=0.02:



c=-0.85 d=0.088:


總結

以上是生活随笔為你收集整理的OpenCV绘制朱利亚(Julia)集合图形的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 神马三级我不卡 | 在线国产黄色 | 色av综合网 | 96视频在线 | 国产淫片av片久久久久久 | 驯服少爷漫画免费观看下拉式漫画 | 精品www| av黄色国产 | 日本a一级片 | 毛片的网站 | 手机在线永久免费观看av片 | 高潮无码精品色欲av午夜福利 | 看片日韩 | av高清在线免费观看 | 牛av| 天天综合av | 精品国产美女 | 成年人深夜福利 | 高跟丝袜av | 免费观看日韩毛片 | 黄网视频在线观看 | 久久九九久久九九 | 91黄色免费版 | 日韩成人免费在线观看 | 欧美一级免费黄色片 | 三年电影在线观看 | 午夜在线观看一区 | 九九这里只有精品视频 | 亚洲av无码专区在线 | 91精品人妻一区二区三区蜜桃欧美 | 俄罗斯厕所偷拍 | 久久天天东北熟女毛茸茸 | 国产中文字幕在线免费观看 | 国产一区二区观看 | 亚洲天堂久久 | 亚洲天堂一区在线观看 | 美妇湿透娇羞紧窄迎合 | 国产精品成人久久久久 | 欧美日韩激情一区二区 | 亚洲综合久 | 欧美三级久久 | 99碰碰 | 天天色官网 | 请用你的手指扰乱我吧 | 一级草逼片 | 日韩视频一区二区三区四区 | 欧美日韩生活片 | 麻豆 国产| 噼里啪啦动漫高清在线观看 | 香港三级韩国三级日本三级 | 蜜臀麻豆| 欧美日韩一级黄色片 | 欧美女优在线观看 | 91精品国产高清一区二区三蜜臀 | 欧美激情久久久久 | 国产一级片在线 | 大乳女喂男人吃奶 | 国产九九九九九 | 性高跟鞋xxxxhd国产电影 | 亚洲精品免费在线观看视频 | 日韩在线小视频 | 成人免费一区二区三区 | 欧美三根一起进三p | 不卡中文字幕在线 | 中国爆后菊女人的视频 | av一区二区免费 | av 日韩 人妻 黑人 综合 无码 | 亚洲va欧美| 中文字幕无码精品亚洲资源网久久 | 免费在线看污 | 国产精品无码人妻一区二区在线 | www.男人的天堂.com | 中文字幕在线观看视频网站 | 丁香婷婷综合网 | 色天天av| 欧美日韩一区二区区别是什么 | 38在线视频| 逼逼av网站 | 四虎免费观看 | 国产精品 欧美 日韩 | 国产素人自拍 | 91们嫩草伦理 | 波多野吉衣一区二区三区 | www.中文字幕在线观看 | 萌白酱在线观看 | 精品无码av一区二区三区四区 | 国产无码久久精品 | 少妇激情一区二区三区视频 | 日韩欧美二区三区 | 91美女网 | 国产a级精品| 国产一级做a爰片久久毛片男 | 中文精品无码中文字幕无码专区 | 超碰夫妻 | 国产乱妇乱子 | 久久久久网 | 亚洲精品四区 | 一区久久久 | 污污网站在线 |