答案 0 :(得分:1)
编辑:此答案提供的结果看起来正确,但与原始内容不会有点相同。奇怪的东西正在发生。
您可以通过将红色和绿色通道置于使值增加一倍的功能,使您的原始图像中的图像损坏,但需要环绕:
df%>%
rowwise()%>%
mutate(df,age_when_trade = ifelse(flag1 == TRUE && flag2 == TRUE,as.Date(date1,"%m/%d/%y") - as.Date(date2,"%m/%d/%y")))
这些函数不可逆,因为多个输入值可以映射到相同的输出值。特别是,
F(r) = (r*2) % 255
F(g) = (g*2) % 255
但如果我们愿意容忍一些错误,我们仍然可以尝试恢复图像。我们会试着猜测红色(或绿色)是否应该高;如果是这样,请添加128。
两条信息可以指导我们的猜测:
我使用蓝色通道信息在r / 2和r / 2 + 128之间确定了非常接近原始图像的东西,尽管使用相邻像素的红色和绿色通道也可能更好。 / p>
作为旁注,这种问题可能出现的一种方式是,如果最初(比方说)有6位红色信息,但只有最少有效5位保留在文件时书面。看看如何获取这些图像以确保您不会以某种方式切断R和G通道的最重要部分将是有用的。