Matlab中关于图像处理、去噪分析以及有关散点连线画图等程序

更新时间:2024-05-04 00:53:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

算法程序 1.找到图片

addpath('C:\\Documents and Settings\%user\\My Documents\\My Pictures'); imshow('3.jpg')

2.将彩色图片处理成灰度图片

addpath('C:\\Documents and Settings\%user\\My Documents\\My Pictures'); A=imread('3.jpg'); I=rgb2gray(A); imshow(I)

3.改变图片大小

右键----编辑----属性-----输入想要的大小

4.两张图片相叠加(区分imadd和系数叠加)

直接把图像数据矩阵相加,可以设定叠加系数,如(系数可自由设定,按需要) img_tot = img1 * 0.5 + img2 * 0.5; %两个图像大小要一致

图像的矩阵我再那里能找到 img1 = imread('tupian.bmp'); 图片相加

addpath('C:\\Documents and Settings\%user\\My Documents\\My Pictures'); A=imread('2.jpg'); imshow(A)

>> B=imread('3.jpg'); imshow(B)

>> C=imadd(A,B); imshow(C)

>> D=A*0.5+B*0.5; imshow(D)

A图像

B图像

C图像

D图像

5.两张图片相减

addpath('C:\\Documents and Settings\%user\\My Documents\\My Pictures'); A=imread('2.jpg');

imshow(A)

>> B=imread('3.jpg');

imshow(B) K=A-B; imshow(K)

各种运算一次可以按照下面的方式用MATLAB呈现

6.噪声

图像增强

直方均衡,平滑,锐化A=imread('18.jpg'); B=rgb2gray(A);

figure,subplot(2,2,1),imshow(B); subplot(2,2,2),imhist(B); A1=imadjust(B,[0.2 0.5],[]); subplot(2,2,3),imshow(A1); subplot(2,2,4),imhist(A1); C=imnoise(B,'salt & pepper');

h1=[0.1 0.1 0.1;0.1 0.2 0.1;0.1 0.1 0.1]; h2=1/4.*[1 2 1;2 4 2;1 2 1]; C1=filter2(h1,C); C2=filter2(h2,C); C3=medfilt2(C);

figure,subplot(2,2,1),imshow(C); subplot(2,2,2),imshow(C1,[]); subplot(2,2,3),imshow(C2,[]); subplot(2,2,4),imshow(C3); h=[0 -1 0;-1 4 -1;0 -1 0]; D1=imfilter(B,h); d2=fspecial('sobel'); D2=imfilter(B,d2);

D3=edge(B,'roberts',0.1);

figure,subplot(2,2,1),imshow(B); subplot(2,2,2),imshow(D1); subplot(2,2,3),imshow(D2,[]); subplot(2,2,4),imshow(D3);

Sas散点图程序:

data a; input x y; cards; 413 359 403 343 383.5 351 381 377.5 339 376 335 383 317 362 334.5 353.5 333 342 282 325 247 301 219 316 225 270 280 292 290 335 337 328 415 335 432 371 418 374 444 394 251 277 234 271 225 265 212 290 227 300 256 301 250.5 306 243 328 246 337 314 367 315 351 326 355 327 350 328 342.5 336 339 336 334 331 335 371 330 371 333 388.5 330.5

411 327.5 419 344 411 343 394 346 342 342 342 348 325 372 315 374 342 372 345 382 348.5 380.5 351 377 348 369 370 363 371 353 354 374 363 382.5 357 387 351 382 369 388 335 395 381 381 391 375 392 366 395 361 398 362 401 359 405 360 410 355 408 350 415 351 418 347 422 354 418.5 356 405.5 364.5 405 368 409 370 417 364 420 370 424 372 438 368 438.5 373 434 376 438 385

440 392 447 392 448 381 444.5 383 441 385 440.5 381.5 445 380 444 360 ; run;

proc gplot data=a; symbol v=star; plot y*x; run;

Matlab中画散点图并标号程序:

