Språkidentifiering Bildanalys, projekt 3 hp

Storlek: px
Starta visningen från sidan:

Download "Språkidentifiering Bildanalys, projekt 3 hp"

Transkript

1 Språkidentifiering Bildanalys, projekt 3 hp Pia Haage, Sophia Holmström Handledare: Karl Åström

2 Språkidentifiering Bildanalys, projekt 3 hp Innehåll Inledning... 2 Metod... 2 Utförande... 2 Frågeställningar... 2 Arbetsgång... 3 Problem under arbetsgången... 7 Sammanfattning... 7 Bilaga Matlabkod... 8 lang_seg.m... 8 segment.m... 9 harris.m features.m train_classify.m huvudprogram.m benchmark.m my_classify.m

3 Inledning Målet med projektet är att kunna klassificera olika texter efter det språk de är skrivna på. Vi kommer att utgå från sex stycken språk där vissa är inom samma språkfamilj. Vi har tänkt utveckla och använda oss av en metod där vi klassificerar texter genom att titta på histogram över utklippta textrutors klustertillhörigheter. Detta är inte en för oss känd metod och ett delsyfte i projektet är därför att undersöka om metoden kan vara lämplig för just språkklassificering. Vi kommer att använda algoritmen K-means för att klustra segment av bilden vilka vi tar fram genom en hörndetektor. Vi kommer att använda oss av beräkningsprogrammet Matlab för skapandet och utvärderingen av metoden. Metod En kortfattad punktlista över metoden vi använde oss av ses nedan. 1. Inläsning av inlärningsbilder till klassificeraren 2. Hittar 180 signifikanta hörnor i varje bild m.h.a. Harris hörndetektor. 3. Klipper ut n n rutor kring de signifikanta hörnen i varje bild, där n är den valda storleken på rutan, och kolonnstaplar dessa rutor i vektorer. 4. Lagrar vektorerna i en matris. 5. Klustrar rutorna till 100 kluster m.h.a. K-means. 6. Tar för varje språk fram ett histogram över klustertillhörigheten för rutorna i språkets textbild. 7. Lagrar histogrammen i en matris. 8. Tränar en klassificerare för användning av klassificeringsmetoden Nearest neighbour. 9. Läser in bilder för utvärdering och skapar histogramvektorer m.h.a. Harris och histogram. 10. Klassificerar bilderna m.h.a. Nearest neighbour och våra inlärningsbilders histogram. 11. Kör Benchmark för utvärdering av programmet. Utförande Frågeställningar Vid projektets start uppkom några frågeställningar som var tvungna att besvaras innan vi kunde börja. Dessa definierar och ramar in projektet och visar också på vad som är varierbart i metoden och kan modifieras för en eventuell förbättring. Vilka språk ska programmet kunna identifiera? Arabiska, engelska, finska, ryska, svenska och tyska. Vilken hörndetektor ska vi använda? Harris hörndetektor. Hur stora rutor ska klippas ut runt de signifikanta hörnen? 7 7 rutor. 2

4 Hur många olika kluster ska vi använda och hur många iterationer ska vi köra i K-means? 100 kluster och 50 iterationer. Vilken klassificeringsmetod ska vi använda? Nearest neighbour. Arbetsgång Vi började med att ta fram sex stycken lika stora bilder (1100 px 400 px) på de valda språken som skulle användas för att träna klassificeraren. Några språk var markant olika t.ex. arabiska och svenska och några språk var relativt lika t.ex. tyska och engelska. Detta för att testa hur väl metoden skulle fungera. Vi valde inte fler språk p.g.a. projektets storlek. En av inlärningsbilderna ses i figur 1. Figur 1 - Inlärningsbild för arabiska. Utifrån dessa inlärningsbilder skulle vårt program alltså kunna identifiera andra textbilder. Bilderna vi använde oss av skapade vi genom att ta screenshots av texter vi fann på Internet. Texterna vi hittade bearbetade vi först i Word för att normera teckenstorlek (14 pt) och typsnitt (Times New Roman). Detta är en av begränsningarna med vårt program, men också en förutsättning för att kunna göra en bra utvärdering av metoden. Utan normerade texter hade det varit svårt att dra slutsatser om varför metoden skulle fungera eller ej. Som hörndetektor valdes Harris hörndetektor som vi hämtade från Matlabs scriptsamling på Internet, Denna modifierades något för att passa in i vårt program. 180 signifikanta hörnpunkter valdes för att vi ansåg detta var en lagom mängd punkter med hänsyn till bildstorleken. Hörnpunkter för en av språkbilderna ses i figur 2. 3

5 Figur 2 - Visar de signifikanta hörnen för en del av en inlärningsbild. Hörnen är inramade i gråa rutor. Hörnpunkterna representerades som koordinater i en vektor. Runt dessa punkter togs sedan 7 7-rutor ut och kolonnstaplades i vektorer. Meningen med rutorna är att olika språk ska ha olika signifikanta rutor. Ett exempel på en ruta ses i figur 3. Figur 3 - En utklippt 7 7-ruta. Alla rutvektorer för samtliga språk lagrades sedan i en matris, se figur 4. Figur 4 - Matris med kolonnstaplade rutor för alla språk 4

6 Vi ville nu klustra alla rutor m.h.a. K-means. Vi använde Matlabs inbyggda script för K-means. 100 klustercentra valdes för att rutor från samma bokstav idealt skulle hamna i samma kluster. Det gjordes även 50 iterationer av K-means för att minimera det lokala minimumet. Klustercentrumen för det bästa resultatet sparades. Histogram skapades sedan utifrån inlärningsbilderna. Histogrammen bestod av en vektor där t.ex. plats 1 representerar hur många rutor i ett visst språk som tillhör kluster 1. En principskiss för detta visas i figur 5. Figur 5 - Principskiss för skapandet av histogrammen. Ett histogram skapades för varje språk. Dessa ses i figur 6. Figur 6 - Histogram för varje inlärningsbild. I figur 6 ser man att t.ex. arabiska skiljer sig mycket från de latinska språken vilket borde göra arabiska lätt att identifiera. 5

