r - 用 R 创建均衡直方图
问题描述
我有一个数据集 .txt ,其中包含三个矩阵,每个矩阵代表图像的 RGB 值!我没有图像(或任何图像文件)!如何创建每个矩阵的均衡直方图?我找到了histeq
功能,但它似乎不正确!我设法做的是(这是显示数据的第一部分)
fr<-as.data.frame(table(unlist(r)))
fg<-as.data.frame(table(unlist(g)))
fb<-as.data.frame(table(unlist(b)))
fr1=(fr$Freq*100)/(15*15) fb1=(fb$Freq*100)/(15*15)
fg1=(fg$Freq*100)/(15*15)
fr2=cumsum(fr1) fg2=cumsum(fg1) fb2=cumsum(fb1)
r1<-data.frame(fr,fr1,fr2) names<-c("Values","2","Distribution
Frequancy %","Cumalnative Distribution Frequency %")
colnames(r1)<-names r1$Values <- as.numeric(as.character(r1$Values))
g1<-data.frame(fg,fg1,fg2) colnames(g1)<-names g1$Values <-
as.numeric(as.character(g1$Values))
b1<-data.frame(fb,fb1,fb2) colnames(b1)<-names
b1$Values <- as.numeric(as.character(b1$Values))
这是我练习的第一部分!比我不得不:
hb1<-ggplot(data=b1, aes(b1$Values)) + geom_histogram(breaks=seq(0,
260, by =20),
col="white",
aes(fill=..count..))+ labs(title="Ιστόγραμμα Συχνότητας Μπλε Καναλιού") + labs(x="Τιμές", y="Συχνότητα")
hb2<-ggplot(data=b1, aes(b1$Values)) + geom_histogram(breaks=seq(0,
260, by =20),
col="white",
aes(y=cumsum(..count..),fill=..count..))+ labs(title="Ιστόγραμμα Συχνότητας Μπλε Καναλιού") + labs(x="Τιμές")
hb3<-ggplot(data=b1, aes(histeq(b1$Values))) +
geom_histogram(breaks=seq(0, 260, by =20),
col="white",
aes(fill=..count..))+ labs(title="Ιστόγραμμα Εξίσωσης Μπλε Καναλιού") + labs(x="Nέες Τιμές")
# Κόκκινο
hr1<-ggplot(data=r1, aes(r1$Values)) + geom_histogram(breaks=seq(0,
260, by =20),
col="white",
aes(fill=..count..))+ scale_fill_gradient("Count", low = "lightpink", high = "red")+ labs(title="Ιστόγραμμα Συχνότητας
Κόκκινου Καναλιού") + labs(x="Τιμές")
hr2<-ggplot(data=r1, aes(r1$Values)) + geom_histogram(breaks=seq(0,
260, by =20),
col="white",
aes(y=cumsum(..count..),fill=..count..))+ scale_fill_gradient("Count", low = "lightpink", high = "red")+
labs(title="ΑΘροιστικό Ιστόγραμμα Κόκκινου Καναλιού") +
labs(x="Τιμές")
hr3<-ggplot(data=r1, aes(histeq(r1$Values))) +
geom_histogram(breaks=seq(0, 260, by =20),
col="white",
aes(fill=..count..))+ scale_fill_gradient("Count", low = "lightpink", high = "red")+ labs(title="Ιστόγραμμα Εξίσωσης
Κόκκινου Καναλιού") + labs(x="Νέες Τιμές")
#Πράσινο
hg1<-ggplot(data=g1, aes(g1$Values)) + geom_histogram(breaks=seq(0,
260, by =20),
col="white",
aes(fill=..count..))+ scale_fill_gradient("Count", low = "lightgreen", high = "green")+ labs(title="Ιστόγραμμα
Συχνότητας Πράσινου Καναλιού") + labs(x="Τιμές")
hg2<-ggplot(data=g1, aes(g1$Values)) + geom_histogram(breaks=seq(0,
260, by =20),
col="white",
aes(y=cumsum(..count..),fill=..count..))+ scale_fill_gradient("Count", low = "lightgreen", high = "green")+
labs(title="Αθροιστικό Ιστόγραμμα Πράσινου Καναλιού") +
labs(x="Τιμές")
hg3<-ggplot(data=g1, aes(histeq(g1$Values))) +
geom_histogram(breaks=seq(0, 260, by =20),
col="white",
aes(fill=..count..))+ scale_fill_gradient("Count", low = "lightgreen", high = "green")+ labs(title="Ιστόγραμμα Εξίσωσης
Πράσινου Καναλιού") + labs(x="Νέες Τιμές")
但是这样!使用histeq
我没有矩阵,而是一个新值的新数组。我想要具有均衡直方图值的新矩阵
解决方案
推荐阅读
- turfjs - 如何在 turf.js 中为 <1 公里的多边形创建 10x10 网格?
- python - 提示允许的函数输入
- javascript - 如何在 Javascript 中切换“表格数据单元格”?
- android - 如何在移动应用程序中设置 webview 和 Angular 代码之间的通信
- python - 如何强制 django 模型保存方法在自定义管理器方法中查找查询集?
- javascript - 如何对字典中的 Javascript 数组进行排序
- c# - 使用多个搜索键和值实现字典
- python - Pandas 平行坐标可视化
- python - 是否可以让列表对象成为模块的实例并使用“for i in range(dice)”在该模块中执行函数?
- tfs - Azure devops 管道触发器