x=[413 403 383.5 381 339 335 317 334.5 333 282 247 219 225 280 290 337 415 432 418 444 251 234 225 212 227 256 250.5 243 246 314 315 326 327 328 336 336 331 371 371 388.5 411 419 411 394 342 342 325 315 342 345 348.5 351 348 370 371 354 363 357 351 369 335 381 391 392 395 398 401 405 410 408 415 418 422 418.5 405.5 405 409 417 420 424 438 438.5 434 438 440 447 448 444.5 441 440.5 445 444];

y=[359 343 351 377.5 376 383 362 353.5 342 325 301 316 270 292 335 328 335 371 374 394 277 271 265 290 300 301 306 328 337 367 351 355 350 342.5 339 334 335 330 333 330.5 327.5 344 343 346 342 348 372 374 372 382 380.5 377 369 363 353 374 382.5 350 351 347 354 356 364.5 383 385 381.5 380 360]; plot(x,y,'.') hold on for i=1:92 c=num2str(i); text(x(i),y(i),c) end

387 382 388 395 381 375 366 361 362 359 360 355368 370 364 370 372 368 373 376 385 392 392 381

散点图标号并连接相应直线段

x=[413 403 383.5 381 339 335 317 334.5 333 282 247 219 225 280 290 337 415 432 418 444 251 234 225 212 227 256 250.5 243 246 314 315 326 327 328 336 336 331 371 371 388.5 411 419 411 394 342 342 325 315 342 345 348.5 351 348 370 371 354 363 357 351 369 335 381 391 392 395 398 401 405 410 408 415 418 422 418.5 405.5 405 409 417 420 424 438 438.5 434 438 440 447 448 444.5 441 440.5 445 444];

y=[359 343 351 377.5 376 383 362 353.5 342 325 301 316 270 292 335 328 335 371 374 394 277 271 265 290 300 301 306 328 337 367 351 355 350 342.5 339 334 335 330 333 330.5 327.5 344 343 346 342 348 372 374 372 382 380.5

377 369 363 353 374 382.5 387 382 388 395 381 375 366 361 362 359 360 355 350 351 347 354 356 364.5 368 370 364 370 372 368 373 376 385 392 392 381 383 385 381.5 380 360]; plot(x,y,'.') hold on for i=1:92 c=num2str(i); text(x(i),y(i),c) end

>> j=[1 1 2 3 3 14 15 15 16 16 26 27 28 28 29 38 38 39 40 41 50 51 51 52 53 64 64 65 66 66 74 74 75 76 77 88 88 89 89 89 k=[75 78 44 45 65 21 7 31 14 38 10 12 29 15 30 39 41 40 2 17 51 52 59 56 52 65 76 66 67 76 1 80 76 77 78 89 91 20 84 90 J=x(j); K=x(k); Q=y(j); W=y(k); n=length(J); for l=1:n

line([J(l),K(l)],[Q(l),W(l)]) end

4 4 5 17 17 17 30 30 31 41 42 43 53 54 54 67 67 68 77 78 79 90 91];

39 63 49 40 42 81 7 48 32 92 43 2 54 55 63 44 68 69 19 79 80 91 92]; 5 6 7 18 18 19 31 32 33 43 44 45 55 56 57 68 69 69 80 81 82 50 59 32 81 83 79 34 33 34 72 3 46 3 57 58 75 70 71 18 82 83 7 8 8 20 21 22 33 34 35 46 46 47 57 57 58 69 70 70 82 83 84 47 9 47 86 22 13 8 9 45 8 55 48 60 4 59 1 2 43 90 84 85 9 10 11 23 24 24 36 36 36 47 47 48 60 61 62 71 71 72 85 86 86 35 34 22 13 13 25 35 37 16 6 5 61 62 60 4 72 74 73 20 87 88 11 1225 2636 3749 4962 6373 7387 8726 2511 2739 750 5385 6474 1888 92