7 Vi tränade sedan en klassificerare utifrån våra inlärningsbilders histogram. Det skapades en matris T utifrån matrisen X med alla histogram, d.v.s. featurevektorerna, och vektorn Y med siffror motsvarande de olika språken, se figur 7. Figur 7 - Träning av klassificeraren. Klassificeraren skulle använda sig av metoden Nearest neighbour, d.v.s. den jämför andra bilders histogram med matrisen med inlärningsbildernas featurevektorer. Vi testade nu vår metod med några olika bilder, även bilder med varierande storlek och typsnitt. Med samma metod som ovan skapade vi histogram som sedan klassificerades. I klassificeringen märkte vi att arabiska var lätt att identifiera medan de latinska språken ofta förväxlades. Detta var förväntat då arabiska har ett helt annat alfabet och de latinska språken är ganska lika varandra. Vi gjorde även en utvärdering (benchmark) på systemet, där hitrate innebär antal rätt klassificerade bilder genom totalt antal klassificerade bilder. Vi skickade här in två bilder från varje språk, totalt 12 bilder, som var normerade på samma sätt som inlärningsbilderna. Resultatet från utvärderingen ses i figur 8. Figur 8 - Hitrate blev cirka 67% för våra testbilder. Man kan dock ej dra så stora slutsatser av vårt resultat då vi hade få testbilder. Vi provade även att ändra rutstorleken för att se hur detta påverkade hitrate. Resultatet ses i tabell 1. Tabell 1 - Hitrate för olika rutstorlek. Rutstorlek Hitrate % % % 6

8 P.g.a. tidsbrist hann vi inte testa andra parametervariationer, men om tid funnits hade vi utvärderat följande: Antalet klustercentra Antalet signifikanta hörn Annan klassificeringsmetod Vi hade även velat titta på andra språk och utöka antalet testbilder. Problem under arbetsgången Det största problemet var att hitta textbilder över olika språk som alla hade samma typsnitt och storlek. Detta löste vi genom att kopiera texter från Internet till Word och där välja typsnitt och teckenstorlek. Vi hade även problem med K-means då det i varje iteration skapades tomma kluster. Vi använde då en inställning i K-means som skapade ett nytt kluster utifrån en av punkterna. Sammanfattning Vi har testat en metod för språkklassifikation som baseras på utklipp av textbilden runt signifikanta punkter. Dessa jämfördes med kluster från inlästa bilders textutklipp för att bestämma textens språk. Det är svårt att avgöra om metoden skulle fungera då det inte fanns tillräckligt med tid att testa den fullt ut. Den skulle eventuellt kunna användas för att identifiera olika språkgrupper då vår metod är bra på att identifiera språk med olika alfabet och skrivsätt. För identifiering inom en speciell språkgrupp tror vi att en annan metod bör användas, t.ex. OCR. 7

9 Bilaga Matlabkod lang_seg.m % Segmentera olika språkbilder och lagra i en matris (49,1080). Varje % kolumn är en kolonnstaplad 7*7 bild runt ett detekterat hörn. datadir = '../projektbilder/jpg'; rutarea = 49; allsegment = zeros(rutarea,(180*6)); bilder = {'a_learn','e_learn','f_learn','r_learn','s_learn','t_learn'}; k = 0; for i = 1:length(bilder) file = char(bilder(i)); fnamebild = [datadir filesep file '.jpg']; bild = imread(fnamebild); frame = rgb2gray(bild); utsegment = segment(frame); for j = 1:180 allsegment(:,k+j) = utsegment{j}; k = k+180; % Klustring av segmenten mha k-means: allsegment = allsegment'; IDX=0; C=0; min_sumd=inf; for i=1:50 [IDX2,C2,sumd2] = kmeans(allsegment,100,'emptyaction','singleton','display','final','replicat es',1); if sum(sumd2)<min_sumd min_sumd = sum(sumd2); IDX = IDX2; C = C2; save C C; save IDX IDX; save min_sumd min_sumd; % Skapar featurevektorer genom att göra ett histogram. X = zeros(6,100); for i = 1:6 8

10 file = char(bilder(i)); fnamebild = [datadir filesep file '.jpg']; bild = imread(fnamebild); frame = rgb2gray(bild); X(i,:) = features(frame,c); %Returnerar histogram Y = [1;2;3;4;5;6]; %Vilket språk X tillhör. 1=Arabiska, 2=Engelska, 3=Finska, 4=Ryska, 5=Svenska, 6=Tyska. T = train_classify(x,y); save T T; figure(2) subplot(2,3,1); plot(x(1,:)); title('arabiska'); subplot(2,3,2); plot(x(2,:)); title('engelska'); subplot(2,3,3); plot(x(3,:)); title('finska'); subplot(2,3,4); plot(x(4,:)); title('ryska'); subplot(2,3,5); plot(x(5,:)); title('svenska'); subplot(2,3,6); plot(x(6,:)); title('tyska'); segment.m function utsegment = segment(frame) [m,n] = size(frame); % Gör bilden svartvit for i = 1:m for j = 1:n if frame(i,j) > 180 frame(i,j) = 255; else frame(i,j) = 0; save frame frame PIP=Harris(frame); utsegment = cell(1,180); rutarea = 49; for i = 1:180 %Tar ut de 180 första punkterna för att garantera samma vektor längd. ruta = zeros(rutarea,1); index = 1; while index < rutarea + 1 for col = (PIP(i,2)-3):(PIP(i,2)+3) for row = (PIP(i,1)-3):(PIP(i,1)+3) ruta(index)=frame(row,col); index = index + 1; utsegment{i} = ruta; 9

11 harris.m % Harris detector % The code calculates % the Harris Feature Points(FP) % % When u execute the code, the test image file opened % and u have to select by the mouse the region where u % want to find the Harris points, % then the code will print out and display the feature % points in the selected region. % You can select the number of FPs by changing the variables % max_n & min_n % A. Ganoun function PIP=Harris(Imag) load frame; Imag = frame; I =double(frame); %**************************** % imshow(frame); % k = waitforbuttonpress; % point1 = get(gca,'currentpoint'); %button down detected % rectregion = rbbox; %%%return figure units % point2 = get(gca,'currentpoint');%%%%button up detected % point1 = point1(1,1:2); %%% extract col/row min and maxs % point2 = point2(1,1:2); % lowerleft = min(point1, point2); % upperright = max(point1, point2); % ymin = round(lowerleft(1)); %%% arrondissement aux nombrs les plus proches % ymax = round(upperright(1)); % xmin = round(lowerleft(2)); % xmax = round(upperright(2)); %*********************************** % Aj=6; [m,n] = size(frame); cmin=1; cmax=m; rmin=1; rmax=n; min_n=180;max_n=200; %%%%%%%%%%%%%%Intrest Points %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% sigma=2; Thrshold=20; r=6; disp=1; dx = [-1 0 1; ; ]; % The Mask dy = dx'; %%%%%% Ix = conv2(i(cmin:cmax,rmin:rmax), dx, 'same'); Iy = conv2(i(cmin:cmax,rmin:rmax), dy, 'same'); g = fspecial('gaussian',max(1,fix(6*sigma)), sigma); %%%%%% Gaussien Filter %%%%% Ix2 = conv2(ix.^2, g, 'same'); Iy2 = conv2(iy.^2, g, 'same'); 10

