k均值聚类图像分割matlab代码_用K均值聚类法为人类拍摄的首张黑洞照片进行分割...
生活随笔
收集整理的這篇文章主要介紹了
k均值聚类图像分割matlab代码_用K均值聚类法为人类拍摄的首张黑洞照片进行分割...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
眾所周知,人類最近拍攝了首張黑洞照片。網友們紛紛表示,這明明就是一個甜甜圈嘛!以前以為黑洞是這個世界上最最高冷的存在,而此刻突然現出真身,形象卻是如此的人畜無害!不但如此,還勾起了網友的食欲!簡直是罪大惡極,不可饒恕,誘人發胖!
耳邊又響起火箭少女令人頭皮發麻的魔性歌聲,“拜拜甜甜圈,珍珠奶茶方便面,火鍋米飯大盤雞”!
明明說好的“燃燒我的卡路里”,結果卻成了“加油我的咀嚼肌”!
當你張開嘴的時候,不需要多說什么,吃,就對了!
下面是黑洞的原圖:
可以看到,原圖比較模糊,界限也是非常的不清晰。在人們已經習慣了看高清大圖的4G時代,有沒有辦法讓這張圖片變得更清晰呢?
當然是可以的,就是用K均值聚類法,對圖像進行分類,這樣的話,每一類之間的界限就會是非常清晰的。
代碼也很簡單,首先引入需要用到的包:
import numpy as np
from PIL import Image
from sklearn.cluster import KMeans然后讀取數據,進行訓練:
img_data,row,col=load_data('demo.jpg')
#3代表分成3類,通過聚類,最終生成三類
label=KMeans(n_clusters=3).fit_predict(img_data)然后就是新建一個灰色圖像,對圖像進行賦值操作,取值范圍是0-255,如果分成3類的話,大概這三類的灰度值分別為255、128、85。代碼如下:
pic_new=Image.new("L",(row,col))
for i in range(row):for j in range(col):#為每個像素的灰度值進行賦值pic_new.putpixel((i,j),int(255/(label[i][j]+1)))分成三類的話,最終結果是這樣的:
分成四類的話,最終的結果是這樣的:
分成五類的話,最終的結果是這樣的:
經過這樣的變換之后,終于看起來不那么像甜甜圈了,而且看起來終于有一點點高冷了!
總結
以上是生活随笔為你收集整理的k均值聚类图像分割matlab代码_用K均值聚类法为人类拍摄的首张黑洞照片进行分割...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 自动挡多少钱啊?
- 下一篇: evt参数是干啥用的_http连接池中非