2012-02-27 60 views
0

嘿,我是一个matlab新手。我读过一个文本图像,将其转换为灰度图像并应用了sobel运算符。现在我想要“量化图像”量化matlab中的灰度图像

+4

为什么你想要做的事你不知道的线索?成为“不是新手”的方法是投入一些工作并解决一些问题。你已经做了什么,你坚持什么特定的问题? – 2012-02-27 10:36:20

+0

[信号处理堆栈](http://dsp.stackexchange.com)会更好。 – Nzbuu 2012-02-27 11:07:10

+0

我实际上正试图实现一个算法,这是我的大学设计的......截至目前,我已经写了一个算法来检测图像中的每一行从第一列到最后一列,并且第一列到第最后一行......计算每行中的几个条件,然后只移动几个字符... 现在算法说“应用边缘检测和量化”。 我做了边缘检测部分,现在我坚持“量化”部分 – Jay 2012-02-27 13:21:21

回答

4

将uint8图像转换为double并除以255.乘以所需量子数量,例如50,并将其转换回uint8。现在你量化了它。要正确查看它,将其再次转换为double并除以50,使用imshow。示例代码:

img = imread("image.jpg"); 
quanta = 50; 
img = double(img)/255; 
img = uint8(img * quanta); 
img = double(img)/quanta; 
0

图像量化

clear 

new = [0.3 0.5 0.05;1 0.1 0.03;0.01 0.4 0.02;0.23 0.7 0.8]; 

new1=zeros(3,3); 

for i=1:3 

    for j=1:3 
     if new(i,j)<1 
       new1(i,j)=new(i,j)*256; 
     else 
       new1(i,j)=new(i,j); 
     end 
    end 
end 
new 
new1 
+0

@BradLarson - 感谢您关注这个瑕疵的答案。但是,您认为您的编辑以何种方式更好?它是神秘而不清楚的。更重要的是,它对于如何解决这个问题没有什么解释。这不是一个合理质量的答案 – Shai 2013-06-25 20:46:34

+0

@Shai - 它是代码,是对答案的尝试。在这样的情况下,我会给回答者带来怀疑的好处。我不愿意在答案中删除一个诚实的努力,即使它是错误的,并且想给他们一个机会来澄清他们发布的内容。 – 2013-06-25 22:08:35

+0

@BradLarson我同意我们应该鼓励新用户,但费用是多少?引用[“关闭战争”博客文章](http://blog.stackoverflow.com/2013/06/the-war-of-the-closes/?cb=1):“我们不能降低我们的标准,我们不会。“ – Shai 2013-06-25 22:12:19