12 Ixy = conv2(ix.*iy, g,'same'); %%%%%%%%%%%%%% k = 0.04; R11 = (Ix2.*Iy2 - Ixy.^2) - k*(ix2 + Iy2).^2; R11=(1000/max(max(R11)))*R11; R=R11; ma=max(max(r)); sze = 2*r+1; MX = ordfilt2(r,sze^2,ones(sze)); R11 = (R==MX)&(R>Thrshold); count=sum(sum(r11(5:size(r11,1)-5,5:size(r11,2)-5))); loop=0; while (((count<min_n) (count>max_n))&(loop<30)) if count>max_n Thrshold=Thrshold*1.5; elseif count < min_n Thrshold=Thrshold*0.5; R11 = (R==MX)&(R>Thrshold); count=sum(sum(r11(5:size(r11,1)-5,5:size(r11,2)-5))); loop=loop+1; 5); R=R*0; R(5:size(R11,1)-5,5:size(R11,2)-5)=R11(5:size(R11,1)-5,5:size(R11,2)- [r1,c1] = find(r); PIP=[r1+cmin,c1+rmin];%% IP %keyboard; %%%%%%%%%%%%%%%%%%%% Display Size_PI=size(PIP,1); for r=1: Size_PI I(PIP(r,1)-2:PIP(r,1)+2,PIP(r,2)-2)=200; I(PIP(r,1)-2:PIP(r,1)+2,PIP(r,2)+2)=200; I(PIP(r,1)-2,PIP(r,2)-2:PIP(r,2)+2)=200; I(PIP(r,1)+2,PIP(r,2)-2:PIP(r,2)+2)=200; % imshow(uint8(i)) features.m function histo = features(im,centra); %Skickar med bild och klustercentra utsegment = segment(im); %Cell 1,180 med vektorer m längd 49,1 histo = zeros(1,100); 11

13 for i = 1:180 mindist = Inf; k = 0; for j = 1:100 if sum(abs(utsegment{i}'-centra(j,:))) < mindist klustercenter utsegment ligger närmast mindist = sum(abs(utsegment{i}'-centra(j,:))); k = j; histo(k) = histo(k) + 1; %Fyller ut histogrammet %Kollar vilket train_classify.m function T = train_classify(x,y) T = [X,Y]; huvudprogram.m datadir = '../projektbilder/jpg/test/'; myclassify = 'my_classify'; % Ange namnet på din ocr-rutin. load T; hitrate=benchmark(myclassify,datadir,t); disp(['using method ' myclassify ' on dataset ' datadir ' I obtained a hitrate of ' num2str(hitrate) '.']); benchmark.m function hitrate=benchmark(my_classify,datadir,t); thispath = pwd; eval(['cd ' datadir]); nbr_correct = 0; nbr_char = 0; a = dir; for ii=1:length(a); [path,name,ext,ver] = fileparts(a(ii).name); if strcmp(ext,'.jpg'), % Hittat en bild fname = name; fid = fopen([fname '.txt'],'r'); facit = fgetl(fid); fclose(fid); im = imread([fname ext]); 12

14 eval(['cd ' thispath]); guess = feval(my_classify,im,t); eval(['cd ' datadir]); thisres = guess(1:length(facit))==facit; nbr_correct = nbr_correct+sum(thisres); nbr_char = nbr_char + length(facit);,, hitrate = nbr_correct/nbr_char; cd(thispath); my_classify.m function my_classify=my_classify(im,t); rutarea = 49; allsegment = zeros(rutarea,180); % k = 0; utsegment = segment(im); for j = 1:180 allsegment(:,j) = utsegment{j}; % k = k+180; X_classify = zeros(1,100); load C; %Klustercentra X_classify(1,:) = features(im,c); %Returnerar histogram my_classify = classify(t,x_classify(1,:)); 13

Image processing of protein chips for diagnosis of prostate cancer

Image processing of protein chips for diagnosis of prostate cancer Image processing of protein chips for diagnosis of prostate cancer in cooperation with the Department of Electrical Measurements Lund Institute of Technology Emma Fägerlind π03, p03ef@student.lth.se Marianne

Läs mer

Beräkningsverktyg HT07

Beräkningsverktyg HT07 Beräkningsverktyg HT07 Föreläsning 1, Kapitel 1 6 1.Introduktion till MATLAB 2.Tal och matematiska funktioner 3.Datatyper och variabler 4.Vektorer och matriser 5.Grafik och plottar 6.Programmering Introduktion

Läs mer

MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...

MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och... Allt du behöver veta om MATLAB: Industristandard för numeriska beräkningar och simulationer. Används som ett steg i utvecklingen (rapid prototyping) Har ett syntax Ett teleskopord för «matrix laboratory»

Läs mer

Språkigenkänning. en tillämpning av OCR system och klassificering. Projekt i Bildanalys. Anna Lindholm Eskil Jönsson

Språkigenkänning. en tillämpning av OCR system och klassificering. Projekt i Bildanalys. Anna Lindholm Eskil Jönsson Språkigenkänning en tillämpning av OCR system och klassificering Projekt i Bildanalys Anna Lindholm Introduktion Syftet med projektet är att undersöka möjligheterna att känna igen vilket språk en text

Läs mer

TSBB14 Laboration: Intro till Matlab 1D

TSBB14 Laboration: Intro till Matlab 1D TSBB14 Laboration: Intro till Matlab 1D Utvecklad av Maria Magnusson med mycket hjälp av Lasse Alfredssons material i kursen Introduktionskurs i Matlab, TSKS08 Avdelningen för Datorseende, Institutionen

Läs mer

Du skall naturligtvis visa körexempel med output där det behövs i din rapport!

Du skall naturligtvis visa körexempel med output där det behövs i din rapport! och databprogrammering Christilinda Göstson - PL/SQL, paket och ref cursor Du skall naturligtvis visa körexempel med output där det behövs i din rapport! OBS! Denna labb redovis i labbrapport via mail

Läs mer

MMA132: Laboration 1 Introduktion till MATLAB

MMA132: Laboration 1 Introduktion till MATLAB MMA132: Laboration 1 Introduktion till MATLAB De flesta numeriska metoder låter oss få en tillräckligt bra lösning på ett matematiskt problem genom att byta ut komplexa matematiska operationer med kombinationer

Läs mer

Programmeringsuppgift Game of Life

Programmeringsuppgift Game of Life CTH/GU STUDIO TMV06a - 0/0 Matematiska vetenskaper Programmeringsuppgift Game of Life Analys och Linär Algebra, del A, K/Kf/Bt Inledning En cellulär automat är en dynamisk metod som beskriver hur komplicerade

Läs mer

Föreläsning 9-10 Innehåll

Föreläsning 9-10 Innehåll Föreläsning 9-10 Innehåll Inläsning från textfil, utskrift från textfil Vektorer med objekt Matriser Datavetenskap (LTH) Föreläsning 9-10 HT 2018 1 / 41 Klassen Scanner Läsa från System.in Vi har tidigare

Läs mer

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB Redovisning Lös först uppgifterna i Matlab. Då du har en

Läs mer

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Hjälpmedel: MATLAB

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Hjälpmedel: MATLAB MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Hjälpmedel: MATLAB Redovisning Lös först uppgifterna i Matlab. Då du har en

Läs mer

(a) Skriv en matlabsekvens som genererar en liknande figur som den ovan.

(a) Skriv en matlabsekvens som genererar en liknande figur som den ovan. Matematik Chalmers tekniska högskola 2014-08-27 kl. 08:30-12:30 Tentamen MVE355, Programmering och numeriska beräkningar med matlab. Ansvarig: Katarina Blom, tel 772 10 97. Plats: L Inga hjälpmedel. Kalkylator

Läs mer

Medicinska Bilder, TSBB31. Lab: Mätvärden på Medicinska Bilder

Medicinska Bilder, TSBB31. Lab: Mätvärden på Medicinska Bilder Medicinska Bilder, TSBB3 Lab: Mätvärden på Medicinska Bilder Maria Magnusson, 22 Senaste updatering: september 25 Avdelningen för Datorseende, Institutionen för Systemteknik Linköpings Universitet Introduktion

Läs mer

Bänkvåg LCW-6S Manual/Förenklat handhavande User Manual LCW-6S www.liden-weighing.se Knappfunktioner: ON/OFF Sätter på och stänger av vågen. UNIT Skiftar vägningsenhet ZERO/TARE Nollställer vågen Tarerar

Läs mer

Textsträngar från/till skärm eller fil

Textsträngar från/till skärm eller fil Textsträngar från/till skärm eller fil Textsträngar [Kapitel 8.1] In- och utmatning till skärm [Kapitel 8.2] Rekursion Gränssnitt Felhantering In- och utmatning till fil Histogram 2010-10-25 Datorlära,

Läs mer

Introduktion till MATLAB, med utgångspunkt från Ada

Introduktion till MATLAB, med utgångspunkt från Ada Introduktion till, med utgångspunkt från Desktop-miljö som innefattar editor, kommandofönster, graffönster och mycket mer. Interpreteras Snabbt att testa kommandon Terminal + emacs + gnatmake Kompileras

Läs mer

Poisson Point Processes. Edvin Listo Zec Maja Fahlén

Poisson Point Processes. Edvin Listo Zec Maja Fahlén Poisson Point Processes Edvin Listo Zec Maja Fahlén 2013 05 19 1 Innehåll 1 Introduktion 3 2 Inhomogena poisson-punktprocesser 3 3 Analys av riktig data 5 2 1 Introduktion I det här arbetet komer vi att

Läs mer

Lösningsförslag Tentamen i Beräkningsvetenskap I, 5.0 hp,

Lösningsförslag Tentamen i Beräkningsvetenskap I, 5.0 hp, Uppsala universitet Institutionen för informationsteknologi Teknisk databehandling Lösningsförslag Tentamen i Beräkningsvetenskap I, 5. hp, 14-6-4 Kursmål (förkortade), hur de täcks i uppgifterna och maximalt

Läs mer

Kurskod: TAMS11 Provkod: TENB 28 August 2014, 08:00-12:00. English Version

Kurskod: TAMS11 Provkod: TENB 28 August 2014, 08:00-12:00. English Version Kurskod: TAMS11 Provkod: TENB 28 August 2014, 08:00-12:00 Examinator/Examiner: Xiangfeng Yang (Tel: 070 2234765) a. You are permitted to bring: a calculator; formel -och tabellsamling i matematisk statistik

Läs mer

Matriser och vektorer i Matlab

Matriser och vektorer i Matlab CTH/GU LABORATION 2 TMV157-2014/2015 Matematiska vetenskaper Matriser och vektorer i Matlab 1 Inledning Först skall vi se lite på matriser, vilket är den grundläggande datatypen i Matlab, sedan skall vi

Läs mer

Medicinska Bilder, TSBB31. Lab3: Mätvärden på Medicinska Bilder

Medicinska Bilder, TSBB31. Lab3: Mätvärden på Medicinska Bilder Medicinska Bilder, TSBB3 Lab3: Mätvärden på Medicinska Bilder Maria Magnusson, Avdelningen för Datorseende Institutionen för Systemteknik Linköpings Universitet Introduktion I denna laboration ska vi göra

Läs mer

TANA17 Matematiska beräkningar med Matlab

TANA17 Matematiska beräkningar med Matlab TANA17 Matematiska beräkningar med Matlab Datorlektion 4. Funktioner 1 Egna Funktioner Uppgift 1.1 En funktion f(x) ges av uttrycket 0, x 0, f(x)= sin(x), 0 < x π 2, 1, x > π 2 a) Skriv en Matlab funktion

