Ôn Thi Xử Lý Ảnh
+10
Kyen
superquaypha
thuanpq
nhuphuoc
sad016love
phonglh
Cuongpt
haoth2
MrBinh
ThucBV
14 posters
Trang 1 trong tổng số 3 trang
Trang 1 trong tổng số 3 trang • 1, 2, 3
Ôn Thi Xử Lý Ảnh
đây là 2 câu đầu của đề KT
mình mới giải có 2 câu này. Bà con xem cho ý kiến nhé
Câu 1: tính h~ ứng với từng cái h một
h~1(m,n) = -1 1
h~2(m,n) =
1
1
1
S1(m,n) =
1 1
3 1
S2(m,n) =
4 6
4 6
rồi cộng 2 cái S với nhâu được V
V(m,n) =
5 7
7 7
Trời ơi còn câu kia làm rồi mà lười gõ quá. AI làm rồi thì đưa lên coi nhé. THôi gõ nốt nhé.
CÂU 2:
a. Vẽ Histogram thì đơn giản rồi
bảng xác định tần số
rồi từ đó vẽ Histogram, trục hoành là mức xám còn trục tung là H(s)
b. TỪ bảng tần số ta có
Hr(1)=6/30
Hr(2)=5/30
Hr(3)=1/30
Hr(4)=1/30
Hr(10)=4/30
Hr(20)=8/30
Hr(30)=1/30
Hr(40)=2/30
Hr(100)=2/30
==> Hc(s)=?
Hc(1)=6/30
Hc(2)=11/30
Hc(3)=12/30
Hc(4)=13/30
Hc(10)=17/30
Hc(20)=25/30
Hc(30)=25/30
Hc(40)=28/30
Hc(100)=30/30
áp dụng Sout[i,j] = 255*Hc[Sin[i,j]] và làm tròn ta có:
Còn 2 câu kia chưa làm. Khi nào làm được thì tính sau
mình mới giải có 2 câu này. Bà con xem cho ý kiến nhé
Câu 1: tính h~ ứng với từng cái h một
h~1(m,n) = -1 1
h~2(m,n) =
1
1
1
S1(m,n) =
1 1
3 1
S2(m,n) =
4 6
4 6
rồi cộng 2 cái S với nhâu được V
V(m,n) =
5 7
7 7
Trời ơi còn câu kia làm rồi mà lười gõ quá. AI làm rồi thì đưa lên coi nhé. THôi gõ nốt nhé.
CÂU 2:
a. Vẽ Histogram thì đơn giản rồi
bảng xác định tần số
rồi từ đó vẽ Histogram, trục hoành là mức xám còn trục tung là H(s)
b. TỪ bảng tần số ta có
Hr(1)=6/30
Hr(2)=5/30
Hr(3)=1/30
Hr(4)=1/30
Hr(10)=4/30
Hr(20)=8/30
Hr(30)=1/30
Hr(40)=2/30
Hr(100)=2/30
==> Hc(s)=?
Hc(1)=6/30
Hc(2)=11/30
Hc(3)=12/30
Hc(4)=13/30
Hc(10)=17/30
Hc(20)=25/30
Hc(30)=25/30
Hc(40)=28/30
Hc(100)=30/30
áp dụng Sout[i,j] = 255*Hc[Sin[i,j]] và làm tròn ta có:
Còn 2 câu kia chưa làm. Khi nào làm được thì tính sau
Được sửa bởi umbala ngày Wed Jun 04, 2008 8:13 pm; sửa lần 1.
ThucBV- Trưởng Phòng
- Tổng số bài gửi : 159
Join date : 10/05/2008
Age : 38
Đến từ : Sao Hảo, chuẩn bị đi đến Trái Đất
Re: Ôn Thi Xử Lý Ảnh
Bài viết hay, nhưng cu em nè, còn nhớ đề thầy ra kiểm tra hôm báo cáo XLa không, tao ghi rồi mà ném đâu mất ấy...
Gán nhãn thành phần liên thông!
Thuật toán gán nhãn thành phần liên thông
Bước tiếp theo là sửa nhãn
Trong đó Push4lancan được viết như sau
Trong đó S là ma trận ảnh, Label là ma trận gán nhãn tương ứng.
Ý tưởng của thuật toán sửa nhãn như sau:
1. Duyệt trên ma trận nhãn Label, từ trái qua, từ trên xuống
2. Gọi L là giá trị nhãn đầu tiên tìm thấy, (i,j) là vị trí của nhãn trong Label
3. Đẩy các lân cận của (i,j) đã có nhãn vào stack (ở đây xét lân cận 4)
4. Lấy từ stack ra một phần tử, lưu vị trí ở m,n
5. Gán nhãn cho phần tử này bằng L
6. Tiếp tục đẩy 4 lân cận của (m,n) vào stack
7. Lặp lại 4. cho tới khi stack rỗng
Để tránh trường hợp push vào stack những vị trí đã xét thì ta thêm DaXet := DaXet hợp (i,j);
Nhận xét, thuật toán trên có bao nhiu vòng While xảy ra thì có bấy nhiêu vùng ảnh
Có thể còn sai sót, mong đóng góp thêm
(các dòng code trên thể hiện được ý tưởng nhưng các bạn cần làm thêm 1 số cái cho nó đúng cấu trúc của 1 thủ tục, chứ chép như vậy là thấy chém đó )
Link down để in: http://support46th2.webng.com/Fori.doc
Bước tiếp theo là sửa nhãn
Trong đó Push4lancan được viết như sau
Trong đó S là ma trận ảnh, Label là ma trận gán nhãn tương ứng.
Ý tưởng của thuật toán sửa nhãn như sau:
1. Duyệt trên ma trận nhãn Label, từ trái qua, từ trên xuống
2. Gọi L là giá trị nhãn đầu tiên tìm thấy, (i,j) là vị trí của nhãn trong Label
3. Đẩy các lân cận của (i,j) đã có nhãn vào stack (ở đây xét lân cận 4)
4. Lấy từ stack ra một phần tử, lưu vị trí ở m,n
5. Gán nhãn cho phần tử này bằng L
6. Tiếp tục đẩy 4 lân cận của (m,n) vào stack
7. Lặp lại 4. cho tới khi stack rỗng
Để tránh trường hợp push vào stack những vị trí đã xét thì ta thêm DaXet := DaXet hợp (i,j);
Nhận xét, thuật toán trên có bao nhiu vòng While xảy ra thì có bấy nhiêu vùng ảnh
Có thể còn sai sót, mong đóng góp thêm
(các dòng code trên thể hiện được ý tưởng nhưng các bạn cần làm thêm 1 số cái cho nó đúng cấu trúc của 1 thủ tục, chứ chép như vậy là thấy chém đó )
Link down để in: http://support46th2.webng.com/Fori.doc
Được sửa bởi haoth2 ngày Tue Jun 03, 2008 7:53 pm; sửa lần 5.
haoth2- Nhân Viên
- Tổng số bài gửi : 15
Join date : 13/05/2008
Age : 38
Re: Ôn Thi Xử Lý Ảnh
- Code:
Procedure Zoomimage(S:mảng2D; var Img: mảng2D);
Var S1: mảng2D;
m1, n1, m2, n2, i, j, temp: integer;
Begin
(* Co hoặc giãn theo chiều rộng trước*)
n1 = S.sodong; {cho biết số hàng của ma trận S }
m1= Round(S.socot * z); { lấy số cột của ma trận S nhân với tỷ lệ co giãn}
For i:=1 to m1 do
For j:=1 to n1 do
Begin
temp := Round(i / z);
S1[i,j] := S[temp, j]; (* luôn thỏa mãn vì ta có i/z <= S.Socot *)
End;
(* Co hoặc giãn theo chiều cao của ảnh *)
n1 =Round(S1.sodong*z); { lấy số dòng của ma trận S nhân với tỷ lệ co giãn}
m1= S1.socot ; {cho biết số hàng của ma trận Img }
For i:=1 to m1 do
For j:=1 to n1 do
Begin
temp := Round(j / z);
Img[i,j] := S1[i, temp]; (* luôn thỏa mãn vì ta có j/z <= S.Socot *)
End;
End;
Được sửa bởi Cuongpt ngày Tue Jun 03, 2008 7:18 pm; sửa lần 2.
Cuongpt- Trợ Lý
- Tổng số bài gửi : 83
Join date : 13/05/2008
Age : 41
Đến từ : Nam Định
Re: Ôn Thi Xử Lý Ảnh
có vài lỗi nhỏ các bác xem sửa dùm nhé. tối em post bài hoàn chỉnh lên.
Cuongpt- Trợ Lý
- Tổng số bài gửi : 83
Join date : 13/05/2008
Age : 41
Đến từ : Nam Định
Re: Ôn Thi Xử Lý Ảnh
2 bài lập trình ở sau là của bài Kiểm tra à ? . Ai có đề thi XLA năm trước post lên đi.
phonglh- Trưởng Phòng
- Tổng số bài gửi : 163
Join date : 10/05/2008
Age : 37
Re: Ôn Thi Xử Lý Ảnh
Nhìn chung đề thi với đề kiểm tra cũng không khác là bao, anh em cứ ôn kỹ dạng đề như hôm báo cáo XLA là được đó mà. năm ngoái ra cũng gần như vậy
ThucBV- Trưởng Phòng
- Tổng số bài gửi : 159
Join date : 10/05/2008
Age : 38
Đến từ : Sao Hảo, chuẩn bị đi đến Trái Đất
Re: Ôn Thi Xử Lý Ảnh
MrBinh đã viết:Bài viết hay, nhưng cu em nè, còn nhớ đề thầy ra kiểm tra hôm báo cáo XLa không, tao ghi rồi mà ném đâu mất ấy...
đó có 4 bài anh post hết rồi đó. Hình như cu Hào làm câu 3 rồi thì phải, chưa đọc nhưng thấy Label chắc là thế
ThucBV- Trưởng Phòng
- Tổng số bài gửi : 159
Join date : 10/05/2008
Age : 38
Đến từ : Sao Hảo, chuẩn bị đi đến Trái Đất
Re: Ôn Thi Xử Lý Ảnh
anh em post mã chương trình muốn nó giữ nguyên định dạng thì đặt trong thẻ là được: vd như
- Code:
if (anh em ta qua hết kỳ này) then
begin
Phải ăn nhậu cho bỏ ghét;
Mấy thằng hô thi lại phải đi khao
end;
Re: Ôn Thi Xử Lý Ảnh
Cuongpt đã viết:Thấy cả nhà thảo luận vui quá tớ góp bài:
Chương trình zoom ảnh với tỷ lệ z bất kỳ:
Giả sử ta có ảnh S là một mảng 2 chiều có kích thước m x n.
Tỷ lệ zoom là z bất kỳ (x: real);
(* Thuật toán được viết bằng mã giả pascal như sau*)
Procedure Zoomimage(S:mảng2D; var Img: mảng2D);
Var S1: mảng2D;
m1, n1, m2, n2, i, j, temp: integer;
Begin
(* Co hoặc giãn theo chiều rộng trước*)
n1 = S.sodong; {cho biết số hàng của ma trận S }
m1= Round(S.socot * z); { lấy số cột của ma trận S nhân với tỷ lệ co giãn}
For i:=1 to m1 do
For j:=1 to n1 do
Begin
temp := Round(i / z);
Img[i,j] := S[temp, j]; (* luôn thỏa mãn vì ta có i/z <= S.Socot *)
End;
(* Co hoặc giãn theo chiều cao của ảnh *)
n1 =Round(S.sodong*z); { lấy số dòng của ma trận S nhân với tỷ lệ co giãn}
m1= Img.socot ; {cho biết số hàng của ma trận Img }
For i:=1 to m1 do
For j:=1 to n1 do
Begin
temp := Round(j / z);
Img[i,j] := S[i, temp]; (* luôn thỏa mãn vì ta có j/z <= S.Socot *)
End;
End; (* kết thúc thủ tục này chùng ta thu được ma trận Img có kích thức tính theo hệ số z ảnh được co hoặc giãn với tỷ lệ là z*).
Ông Cương nè cho hỏi tí. Sau khi co giãn theo chiều rộng rồi thì phải lấy anh đã được co giãn đó xử lý co giãn theo chiều cao chứ. Nếu làm như trên thì cái phần góc dưới bên phải của ảnh thu được có pixel nào không????? Không biết đúng không nữa
ThucBV- Trưởng Phòng
- Tổng số bài gửi : 159
Join date : 10/05/2008
Age : 38
Đến từ : Sao Hảo, chuẩn bị đi đến Trái Đất
Re: Ôn Thi Xử Lý Ảnh
chú dùng cái gì đó????/ Bầy cho anh em coi. Làm nọ nay toàn đi chụp ảnh không àMrBinh đã viết:anh em post mã chương trình muốn nó giữ nguyên định dạng thì đặt trong thẻ là được: vd như
- Code:
if (anh em ta qua hết kỳ này) then
begin
Phải ăn nhậu cho bỏ ghét;
Mấy thằng hô thi lại phải đi khao
end;
ThucBV- Trưởng Phòng
- Tổng số bài gửi : 159
Join date : 10/05/2008
Age : 38
Đến từ : Sao Hảo, chuẩn bị đi đến Trái Đất
Re: Ôn Thi Xử Lý Ảnh
Thằng Hào gà post kiểu gì thế post cái bài lên để anh em còn copy về đê in làm bí kíp chứ ai chơi chụp hình post lên thế này thì hóa ra chơi khó anh em àh
sad016love- Chuyên Viên
- Tổng số bài gửi : 22
Join date : 02/06/2008
Re: Ôn Thi Xử Lý Ảnh
Vẫn lấy cái ảnh gốc để xử lý
Tham khảo thêm code C# tôi viết đợt báo cáo BT:
Tham khảo thêm code C# tôi viết đợt báo cáo BT:
- Code:
/************************************/
public void ZoomImage(float z,PictureBox Pic)
{
Color[,] F = new Color[(int)(BmpW*z), BmpH];
BmpColor = new Color[BmpW, BmpH];
Bitmap b1 = new Bitmap(Bmp,new Size((int)(BmpW*z),(int)BmpH));
Bitmap b2 = new Bitmap(b1,new Size(b1.Width,(int)(b1.Height*z)));
GetArrColor();// chuyển ảnh thành ma trận màu return Ma trận F
try
{
for (int i = 0; i < b1.Width; i++)
for (int j = 0; j < b1.Height; j++)
{
byte r = (byte)BmpColor[(int)(i / z), j].R;
byte g = (byte)BmpColor[(int)(i / z), j].G;
byte b = (byte)BmpColor[(int)(i / z), j].B;
b1.SetPixel(i, j, Color.FromArgb(r, g, b));
F[i, j] = b1.GetPixel(i, j);
}
for (int i = 0; i < b2.Width; i++)
for (int j = 0; j < b2.Height; j++)
{
byte rr = (byte)F[i, (int)(j / z)].R;
byte gg = (byte)F[i, (int)(j / z)].G;
byte bb = (byte)F[i, (int)(j / z)].B;
b2.SetPixel(i, j, Color.FromArgb(rr, gg, bb));
}
}
catch (Exception err)
{
MessageBox.Show(err.ToString());
}
Bmp = (Bitmap)b2.Clone();
Pic.Image = Bmp;
}
Cuongpt- Trợ Lý
- Tổng số bài gửi : 83
Join date : 13/05/2008
Age : 41
Đến từ : Nam Định
Re: Ôn Thi Xử Lý Ảnh
Đính chính tí anh em nhầm tí. mà tôi nói là có chỗ sai mọi người sửa dùm
ông Thúc hỏi tí ko hiểu vẽ cái histogram ý ông là sao. ông vẽ vào giấy rồi lấy DĐ chụp post cho anh em coi tí nào
ông Thúc hỏi tí ko hiểu vẽ cái histogram ý ông là sao. ông vẽ vào giấy rồi lấy DĐ chụp post cho anh em coi tí nào
Cuongpt- Trợ Lý
- Tổng số bài gửi : 83
Join date : 13/05/2008
Age : 41
Đến từ : Nam Định
Re: Ôn Thi Xử Lý Ảnh
Các cao thủ xử lý ảnh đâu.. tập trung bài tập cũng như đề thi....kèm theo lời giải( là tốt nhất) post nhanh lên cho anh em tham khảo..nếu sai thì còn biết đường mà chỉnh chứ như môn HỆ CHUYÊN GIA thì dễ đi tông đó( tới ngày gần kề mà nói anh em đọc C# để mà hiểu rồi chuyển sang PASCAL/ C) thì có mà cơm canh nguội hết.
nhuphuoc- Chuyên Viên
- Tổng số bài gửi : 36
Join date : 30/05/2008
Age : 38
Đến từ : TUY HÒA -- Xứ Nẫu
Re: Ôn Thi Xử Lý Ảnh
Cái thuật toán của bác lấy gần đúng giá trị của các pixel trong ảnh mới từ giá trị của các pixel trong ảnh ban đầu, thuật toán này lúc thu nhỏ ảnh có giống ảnh ban đầu ko thế bác Cương.Cuongpt đã viết:Đính chính tí anh em nhầm tí. mà tôi nói là có chỗ sai mọi người sửa dùm
ông Thúc hỏi tí ko hiểu vẽ cái histogram ý ông là sao. ông vẽ vào giấy rồi lấy DĐ chụp post cho anh em coi tí nào
VD: zoom 5 lần
Từ 5 pixel -> lấy gần đúng giá trị cho 25pixel
Thế 25pixel-> lấy thế nào cho 5 pixel để chính xác
phonglh- Trưởng Phòng
- Tổng số bài gửi : 163
Join date : 10/05/2008
Age : 37
ThucBV- Trưởng Phòng
- Tổng số bài gửi : 159
Join date : 10/05/2008
Age : 38
Đến từ : Sao Hảo, chuẩn bị đi đến Trái Đất
Re: Ôn Thi Xử Lý Ảnh
Các bạn chú ý: Thúc giải bài 1 sai rồi thì phải:
Kết quả của V(m,n) là:
1 2 0
5 7 -2
7 7 -4
Các bạn kiểm tra lai cách làm nha:
Thúc nhầm chỗ chồng H mũ lên S(m,n) thì phải.
Mình giải thế này:
Gọi G(m,n)= H1(m,n)+H2(m,n).
G(m,n)=
1 0
2 -1
1 0
=> V(m,n)= S(m,n) * G(m,n);
Xoay G(m,n) 180 độ thành
G~(m,n)=
0 1
-1 2
0 1
Chồng G~(m,n) lên S(m,n) ta được kết quả trên.
Các bạn coi lại cách tính nhân chập của thầy nha.
Kết quả của V(m,n) là:
1 2 0
5 7 -2
7 7 -4
Các bạn kiểm tra lai cách làm nha:
Thúc nhầm chỗ chồng H mũ lên S(m,n) thì phải.
Mình giải thế này:
Gọi G(m,n)= H1(m,n)+H2(m,n).
G(m,n)=
1 0
2 -1
1 0
=> V(m,n)= S(m,n) * G(m,n);
Xoay G(m,n) 180 độ thành
G~(m,n)=
0 1
-1 2
0 1
Chồng G~(m,n) lên S(m,n) ta được kết quả trên.
Các bạn coi lại cách tính nhân chập của thầy nha.
thuanpq- Xếp Tổng
- Tổng số bài gửi : 32
Join date : 13/05/2008
Age : 39
Re: Ôn Thi Xử Lý Ảnh
không biết anh em thấy thế nào, chứ tui thấy cách thúc làm có lẽ đúng do kết quả của tôi cũng như thế. Thuận thử trình bày rõ ý tưởng của ông hơn được không?
Re: Ôn Thi Xử Lý Ảnh
thuanpq đã viết:Các bạn chú ý: Thúc giải bài 1 sai rồi thì phải:
Kết quả của V(m,n) là:
1 2 0
5 7 -2
7 7 -4
Các bạn kiểm tra lai cách làm nha:
Thúc nhầm chỗ chồng H mũ lên S(m,n) thì phải.
Mình giải thế này:
Gọi G(m,n)= H1(m,n)+H2(m,n).
G(m,n)=
1 0
2 -1
1 0
=> V(m,n)= S(m,n) * G(m,n);
Xoay G(m,n) 180 độ thành
G~(m,n)=
0 1
-1 2
0 1
Chồng G~(m,n) lên S(m,n) ta được kết quả trên.
Các bạn coi lại cách tính nhân chập của thầy nha.
Sau khi xem lại thì mình vẫn thấy kết quả của mình đúng. Thuận xem lại chỗ tính chất của tổng chập: nó có tc phân phối với phép cộng mà. Tính tổng chập từng cái rồi cộng 2 cái lại với nhau cũng như công hai thằng H vào rồi đem nhân chập.
Với lại đầu vào của hệ thống là S(m,n) thì đầu là V(m,n) thì các chỉ số m và ở 2 đầu là giống nhau chứ nhỉ (Ở đây đâu có khuếch đại đâu mà đầu ra ảnh lại lớn hơn được).
Mình nghĩ kết quả
V(m,n)=
5 7
7 7
ThucBV- Trưởng Phòng
- Tổng số bài gửi : 159
Join date : 10/05/2008
Age : 38
Đến từ : Sao Hảo, chuẩn bị đi đến Trái Đất
Re: Ôn Thi Xử Lý Ảnh
Mình có một thủ tục nhân chập ảnh với mặt nạ 3x3 thế này không biết đúng không nữa, các ban xem giúp mình nhé:
- Code:
Procedure NhanChap3x3(Var S:Mang2D; H:Mang2D);
var i, j:integer ;
begin
for i:= 1 to caoAnh-1 do
for j:=1 to rongAnh-1 do
begin
S[i,j]:=S[i,j] = H11*S[i+1,j+1] + H12*S[i+1,j] + H13*S[i+1,j-1] + H21*S[i,j+1] + H22*S[i,j] + H23*S[i,j-1] +H31*S[i-1,j+1] + H32*S[i-1,j] + H33*S[i-1,j-1];
end;
end;
ThucBV- Trưởng Phòng
- Tổng số bài gửi : 159
Join date : 10/05/2008
Age : 38
Đến từ : Sao Hảo, chuẩn bị đi đến Trái Đất
Re: Ôn Thi Xử Lý Ảnh
hic hic toàn là cao thủ không à, mình vào đây thấy lôm côm quá
anh em di karaoke ÔM thư giãn đi lấy sức mà còn chiến đấu chứ không thì đến ngày 11-6 sẽ là ngày đen tối nhất đó
tại sao ngày đen tối của nước Mĩ cũng la 11 mà ngay đen tối của khóa 46 cũng la 11 nhĩ
có ai nghĩ đây la trùng hợp không
anh em di karaoke ÔM thư giãn đi lấy sức mà còn chiến đấu chứ không thì đến ngày 11-6 sẽ là ngày đen tối nhất đó
tại sao ngày đen tối của nước Mĩ cũng la 11 mà ngay đen tối của khóa 46 cũng la 11 nhĩ
có ai nghĩ đây la trùng hợp không
superquaypha- Trợ Lý
- Tổng số bài gửi : 51
Join date : 10/05/2008
Re: Ôn Thi Xử Lý Ảnh
ba con nao co phan cuoi bai giang cua thay khong? chuong 7. xu ly anh nhi phan ay, post len cho anh em hoc voi
Kyen- Thử việc
- Tổng số bài gửi : 7
Join date : 04/06/2008
Re: Ôn Thi Xử Lý Ảnh
Hix, ví dụ trong sách của Thầy thì h1*h2 nó vẫn phình lên đấy chứ
haoth2- Nhân Viên
- Tổng số bài gửi : 15
Join date : 13/05/2008
Age : 38
Trang 1 trong tổng số 3 trang • 1, 2, 3
Trang 1 trong tổng số 3 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết
|
|