x=[413 403 383.5 381 339 335 317 334.5 333 282 247 219 225 280 290 337 415 432 418 444 251 234 225 212 227 256 250.5 243 246 314 315 326 327 328 336 336 331 371 371 388.5 411 419 411 394 342 342 325 315 342 345 348.5 351 348 370 371 354 363 357 351 369 335 381 391 392 395 398 401 405 410 408 415 418 422 418.5 405.5 405 409 417 420 424 438 438.5 434 438 440 447 448 444.5 441 440.5 445 444];

y=[359 343 351 377.5 376 383 362 353.5 342 325 301 316 270 292 335 328 335 371 374 394 277 271 265 290 300 301 306 328 337 367 351 355 350 342.5 339 334 335 330 333 330.5 327.5 344 343 346 342 348 372 374 372 382 380.5 377 369 363 353 374 382.5 387 382 388 395 381 375 366 361 362 359 360 355 350 351 347 354 356 364.5 368 370 364 370 372 368 373 376 385 392 392 381 383 385 381.5 380 360]; plot(x,y,'.') hold on for i=1:92 c=num2str(i); text(x(i),y(i),c) end

>> j=[1 1 2 3 3 4 4 5 5 6 7 7 8 8 9 10 11 11 12 14 15 15 16 16 17 17 17 18 18 19 20 21 22 23 24 24 25 26 26 27 28 28 29 30 30 31 31 32 33 33 34 35 36 36 36 36 37 38 38 39 40 41 41 42 43 43 44 45 46 46 47 47 47 48 49 49

50 51 51 52 53 53 54 54 64 64 65 66 66 67 67 68 74 74 75 76 77 77 78 79 88 88 89 89 89 90 91]; k=[75 78 44 45 65 39 63 49 21 7 31 14 38 40 42 81 10 12 29 15 30 7 48 32 39 41 40 2 17 92 43 2 51 52 59 56 52 54 55 63 65 76 66 67 76 44 68 69 1 80 76 77 78 19 79 80 89 91 20 84 90 91 92]; J=x(j); K=x(k); Q=y(j); W=y(k); n=length(J); for l=1:n

line([J(l),K(l)],[Q(l),W(l)])

N(l)=sqrt((K(l)-J(l))^2+(W(l)-Q(l))^2); X(l)=0.5*(J(l)+K(l)); Y(l)=0.5*(Q(l)+W(l)); p=num2str(N(l)); text(X(l),Y(l),p) end

55 56 57 57 57 58 60 61 62 62 6368 69 69 69 70 70 71 71 72 73 7380 81 82 82 83 84 85 86 86 87 8750 81 34 72 3 75 18

59 83 33 3 57 70 82

32 79 34 46 58 71 83

47 86 8 8 60 1 90

9 22 9 55 4 2 84

47 13 45 48 59 43 85

35 13 35 6 62 72 20

34 13 37 5 60 74 87

22 25 16 61 4 73 88

26 11 39 50 85 74 88

2527753641892

x=[413 403 383.5 381 339 335 317 334.5 333 282 247 219 225 280 290 337 415 432 418 444 251 234 225 212 227 256 250.5 243 246 314 315 326 327 328 336 336 331 371 371 388.5 411 419 411 394 342 342 325 315 342 345 348.5 351 348 370 371 354 363 357 351 369 335 381 391 392 395 398 401 405 410 408 415 418 422 418.5 405.5 405 409 417 420 424 438 438.5 434 438 440 447 448 444.5 441 440.5 445 444];

y=[359 343 351 377.5 376 383 362 353.5 342 325 301 316 270 292 335 328 335 371 374 394 277 271 265 290 300 301 306 328 337 367 351 355 350 342.5 339 334 335 330 333 330.5 327.5 344 343 346 342 348 372 374 372 382 380.5 377 369 363 353 374 382.5 387 382 388 395 381 375 366 361 362 359 360 355 350 351 347 354 356 364.5 368 370 364 370 372 368 373 376 385 392 392 381 383 385 381.5 380 360]; plot(x,y,'.') hold on for i=1:92 c=num2str(i); text(x(i),y(i),c) end