Läs mer

Karlstads Universitet, Datavetenskap 1

Karlstads Universitet, Datavetenskap 1 DAV B04 - Databasteknik KaU - Datavetenskap - DAV B04 - MGö 229 PHP Hypertext Preprocessor Scriptspråk på serversidan Innebär att webbservern översätter php-scripten innan sidan skickas till webbläsaren,

Läs mer

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan 8.00-12.00 Redovisning Lös först uppgifterna i Matlab.

Läs mer

Matematisk Modellering

Matematisk Modellering Matematisk Modellering Föreläsning 1 Anders Heyden Matematikcentrum Lunds Universitet Matematisk Modellering p.1/37 Denna föreläsning (läsvecka 1) Vad handlar kursen om, mål, kurskrav, ide. Matematisk

Läs mer

Lösningar till tentamen i EIT070 Datorteknik

Lösningar till tentamen i EIT070 Datorteknik Lösningar till tentamen i EIT070 Datorteknik Institutionen för Elektro- och informationsteknik, LTH Onsdagen den 13 mars 2013, klockan 14:00 19:00 i Vic 2 A-D, 3 A-C. Tillåtna hjälpmedel: på tentan utdelad

Läs mer

Numeriska metoder, grundkurs II. Dagens program. Hur skriver man en funktion? Administrativt. Hur var det man gjorde?

Numeriska metoder, grundkurs II. Dagens program. Hur skriver man en funktion? Administrativt. Hur var det man gjorde? Numeriska metoder, grundkurs II Övning 1 för I2 Dagens program Övningsgrupp 1 Johannes Hjorth hjorth@nada.kth.se Rum 163:006, Roslagstullsbacken 35 08-790 69 00 Kurshemsida: http://www.csc.kth.se/utbildning/kth/kurser/2d1240/numi07

Läs mer

Medicinska Bilder, TSBB31. Lab: Mätvärden på Medicinska Bilder

