0
我正在處理顏色分類。我將輸入作爲正面和負面角度,角度也表示RGB顏色。當角度爲負值或超過255時,我如何將負值更改爲零或超過255至255的角度。此矩陣包含角度列表。每個列表都代表RGB。 我張貼一段代碼這裏:如何更改矩陣中存在的列表的特定值
library(rgl)
som <- function()
{
rad2deg = function(rad)
{
return((180 * rad)/pi)
}
n <- 3
m <- 30
l <- 15
alpha <- .09
a <- list("numeric", n)
wij <- matrix(list(), nrow = m, ncol = m)
#Initailize the weight matrix
for(x1 in 1:m)
{
for(x2 in 1:m)
{
a <- runif((n-1), -pi/12, pi/12)
a<- rad2deg(a)
a <- c(a*8+128,255)
wij[[x1,x2]] <- a
}
}
s <- runif((n-1), -pi/12, pi/12)
theta <- rad2deg(s[1])
theta <- 128+theta*8
phi <- rad2deg(s[2])
phi <- 128+phi*8
x <- as.integer(l* sin(s[1]) + m/2)
y <- as.integer(l*sin(s[2]) + m/2)
for(x1 in 1:m)
{
for(x2 in 1:m)
wij[[x1,x2]] <- wij[[x1,x2]] +((x1-x)+(x2-y))*alpha*(wij[[x1,x2]]-c(theta,phi,255))
}
for(x1 in 1:m)
{
for(x2 in 1:m)
rgl.spheres(x=x1, y=x2, col=rgb(t(wij[[x1,x2]]), maxColorValue = 255), radius = 1)
}
}
som()
我得到如下錯誤:在RGB
- 誤差(噸(WIJ [[X1,X2]]),maxColorValue = 255):顏色強度259,而不是在0:255
- 錯誤在RGB(噸(WIJ [[X1,X2]]),maxColorValue = 255):顏色強度-5,而不是在0:255
我們是否有任何方法來表示負數和RGB值超過255的值?