j=[1 1 2 3 3 4 4 5 5 6 7 7 8 8 9 10 11 11 12 14 15 15 16 16 17 17 17 18 18 19 20 21 22 23 24 24 25 26 26 27 28 28 29 30 30 31 31 32 33 33 34 35 36 36 36 36 37 38 38 39 40 41 41 42 43 43 44 45 46 46 47 47 47 48 49 49 50 51 51 52 53 53 54 54 55 56 57 57 57 58 60 61 62 62 63 64 64 65 66 66 67 67 68 68 69 69 69 70 70 71 71 72 73 73 74 74 75 76 77 77 78 79 80 81 82 82 83 84 85 86 86 87 87 88 88 89 89 89 90 91];

k=[75 78 44 45 65 39 63 49 50 59 32 47 9 47 35 34 22 26 25 21 7 31 14 38 40 42 81 81 83 79 86 22 13 13 13 25 11 27 10 12 29 15 30 7 48 32 34 33 34 8 9 45 35 37 16 39 7 39 41 40 2 17 92 43 2 72 3 46 8 55 48 6 5 61 50 53 51 52 59 56 52 54 55 63 3 57 58 60 4 59 62 60 4 85 64 65 76 66 67 76 44 68 69 75 70 71 1 2 43 72 74 73 74 18 1 80 76 77 78 19 79 80 18 82 83 90 84 85 20 87 88 88 92 89 91 20 84 90 91 92]; J=x(j); K=x(k); Q=y(j); W=y(k); n=length(J); for l=1:n

line([J(l),K(l)],[Q(l),W(l)])

N(l)=sqrt((K(l)-J(l))^2+(W(l)-Q(l))^2); end N

N =

Columns 1 through 8

9.3005 6.4031 9.4868 42.4647 15.2398 45.6098 10.3078 5.0000

Columns 9 through 16

8.4853 16.0312 11.4018

Columns 17 through 24

32.6956 9.0000 17.8885

Columns 25 through 32

26.8794 9.8489 40.2244

Columns 33 through 40

9.0554 5.0000 23.8537

Columns 41 through 48

9.4868 47.5184 74.3236

Columns 49 through 56

7.5664 8.2765 5.0249

Columns 57 through 64

30.4138 3.0000 40.0780

Columns 65 through 72

8.0000 8.0623 11.6297

Columns 73 through 80

14.5602 29.0000 10.4403

Columns 81 through 88

12.8062 11.5974 32.6497 38.1838 6.7082 5.3852 18.0278 20.0250 5.8310 7.0711 6.7082 5.0000 17.6777 19.1442 6.0000 9.3005 6.7082 3.8079 20.7966 29.6816 4.4721 7.4330 11.7047 5.0990 8.5000 29.4279 4.3012 4.2426 49.2164 67.4166 34.0588 3.6056 18.0278 35.3836 33.0492 15.5322 5.0990 6.0828 35.0143 46.3168 8.0623 10.1980 14.8661 2.9155 4.2426

8.5440 22.8035 10.0499 24.1868 12.6590 12.3794 7.5000 8.1394

Columns 89 through 96

18.6815 7.8102 13.8924 34.7131 3.5000 60.0167 9.0554 5.8310

Columns 97 through 104

13.1529 3.1623 4.2426

Columns 105 through 112

5.3852 6.4031 5.0000

Columns 113 through 120

4.0311 19.7231 6.2650

Columns 121 through 128

6.7082 4.4721 8.0623

Columns 129 through 136

4.4721 11.0454 9.3408

Columns 137 through 140

3.0000 3.5355 4.7434

9.2195 8.6023 16.9189 5.0249 4.0311 20.0250 14.7648 4.1231 7.6158 5.0000 3.5355 4.4721 5.4083 8.7321 21.3776 4.0311 7.0711 4.5277 6.1033 8.0623 10.0000 9.8489 9.8489 7.2801 3.0414 9.4868

本文来源:https://www.bwwdw.com/article/r2ig.html

Top