Medicinska Bilder, TSBB31. Lab: Mätvärden på Medicinska Bilder Medicinska Bilder, TSBB3 Lab: Mätvärden på Medicinska Bilder Maria Magnusson, 22 Senaste updatering: september 27 Avdelningen för Datorseende, Institutionen för Systemteknik Linköpings Universitet Introduktion

Läs mer

Ett enkelt OCR-system

Ett enkelt OCR-system P r o j e k t i B i l d a n a l y s Ett enkelt OCR-system av Anders Fredriksson F98 Fredrik Rosqvist F98 Handledare: Magnus Oskarsson Lunds Tekniska Högskola 2001-11-29 - Sida 1 - 1.Inledning Många människor

Läs mer

Matriser och linjära ekvationssystem

Matriser och linjära ekvationssystem Linjär algebra, AT3 211/212 Matematiska vetenskaper Matriser och linjära ekvationssystem Matriser En matris är som ni redan vet ett rektangulärt talschema: a 11 a 1n A = a m1 a mn Matrisen ovan har m rader

Läs mer

Digitala Projekt(EITF40) - Larm

Digitala Projekt(EITF40) - Larm Digitala Projekt(EITF40) - Larm Handledare: Bertil Lindvall Erik Oredsson, I-09 Sara Sellin, I-09 2012-05-08 1. SAMMANFATTNING I denna rapport presenteras vårt projekt att bygga ett huslarm från grunden

Läs mer

Användarhandledning Version 1.2

Användarhandledning Version 1.2 Användarhandledning Version 1.2 Innehåll Bakgrund... 2 Börja programmera i Xtat... 3 Allmänna tips... 3 Grunderna... 3 Kommentarer i språket... 4 Variabler... 4 Matematik... 5 Arrayer... 5 på skärmen...

Läs mer

En introduktion till MatLab

En introduktion till MatLab Chalmers tekniska högskola En introduktion till MatLab Gustafsson Gabriel gabgus@student.chalmers.se Johansson Việt Simon simoj@student.chalmers.se Författare: Norell Pontus npontus@student.chalmers.se

Läs mer

Uppgifter teknik HT17 (uppdaterad v. 40)

Uppgifter teknik HT17 (uppdaterad v. 40) Uppgifter teknik HT17 (uppdaterad v. 40) Uppgifterna bedöms inte, de är bara till för att öva. Samarbeta gärna med andra! Du behöver inte skriva ner svaren, men se till att du förstår lösningarna! 1. Det

Läs mer

Sanningar om programmering

Sanningar om programmering Grundläggande programmering stefan@it.uu.se Sanningar om programmering Ett MATLAB-program är ett antal MATLABkommandon samlade i en m-fil. Att utveckla och skriva program kallas att programmera. Att skriva

Läs mer

5. En metod som anropar sig själv a) får inte förekomma i Java-program b) kallas destruktiv c) kallas iterativ d) kallas rekursiv 6. Vilka värden har

5. En metod som anropar sig själv a) får inte förekomma i Java-program b) kallas destruktiv c) kallas iterativ d) kallas rekursiv 6. Vilka värden har Datalogi I, grundkurs med Java 10p, 2D4112, 2002-2003 Exempel på tentafrågor i Java Först följer frågor av flervalstyp. Frågorna är inte ordnade efter svårighetsgrad. 1. Skillnaden mellan typerna int och

Läs mer

EDAA20 Föreläsning Klassen ArrayList. Viktiga operationer på ArrayList. Generisk klass

EDAA20 Föreläsning Klassen ArrayList. Viktiga operationer på ArrayList. Generisk klass EDAA20 Föreläsning 11-12 Klassen ArrayList Klassen ArrayList Skriva program som läser data från en textfil och skriver data till en textfil Repetition inför delmålskontroll 2 är en standardklass (i paketet

Läs mer

3 Man kan derivera i Matlab genom att approximera derivator med differenskvoter. Funktionen cosinus deriveras för x-värdena på följande sätt.

3 Man kan derivera i Matlab genom att approximera derivator med differenskvoter. Funktionen cosinus deriveras för x-värdena på följande sätt. Kontrolluppgifter 1 Gör en funktion som anropas med där är den siffra i som står på plats 10 k Funktionen skall fungera även för negativa Glöm inte dokumentationen! Kontrollera genom att skriva!"#$ &%

Läs mer

Dagens program. Programmeringsteknik och Matlab. Administrativt. Viktiga datum. Kort introduktion till matlab. Övningsgrupp 2 (Sal Q22/E32)

Dagens program. Programmeringsteknik och Matlab. Administrativt. Viktiga datum. Kort introduktion till matlab. Övningsgrupp 2 (Sal Q22/E32) Programmeringsteknik och Matlab Övning Dagens program Övningsgrupp 2 (Sal Q22/E2) Johannes Hjorth hjorth@nada.kth.se Rum 458 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d2

Läs mer

Introduktion till MATLAB

Introduktion till MATLAB 29 augusti 2017 Introduktion till MATLAB 1 Inledning MATLAB är ett interaktivt program för numeriska beräkningar med matriser. Med enkla kommandon kan man till exempel utföra matrismultiplikation, beräkna

Läs mer

Saker du ska kunna Föreläsning 13 & 14

Saker du ska kunna Föreläsning 13 & 14 Saker du ska kunna Föreläsning 13 & 14 LISTOR Ta bort element från en vektor Både sorterad och osorterad Söka upp element i en vektor Linjärsökning räcker (jag har även visat binärsökning) Registrering

Läs mer

Föreläsning 6: Introduktion av listor

Föreläsning 6: Introduktion av listor Föreläsning 6: Introduktion av listor Med hjälp av pekare kan man bygga upp datastrukturer på olika sätt. Bland annat kan man bygga upp listor bestående av någon typ av data. Begreppet lista bör förklaras.

Läs mer

TANA17 Matematiska beräkningar med Matlab

TANA17 Matematiska beräkningar med Matlab TANA17 Matematiska beräkningar med Matlab Datorlektion 6. Text och filer 1 Textsträngar Uppgift 1.1 Skapa en sträng som innehåller texten: kommer du snart?. Använd length för att kontrollera hur många

Läs mer

Sanningar om programmering

Sanningar om programmering Block 3: Programmering, del 1 Beräkningsvetenskap I Sanningar om programmering n Ett program är ett antal kommandon och särskilda strukturer lagrade i en eller flera filer n Att utveckla och skriva program

Läs mer

Datorarkitekturer med operativsystem ERIK LARSSON

Datorarkitekturer med operativsystem ERIK LARSSON Datorarkitekturer med operativsystem ERIK LARSSON Pipelining Tid SSA P Pipelining FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO Superscalar pipelining FI DI CO FO EI WO FI DI

Läs mer

Arrayer (vektorer) Murach s: kap Elektronikcentrum i Svängsta AB

Arrayer (vektorer) Murach s: kap Elektronikcentrum i Svängsta AB Arrayer (vektorer) Murach s: kap 8 2013-01-15 1 Elektronikcentrum i Svängsta AB Arrayer Arrayer (vektorer) Ofta i ett program har vi flera variabler av samma datatyp som är relaterade till varandra. Exempel

Läs mer

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 8-12, 20 Mars, 2015 Provkod: TEN1 Hjälpmedel:

Läs mer

Kurslitteraturen. C-nivå Villkorssatser [kap 8] if & elif & else and & or Loopar [kap 9] for

Kurslitteraturen. C-nivå Villkorssatser [kap 8] if & elif & else and & or Loopar [kap 9] for Inför provet Provet skrivs för hand och är uppdelad i två delar. Den första delen är på E-nivå och den andra delen är på C- och A-nivå. För att det ska bli enklare för er att träna inför provet så har

Läs mer

Att lösa Sudoku. Metoden Solve (börjar nedtill på sid 3)

Att lösa Sudoku. Metoden Solve (börjar nedtill på sid 3) Att lösa Sudoku Problem av matematisk natur kan ofta snabbt lösas med dator och lite programmering. Därför har sällan matematiska pussel som Sudoku lockat att lösa för hand, men jag har länge tänkt att

Läs mer

TAIU07 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab TAIU07 Matematiska beräkningar med Matlab Datorlektion 3. Avbrott och Funktioner 1 Repetionssatsen while Uppgift 1.1 Skriv ett program som skriver ut det minsta tal av formen 3 n som är större än 5000.

Läs mer

Instruktion för laboration 1

Instruktion för laboration 1 STOCKHOLMS UNIVERSITET MATEMATISKA INSTITUTIONEN Avd. för matematisk statistik MD, ANL, TB (rev. JM, OE) SANNOLIKHETSTEORI I Instruktion för laboration 1 De skriftliga laborationsrapporterna skall vara

Läs mer

TAIU07 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab TAIU07 Matematiska beräkningar med Matlab Datorlektion 2. Villkor och Repetition 1 Logiska uttryck Uppgift 1.1 Låt a=3 och b=6 Vad blir resultatet av testerna ab? Uppgift 1.2 Låt a, b,

Läs mer

ATT RITA GRAFER MED KOMMANDOT "PLOT"

ATT RITA GRAFER MED KOMMANDOT PLOT MATLAB, D-plot ATT RITA GRAFER MED KOMMANDOT "PLOT" Syntax: Vi börjar med det enklaste plot-kommandot i matlab,,där x är en vektor x- värden och y en vektor med LIKA MÅNGA motsvarande y-värden. Anta att

Läs mer

#include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> unsigned char num;

#include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> unsigned char num; #include #include #include unsigned char num; int count = 0; // antal i lokalen char larmtriggered = 0; //om larmet är utlöst char larmactivated = 0; //om larmet

Läs mer

Beräkningsvetenskap föreläsning 2

Beräkningsvetenskap föreläsning 2 Beräkningsvetenskap föreläsning 2 19/01 2010 - Per Wahlund if-satser if x > 0 y = 2 + log(x); else y = -1 If-satsen skall alltid ha ett villkor, samt en då det som skall hända är skrivet. Mellan dessa

Läs mer

Projekt i programmering 1 (ver 2)... 2 Projektidé... 2 Planering... 2 Genomförande... 2 Testning och buggar... 3 Utvärdering... 3 Planering...

Projekt i programmering 1 (ver 2)... 2 Projektidé... 2 Planering... 2 Genomförande... 2 Testning och buggar... 3 Utvärdering... 3 Planering... Projekt i programmering 1 (ver 2)... 2 Projektidé... 2 Planering... 2 Genomförande... 2 Testning och buggar... 3 Utvärdering... 3 Planering... 4 Bussen (projektförslag)... 5 Bakgrund... 5 Klassen Buss

Läs mer

Simulering med ModelSim En kort introduktion

Simulering med ModelSim En kort introduktion Linköpings universitet Institutionen för systemteknik Laborationer i digitalteknik Datorteknik 2018 Simulering med ModelSim En kort introduktion TSEA22 Digitalteknik D TSEA51 Digitalteknik Y TSEA52 Digitalteknik

Läs mer

BE MATLAB. (Matrix Laboratory) matlab.ico. för SIGNALER SYSTEM

BE MATLAB. (Matrix Laboratory) matlab.ico. för SIGNALER SYSTEM BE 00-0-0 MATLAB (Matrix Laboratory) matlab.ico för SIGNALER & SYSTEM . Grunder >> /3 >> MATLAB-prompt ans = 0.6667 >> /3; Ingen utskrift a=[ 9 ]; Vektor, längd 5 >> a Alltså radvektor a = 9 >> at=a';

Läs mer

MMA132: Laboration 1 & 2 Introduktion till MATLAB

MMA132: Laboration 1 & 2 Introduktion till MATLAB MMA132: Laboration 1 & 2 Introduktion till MATLAB De flesta numeriska metoder låter oss få en tillräckligt bra lösning på ett matematiskt problem genom att byta ut komplexa matematiska operationer med

Läs mer

Konvexa höljet Laboration 6 GruDat, DD1344

Konvexa höljet Laboration 6 GruDat, DD1344 Konvexa höljet Laboration 6 GruDat, DD1344 Örjan Ekeberg 10 december 2008 Målsättning Denna laboration ska ge dig övning i att implementera en algoritm utgående från en beskrivning av algoritmen. Du ska

Läs mer

Instruktion för laboration 1

Instruktion för laboration 1 STOCKHOLMS UNIVERSITET MATEMATISKA INSTITUTIONEN Avd. för matematisk statistik ANL/TB SANNOLIKHETSTEORI I, HT07. Instruktion för laboration 1 De skrifliga laborationsrapporterna skall vara skrivna så att

Läs mer

Exempelsamling Assemblerprogrammering

Exempelsamling Assemblerprogrammering Exempelsamling Assemblerprogrammering I uppgifterna nedan utgå från följande programskelett: #include.data var1:.word 12 var2:.word 19 sum: prod:.float 0.set noreorder.text.globl start.ent start

Läs mer

Du kan söka hjälp efter innehåll eller efter namn

Du kan söka hjälp efter innehåll eller efter namn Du kan söka hjälp efter innehåll eller efter namn Skalärer x = 2 y = 1.234 pi, inf Ex: Skriver du >> x+100*pi Så blir svaret ans = 316.1593 (observera decimalpunkt.) Vektorer v = [1 2 3 4] radvektor u

Läs mer

Datorlära 3 Octave Workspace ovh mijlö Skriva text på skärmen Värdesiffror Variabler och typer Strängar Makro Vektorer

Datorlära 3 Octave Workspace ovh mijlö Skriva text på skärmen Värdesiffror Variabler och typer Strängar Makro Vektorer Datorlära 1 Introduktion till datasystemet, epost konto, afs hemkonto Introduktion till datorer och datasalar Open Office Calculator Beräkningar med Open Office Calc Diagram med OO Calc Datorlära 2 Utforma

Läs mer

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 14-18, 14:e Mars, 2017 Provkod: TEN1 Hjälpmedel:

Läs mer

Platser för att skriva och testa kod online. Workshop om programmering i matematikkurser, version 0.7 senast sparat

Platser för att skriva och testa kod online. Workshop om programmering i matematikkurser, version 0.7 senast sparat Cheat sheets Nedan finns referensblad för fyra olika programmeringsspråk, som kan bli aktuella att använda i matematikundervisning. MATLAB är en välkänd programvara för att göra matematiska beräkningar,

Läs mer

TANA17 Matematiska beräkningar med Matlab

TANA17 Matematiska beräkningar med Matlab TANA17 Matematiska beräkningar med Matlab Datorlektion 1. Vektorer och Matriser 1 Inledning I denna övning skall du träna på att använda Matlab för enklare beräkningar och grafik. För att lösa uppgifterna

Läs mer

Kort om programmering i Matlab

Kort om programmering i Matlab CTH/GU 25/26 Matematiska vetenskaper Kort om programmering i Matlab Inledning Redan första tillfället gjorde ni ett litet program. Ni skrev ett script eller en skriptfil som beräknade summan 5 i 2 = 2

Läs mer

KALKYLATOR LABORATION4. Laborationens syfte

KALKYLATOR LABORATION4. Laborationens syfte LABORATION4 KALKYLATOR Laborationens syfte I denna laboration ska en enkel kalkylator konstrueras med hjälp av VHDL och utvecklingsverktyget Vivado från Xilinx. Hårdvaran realiseras på det redan bekanta

Läs mer

TAIU07 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab TAIU07 Matematiska beräkningar med Matlab Datorlektion 1. Vektorer och Matriser 1 Inledning I denna övning skall du träna på att använda Matlab för enklare beräkningar och grafik. Starta Matlab genom att

Läs mer

Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde:

Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde: TANA81: Beräkningar med Matlab - Variabler och Matriser - Logiska uttryck och Villkor - Repetitionssatser - Grafik - Funktioner Variabler I Matlab skapas en variabel genom att man anger dess namn och ger

Läs mer

TAIU07 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab TAIU07 Matematiska beräkningar med Matlab Laboration 3. Linjär algebra Namn: Personnummer: Epost: Namn: Personnummer: Epost: Godkänd den: Sign: Retur: 1 Introduktion 2 En Komet Kometer rör sig enligt ellipsformade

Läs mer

MATLAB the Matrix Laboratory. Introduktion till MATLAB. Martin Nilsson. Enkel användning: Variabler i MATLAB. utvecklat av MathWorks, Inc.

MATLAB the Matrix Laboratory. Introduktion till MATLAB. Martin Nilsson. Enkel användning: Variabler i MATLAB. utvecklat av MathWorks, Inc. Introduktion till MATLAB Martin Nilsson Avdelningen för teknisk databehandling Institutionen för informationsteknologi Uppsala universitet MATLAB the Matrix Laboratory utvecklat av MathWorks, Inc. Matematisk

Läs mer

Support Manual HoistLocatel Electronic Locks

Support Manual HoistLocatel Electronic Locks Support Manual HoistLocatel Electronic Locks 1. S70, Create a Terminating Card for Cards Terminating Card 2. Select the card you want to block, look among Card No. Then click on the single arrow pointing

Läs mer

Mer om geometriska transformationer

Mer om geometriska transformationer CTH/GU LABORATION 4 TMV141-1/13 Matematiska vetenskaper 1 Inledning Mer om geometriska transformationer Vi fortsätter med geometriska transformationer och ser på ortogonal (vinkelrät) projektion samt spegling.

Läs mer

Uppgift 1. Minimeringsproblemet löses med en Monte Carlo algoritm:

Uppgift 1. Minimeringsproblemet löses med en Monte Carlo algoritm: Uppgift 1 Minimeringsproblemet löses med en Monte Carlo algoritm: 1) initiera elementen i vektorn s slummässigt med +/-1 2) räkna ut värdefunktionen (ekvationen given i uppgiften) 3) starta iteration 4)

Läs mer

Exempel att testa. Stora problem och m-filer. Grundläggande programmering 4. Informationsteknologi. Informationsteknologi.

Exempel att testa. Stora problem och m-filer. Grundläggande programmering 4. Informationsteknologi. Informationsteknologi. Grundläggande programmering 4 stefan@it.uu.se - Huvudprogram och underprogram - Egna funktioner - Olika typer av fel - Lite om effektiv programmering Exempel att testa Programmen för några vardagsproblem

Läs mer

Transformationer i R 2 och R 3

Transformationer i R 2 och R 3 Linjär algebra, I / Matematiska vetenskaper Inledning Transformationer i R och R 3 Vi skall se på några geometriska transformationer; rotation, skalning, translation och projektion. Rotation och skalning

Läs mer

Index. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26

Index. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26 TAIU07 Föreläsning 2 Index. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26 Matriselement och Index För att manipulera

Läs mer

Kodexempel från Programmering 2 Tobias Wrigstad, Ph.D.

Kodexempel från Programmering 2 Tobias Wrigstad, Ph.D. Kodexempel från Programmering 2 Tobias Wrigstad, Ph.D. tobias@dsv.su.se Notera att exemplen är i Python 2.5 För att översätta till Python 3.0, gör följande ändringar print(x,y) istället för print x,y input("ett

Läs mer

Enklast att skriva variabelnamn utan ; innehåll och variabelnamn skrivs ut

Enklast att skriva variabelnamn utan ; innehåll och variabelnamn skrivs ut F5: Filhantering in- och utmatning (kap. 2 och 8) 1 Utskrift på skärm, inläsning från tangentbord (kap. 2) Spara och hämta variabler med save och load (kap. 2) Kommandot textread Mer avancerad filhantering:

Läs mer

Föreläsning 9: Turingmaskiner och oavgörbarhet. Turingmaskinen. Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen.

Föreläsning 9: Turingmaskiner och oavgörbarhet. Turingmaskinen. Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen. Föreläsning 9: Turingmaskiner och oavgörbarhet Turingmaskinen Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen. Data är ett oändligt långt band där nollor och ettor står

Läs mer

TANA17 Matematiska beräkningar med Matlab

TANA17 Matematiska beräkningar med Matlab TANA17 Matematiska beräkningar med Matlab Datorlektion 3. Repetitionssatser och Programmering 1 Introduktion Denna övning syftar till att träna programmering med repetitionssatser och villkorssatser. Undvik

Läs mer

Praktisk vägledning för analys av kvalitetsfaktor Kontinuitet

Praktisk vägledning för analys av kvalitetsfaktor Kontinuitet Praktisk vägledning för analys av kvalitetsfaktor Kontinuitet Innehållsförteckning Metodbeskrivning för användning av bedömningsgrunderna för Förekomst av artificiella vandringshinder för vattendragvattenförekomster

Läs mer

Föreläsning REPETITION & EXTENTA

Föreläsning REPETITION & EXTENTA Föreläsning 18 19 REPETITION & EXTENTA Programmeringsteknik på 45 minuter Klasser och objekt Variabler: attribut, lokala variabler, parametrar Datastrukturer Algoritmer Dessa bilder är inte repetitionsbilder

Läs mer

Tentamen i TDP004 Objektorienterad Programmering Lösningsförslag

Tentamen i TDP004 Objektorienterad Programmering Lösningsförslag Tentamen i TDP004 Objektorienterad Programmering Lösningsförslag Datum: 2009-04-15 Tid: 8-12 Plats: SU-salar i B-huset. Jour: Per-Magnus Olsson, tel 285607 Jourhavande kommer att besöka skrivsalarna ungefär

Läs mer

LABORATION 4 OBJEKTORIENTERAD PROGRAMMERING I C++ I

LABORATION 4 OBJEKTORIENTERAD PROGRAMMERING I C++ I LABORATION 4 OBJEKTORIENTERAD PROGRAMMERING I C++ I Vt 2002 Mål: Lära sig: Filhantering Stränghantering Vektorer Funktioner Programstruktur Tid: Läroboken: 6 timmars handledd laborationstid. Beräknad klar

Läs mer

Matematisk Modellering. Redovisning projekt 2. Redovisning projekt 3. Matlabtenta. Matlabtenta. Matlabtenta. Matlabtenta. Föreläsning 4.

Matematisk Modellering. Redovisning projekt 2. Redovisning projekt 3. Matlabtenta. Matlabtenta. Matlabtenta. Matlabtenta. Föreläsning 4. Matematisk Modellering Föreläsning 4 Kalle Åström Kursadministration (redovisning projekt 2, projekt 3) Matlab (funktioner som inargument till funktioner) LaTeX (tabell, figur, listor, m m) Matlab (mer

Läs mer

Lösningsförslag till tentamen i EDA011, lördagen den 16 december 2006

Lösningsförslag till tentamen i EDA011, lördagen den 16 december 2006 Lösningsförslag till tentamen i EDA011, lördagen den 16 december 2006 Detta lösningsförslag är skrivet i stor hast, så det är möjligt att det innehåller en del slarvfel jag ber i så fall om ursäkt för

Läs mer

-Projekt- FMA170- Bildanalys

-Projekt- FMA170- Bildanalys -Projekt- FMA170- Bildanalys Karl Berggren, 820503-2454 d02kb@student.lth.se Andreas Helgegren, 811119-2715 d02ah@student.lth.se Handledare: Håkan Ardö hakan@debian.org 30 november 2007 1 Projektide Undertexter

Läs mer

Föreläsning 2. Täcker material från lektion 1, 2, 3 och 4:

Föreläsning 2. Täcker material från lektion 1, 2, 3 och 4: (22 januari 2016 F2.1 ) Föreläsning 2 Täcker material från lektion 1, 2, 3 och 4: Datatyper Aritmetik Tecken och strängar Klasser, Objekt Metoder Villkor, villkorssatser och iterationer main-metoden Kodstandard

Läs mer

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering Föreläsning 1 Objektorienterad programmering DD1332 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer Kompilering och exekvering Ett program måste översättas till datorns språk

Läs mer

Linjär algebra med tillämpningar, lab 1

Linjär algebra med tillämpningar, lab 1 Linjär algebra med tillämpningar, lab 1 Innehåll Per Jönsson Fakulteten för Teknik och Samhälle, 2013 Uppgifterna i denna laboration täcker kapitel 1-3 i läroboken. Läs igenom motsvarande kapitel. Sitt

Läs mer

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Exempelduggan. Luffarschack. Koda spel

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Exempelduggan. Luffarschack. Koda spel 732G11 Linköpings universitet 2011-02-15 1 2 3 4 Extrapass Extrapass håller på att bokas. Blir 3-4 st. och öppet för alla. Mer info på kursmailen när bokningen är klar. i Java En funktion i Java... public

Läs mer

Tentamen del 2 SF1511, , kl , Numeriska metoder och grundläggande programmering

Tentamen del 2 SF1511, , kl , Numeriska metoder och grundläggande programmering KTH Matematik Tentamen del 2 SF1511, 2018-03-16, kl 8.00-11.00, Numeriska metoder och grundläggande programmering Del 2, Max 50p + bonuspoäng (max 4p). Rättas ast om del 1 är godkänd. Betygsgränser inkl

Läs mer

Matematisk Modellering

Matematisk Modellering Matematisk Modellering Föreläsning 1 Magnus Oskarsson Matematikcentrum Lunds Universitet Matematisk Modellering p.1/34 Denna föreläsning (läsvecka 1) Vad handlar kursen om, mål, kurskrav, ide. Matematisk

Läs mer

Datorlära 6. Arbeta med strängar Inmatning med tangentbordet Bygga ett program med inmatning, funktioner, osv

Datorlära 6. Arbeta med strängar Inmatning med tangentbordet Bygga ett program med inmatning, funktioner, osv Datorlära 6 Arbeta med strängar Inmatning med tangentbordet Bygga ett program med inmatning, funktioner, osv 1 Arbeta med Strängar Strängar skapas med text inom citattecken, enkla eller dubbla.!>> str=

Läs mer

F4. programmeringsteknik och Matlab

F4. programmeringsteknik och Matlab Programmeringsspråk Föreläsning 4 programmeringsteknik och Matlab 2D1312/ 2D1305 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer 1 Ett program är en eller flera instruktioner

Läs mer

Klassdeklaration. Metoddeklaration. Parameteröverföring

Klassdeklaration. Metoddeklaration. Parameteröverföring Syntax: Class Declaration Modifier Class Body Basic Class Member Klassdeklaration class Class Member Field Declaration Constructor Declaration Method Declaration Identifier Class Associations Motsvarar

Läs mer

Programmering I Tobias Wrigstad fredag, 2009 augusti 28

Programmering I Tobias Wrigstad fredag, 2009 augusti 28 Programmering I Tobias Wrigstad tobias@dsv.su.se Vad är programmering? Lågnivåspråk och högnivåspråk Kompilering och interpretering Variabler Notation för flödesschema (flow chart) Kontrollstrukturer (conditionals,

Läs mer