Visualization - SUMO Documentation
.pdf
keyboard_arrow_up
School
Kennesaw State University *
*We aren’t endorsed by this school
Course
6201
Subject
Computer Science
Date
Apr 3, 2024
Type
Pages
20
Uploaded by Ayomyafo
2/14/24, 12:38 AM
Visualization - SUMO Documentation
https://sumo.dlr.de/docs/Tools/Visualization.html##multiple_timelines_from_summary-output
1/20
⌄
visit eclipse.dev/sumo
/
Tools / Visualization
Visualization
sumo offers a wide range of outputs
, but one may find it hard to parse and visualize them. Below, you may find some tools that allow to visualize a
simulation run's results for being included in a scientific paper. Additional tools read plain .csv-files and were added to the suite as they offer a similar
interface.
All these tools are just wrappers around the wonderful matplotlib
library. If you are familiar with Python, you must have a look.
The tools share a set of common options to fine-tune the appearance of the generated figures. These options' names where chosen similar to the
matplotlib
calls.
The tools are implemented in Python and need matplotlib
to be installed. The tools can be found in <SUMO_HOME>
/tools/visualization.
Current Tools
Below, you will find the descriptions of tools that should work with the current outputs sumo
/
sumo-gui generate. To run them, you'll need:
to install Python
to install matplotlib
to set <SUMO_HOME>
All scripts are executed from the command line and you have to give the command line options as listed in the descriptions below. Please note that
#common options may be applied to all the scripts listed in the following sub-sections albeit few options may not work for certain scripts.
plotXMLAttributes.py
Create multiple 2D-plots of 2 arbitrary attributes from on or more xml files aggregated by an third attribute (i.e. detector-id).
Example uses:
The above example draws the paths of all vehicles through the network based on fcd-output. (It is a special case that can also be accomplished with
plot_trajectories.py
)
When option --show
is set, a interactive plot is opened that allows identifying data points vehicles by clicking on the plot (dataID is printed on the
console).
Option --filter-ids ID1,ID2,...
allows restricting the plot to the given data element ids. You can use a wildcard to filter out ids that follow some pattern;
for instance --filter-ids bus_
* will filter out all ids that begin with the four characters "bus_".
Further examples are shown below. Some of them are generated with the scenario acosta, one of the published sumo scenarios
(
https://github.com/DLR-TS/sumo-scenarios/tree/main/bologna/acosta
).
Plot Styles
The script supports the following distinct styles of plots:
lineplot
: default
scatterplot:
with option --scatterplot
box plot:
by setting one of --xattr @BOX
or --yattr @BOX
bar plot:
by setting either --barplot
or --hbarplot
Special Attributes
The following attribute values have a special meaning. Instead of using an attribute from the input file they derive a value based on the other
attribute.
(i.e. the special attribute is set for --xattr
then the other
value is given by the --yattr
).
python tools/visualization/plotXMLAttributes.py -x x -y y -s fcd.xml
python tools/visualization/plotXMLAttributes.py -x x -y y -s fcd.xml fcd2.xml
Copy
↑
2/14/24, 12:38 AM
Visualization - SUMO Documentation
https://sumo.dlr.de/docs/Tools/Visualization.html##multiple_timelines_from_summary-output
2/20
@INDEX
: the index of the other
value within the input file is used.
@RANK
: the index of the other
value within the sorted (descending) list of values is used
@COUNT
: the number of occurences of the other
value is used. Together with option --barplot
or -hbarplot
this gives a histogram. Binning size
can be set via options --xbin
and --ybin
.
@BOX
: one or more box plots
of the other
value are drawn. The --idattr
is used for grouping and there will be one box plot per id
@NONE
: can be used with option --idattr
to explicitly avoid grouping
Multi-line plots
By default, every distinct ID (as defined by --idattr
) will generated a new line for all the data points associated with that ID.
If multiple files are given, the abbreviated filename will become part of the data point ID and thereby create distinct lines or scatterpoints for
data from each file
If a comma-separated list of values is passed to option --idattr
, then values for each of the attributes will be combined with |
to form the data
point ID
If a comma-separated list of values given to --xattr
or --yattr
(or both), and the data does not supply an ID (or option --idattr @NONE
is set)
then each combination of individual xattr and yattr will create a new line
If a combined plot is needed that cannot be created with any of the above methods (i.e. because the data comes from different kinds of data files
such as summary-output and edgeData) then an alternative is to use option --csv-output
and plotting the resulting data with another tool (i.e. gnu
-
plot
).
In csv-output each group of data points belonging to the same ID will form it's own block separated by two blank lines from the next block. To repli-
cate a plot where each ID/block has its distinct color, the following approach can be used in gnuplot:
Inductionloop Speed over Time
Input is inductionloop-output with 30s aggregation from 2 detectors (
<e1Detector id="e1Detector_-109_0_0" lane="-109_0" pos="54.06" period="30.00" file="data.xml"/>
Call: python tools/visualization/plotXMLAttributes.py data.xml -x begin -y speed -s
Lane Area Detectors over nVehEntered
Input is laneareadetectors-output with 30s aggregation from 6 detectors
Call: python tools/visualization/plotXMLAttributes.py -x begin -y maxOccupancy -o plot-maxOccupancy.png --legend e2_output.xml --filter-
ids e2_0,e2_5,e2_10,e2_15,e2_20,e2_25
stats 'data.csv'
plot for
[idx=
0
:STATS_blocks] 'data.csv' i idx with
lines
Copy
2/14/24, 12:38 AM
Visualization - SUMO Documentation
https://sumo.dlr.de/docs/Tools/Visualization.html##multiple_timelines_from_summary-output
3/20
Multi-Entry-Exit Detectors Mean Speed over Time
Input is multi-entry-exit-detector-output with 30s aggregation and a cutoff at begin and end
Call: python tools/visualization/plotXMLAttributes.py -x begin -y meanSpeed detector.xml --legend --xlim 100,5000
boarding passengers vs delay for each station
Input is stop-output
Call: python tools/visualization/plotXMLAttributes.py stopinfos.xml -i busStop -x loadedPersons -y delay -s --scatterplot --legend
Fundamental Diagram from edgeData
Input is edgeData-output with 1-minute aggregation (
<edgeData id="example" file="data.xml" period="60"/>
)
Call: python tools/visualization/plotXMLAttributes.py data.xml -i id -x density -y left -s --scatterplot --yfactor 60 --ylabel vehs/hour
Each color gives encodes a different edge-id. Option --factor 60
is used to convert from vehicles per 60s (edgeData-period 60) to vehicles per hour.
Multiple timelines from summary-output
Input is summary
. This plot demonstrates using a list of attributes to generate multiple data points from the same xml input element. In the absence
of an id-attribute, the respective attribute name is used to "identify" and group the data points.
Call: python tools/visualization/plotXMLAttributes.py summary.xml -x time -y running,halting -o plot-running.png --legend
2/14/24, 12:38 AM
Visualization - SUMO Documentation
https://sumo.dlr.de/docs/Tools/Visualization.html##multiple_timelines_from_summary-output
4/20
Caution
In version 1.15.0 and lower, the id-attribute must be provided so you need to provide a dummy value (i.e. with -i collisions
) and only a single
value is permitted for the x and y attribute.
Depart delay over time from TripInfo data
The plot is created out of TripInfo output data:
Call python tools/visualization/plotXMLAttributes.py -i id -x depart -y departDelay --scatterplot --xlabel "depart time [s]" --ylabel "de-
part delay [s]" --ylim 0,40 --xticks 0,1200,200,10 --yticks 0,40,5,10 --xgrid --ygrid --title "depart delay over depart time" --titlesize 16 tripInfo.xml
Time to collision over simulation time
The plot is created from the output file of a SUMO simulation for which a global SSM device has been added. For this example, starting from the
Bologna "acosta" scenario
, the SUMO configuration file had been modified in order to compute time to collision:
After the simulation has finished to run, a XML file ssm.xml
has been produced. Using this file we can extract and plot the TTC values by using the
command line:
<configuration xmlns:xsi
=
"https://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation
=
"https://sumo.dlr.de/xsd/sumoConfiguration.xsd"
>
<device.ssm.deterministic value
=
"true"
/>
<device.ssm.file value
=
"ssm.xml"
/>
<device.ssm.measures value
=
"TTC"
/>
</configuration>
Copy
python
.exe .\
plotXMLAttributes
.py ssm
.xml -x
time
--xlabel
"
Time
[s]" -y
value
--ylabel
"
TTC
[s]" -i
ego
--filter-ids
bus_
* --title
"
time
to
collision
Copy
2/14/24, 12:38 AM
Visualization - SUMO Documentation
https://sumo.dlr.de/docs/Tools/Visualization.html##multiple_timelines_from_summary-output
5/20
Queuing times over time
Input is queue-output
.
Call to generate the plot:
where -x is the attribute for the x axis; -y is the attribute for the y axis; -s is to show the plot; -o is the output file name; -i is the filtered attribute name
(lane id in this case); --filter-ids are the value(s) of the filtered attribute name (id = 121_0 in this case).
Departure times versus arrival times
Input is vehroutes-output
.
Call to generate the plot:
where -x is the attribute for the x axis; -y is the attribute for the y axis; -s is to show the plot; -o is the output file name; --scatterplot is to make a scat-
ter plot instead of a line plot.
python tools/visualization/plotXMLAttributes.py -x timestep -y queueing_time -s -o queue
.png queue
.xml -i id --filter-ids 121
_0
Copy
python tools/visualization/plotXMLAttributes.py -x depart -y arrival -s -o vehroute.png vehroute.xml --scatterplot
Copy
2/14/24, 12:38 AM
Visualization - SUMO Documentation
https://sumo.dlr.de/docs/Tools/Visualization.html##multiple_timelines_from_summary-output
6/20
Leader gaps versus speeds
Input is langechange-output
.
Call to generate the plot:
where -x is the attribute for the x axis; -y is the attribute for the y axis; -s is to show the plot; -o is the output file name; -i is the filtered attribute name
(reason for lane changing in this case); --filter-ids are the values of the filtered attribute name (reason = speedGain in this case).
All trajectories over time 1
Input is fcd_output
.
Call to generate the plot:
where -x is the attribute for the x axis; -y is the attribute for the y axis; -s is to show the plot; -o is the output file name; --scatterplot is to make a scat-
ter plot instead of a line plot..
Selected trajectories over time 1
Input is fcd_output
.
Call to generate the plot:
where -x is the attribute for the x axis; -y is the attribute for the y axis; -s is to show the plot; -o is the output file name; -i is the filtered attribute name
(vehicle id in this case); --filter-ids are the values of the filtered attribute name (vehicle id = Audinot_7_0 in this case); --scatterplot is to make a scatter
plot instead of a line plot; --legend is to show the legend.
python tools/visualization/plotXMLAttributes.py -x speed -y leaderGap -s -o lc.png langchange.xml -i reason --filter-ids speedGain
Copy
python tools/visualization/plotXMLAttributes.py -x x -y y -s -o allXY_output.png fcd.xml --scatterplot
Copy
python tools/visualization/plotXMLAttributes.py -x x -y y -s -o vehLocations_output.png fcd.xml -i id --filter-ids Audinot_7_0 --scatterplot --legend
Copy
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
- Access to all documents
- Unlimited textbook solutions
- 24/7 expert homework help
Related Questions
Data compression in general, and Huffman encoding as a method, can be used in multiple areas: secure communication, image compression, music streaming, data storage optimization, and other areas. Do the following:
Choose one component of your methodology and implement it using the Python language.
Implement a visualization technique in your code, to demonstrate how that component works.
arrow_forward
Skeuomorphisms are becoming less popular because:
They are not novel or creative
Users do not want to pay for them
Specific images may be outdated and no longer accurately
represent their intended functions
They take up too much space on the graphic interface
All of these are reasons skeuomorphisms are becoming less
popular
arrow_forward
you need to write a code/program to do image filtration or convolution of 2 noise filters. Please submit a report on the assignment.1.0 Introduction -Please state a simple objective - what you want to study based on the choice of the filter2.0 Method3.0 Discussion
arrow_forward
Create a gui based vision system using python and QT (load your report and code)
arrow_forward
Please use the Python languageUse filters for any image using kernel (filter) matrices. It should be done using loops (you can only use the image processing libraries to open or read the image). Apply these filters to an image you prefer with Python. Provide the outputs.
arrow_forward
Using Python
Follow these steps to create your Warhol Grid:
Find or create an image (for this activity, a smaller starting image will produce higher quality results in a shorter amount of time).
Using the Python documentation as a guide, create a program that loads the image, filters three copies of it, and saves the result. Note: You will need to create the three filters using the filter() method.
Include multiple filters on at least two of your variants.
One of your variants must apply a single filter multiple times with the use of a loop. For example, the top right image above uses a loop to blur the image 2 times (what if we did it 100 times?).
One of your images must apply at least two different filters to the same image. In the example image, the bottom right image includes a a filter to smooth the image and then edge enhance them.
Create the Warhol Grid using Python with the three images you have created. You may modify and use the following starter code: Filters. to…
arrow_forward
//////XXX. Plot.
arrow_forward
Animation basics
Explain in your own words how temporal aliasing effects occur.
arrow_forward
Explaination
arrow_forward
Design a convolution mask that does any one of the following and implement the convolution process (Pls do not use any image processing library functions)
1. smoothing
2. sharpening
3. detect edges
Please show the out put and the code clearly, thanks in advance.
The provided solution is not clear for me. What application have you used? will you please provide me with phyton thanks
Expert Answer
Step 1
The Answer is in given below steps
Step 2
Step 3
Step 4
clc;clear;A = imread('Lenna.png');I = rgb2gray(A);mask1 = (1/16)*[1 2 1;2 4 2;1 2 1]; %Gaussian blurmask2 = [0 -1 -0;-1 5 -1; 0 -1 0]; %Sharpenmask3 = [-1 -1 -1;-1 8 -1;-1 -1 -1]; %EdgeI1 = conv2(I,mask1);I2 = conv2(I,mask2);I3 = conv2(I,mask3);subplot(2,2,1);imshow(I);title('original')subplot(2,2,2);imshow(uint8(I1));title('smooth');subplot(2,2,3);imshow(uint8(I2));title('sharp');subplot(2,2,4);imshow(uint8(I3));title('edge');
Step 5
arrow_forward
* We have to ways to drawing the Ellipse
Ellipse end
Ellipse axis-end
Ellipse-radius
Ellipse-center
When we print the figure and we want to make our figure in the center of
* in the PDF for example
plot offset- center the plot O
plot offset - name
plot area
plot scal O
* How we can make our figure in the center of the workspace
PAN O
Full navigation wheel O
Zoom Extents O
Orbit O
arrow_forward
Implement a Visual Studio C++ gui with OpenGl which:
Step1:Opens "Open file dialog in browser"
Step2:Select 3D model file
Step3:Loads 3D model
Step4:Draws 3D model on screen
arrow_forward
Bresenham's circle drawing technique has a decision parameter called p, the value of which must be determined. Step-by-step instructions for using Bresenham's method to create a circle are provided.
arrow_forward
question in the image
arrow_forward
The Koch snowflake is a fractal shape. At level 0, the shape is an equilateral triangle. At level 1,
each line segment is split into four equal parts, producing an equilateral bump in the middle of
each segment. Figure 7-15 shows these shapes at levels 0, 1, and 2.
. Python Turtie Graphics
O0. Python Turtle Graphics
O0. Python Turtie Graphics
Figure 7-15 First three levels of a Koch snowflake
Figure 7-15 First three levels of a Koch snowflake
At the top level, the script uses a function drawFractalLine to draw three fractal lines. Each
line is specified by a given distance, direction (angle), and level:
• The initial angles are 0, -12O, and 120 degrees.
• The initial distance can be any size, such as 200 pixels.
• If the level is O, then the turtle moves the given distance in the given direction. Otherwise, the
function draws four fractal lines with % of the given distance, angles that produce the given
effect, and the given level minus 1.
The function drawFractalLine is recursive.…
arrow_forward
For this milestone, you will be creating a much more complex drawing for each cell and individually filling them in. The drawing will have 4 different sections that can be individually filled in. Then create a grid using the drawing, similar to milestone 3.
Once again, we will be adding inputs for 4 new colors.
Sample output:
Grid size (n): (input) Pen color: (input) Color 1: (input) Color 2: (input) Color 3: (input) Color 4: (input)
You can still:
decide whether the cells and its drawings are filled or unfilled and decide where Colors 1-4 go in your drawing
choose the fill and pen colors based on user input
Once again, you'll be trying to match the drawing provided:
arrow_forward
For this milestone, you will be creating a much more complex drawing for each cell and individually filling them in. The drawing will have 4 different sections that can be individually filled in. Then create a grid using the drawing, similar to milestone 3.
Once again, we will be adding inputs for 4 new colors.
Sample output:
Grid size (n): (input) Pen color: (input) Color 1: (input) Color 2: (input) Color 3: (input) Color 4: (input)
You can still:
decide whether the cells and its drawings are filled or unfilled and decide where Colors 1-4 go in your drawing
choose the fill and pen colors based on user input
Once again, you'll be trying to match the drawing provided:
The example has all the location of each point as coordinates relative to the cell's top left corner. Use it as a reference on how to draw each cell.
Here is the drawing colored, each section should be a different color (if filled and if user adds the same color multiple times, you should use whatever they entered):
arrow_forward
Using Python
The Koch snowflake is a fractal shape. At level 0, the shape is an equilateral triangle. At level 1, each line segment is split into four equal parts, producing an equilateral bump in the middle of each segment. Figure 7-15 shows these shapes at levels 0, 1, and 2.
Figure 7-15 First three levels of a Koch snowflake
At the top level, the script uses a function drawFractalLine to draw three fractal lines. Each line is specified by a given distance, direction (angle), and level:
The initial angles are 0, -120, and 120 degrees.
The initial distance can be any size, such as 200 pixels.
If the level is 0, then the turtle moves the given distance in the given direction. Otherwise, the function draws four fractal lines with ⅓ of the given distance, angles that produce the given effect, and the given level minus 1.
The function drawFractalLine is recursive.
Write a script that draws the Koch snowflake.
Define a function main that will draw a Koch snowflake with the following…
arrow_forward
This is a ------ mega pixels picture.
arrow_forward
The parameter has to be adjusted. The size of the image cannot be supported. A minimum of 40 pixels and a maximum of 2600 pixels must be used for each picture dimension.
arrow_forward
When developing a Renderer, can you draw me a full diagram of the workflow of what it means to have a RendererCommandQueue, RendererPass, and how would this be done professionally if I wanted to make a good renderer? While considering that I may want to consider supporting multiple platforms such as Vulkan and DirectX. I know this is difficult but I would like a visual diagram of how this would be professionally designed, so I can get a good sense of how I can approach in improving a renderer that I am building concurrently. If possible also including how does synchronization works in terms of implementing a renderer and what things should be on seperate threads, and when should you put them on seperate threads?
arrow_forward
Write a Python code that correctly plots a cosine curve and a sine one in two subplots of a
figure:
-1
5
-1
Hints: As shown in the figure, you do not need to add the image title and axis labels.
Copy your code here:
Enter your answer here
LAVL
2 REMOVE RIDGES
BLACK
TECONDERUGA
arrow_forward
Lesson: Application of Computer Graphics
What is the difference of soft shadows and hard shadows? How do you implement soft shadows in ray tracing? Simply explain.
arrow_forward
Is it more tougher to design graphical user interfaces while adopting pixel-based coordinates?
arrow_forward
Select the R packages that natively
support interactive graphics.
O plotly
lattice
sf
O ggiraph
O ggplot2
arrow_forward
Build on our PBM image creator from (code shown below) to create a fully functional image editor (in C++), using 2D arrays to store our changes. To make it more interesting by switching to the Portable Gray Map standard. 8 bit PGM files have color values ranging from 0 (black) to 255 (white), with the values in-between being shades of gray. The header is very similar to PBM, and looks like this:
P2
WIDTH HEIGHT
255 IMAGE_DATA
The P2 tells image readers that it is a PGM file, and the 255 indicates the largest possible color value is 255.
You will first prompt the user to enter a width, height, and initial color value to fill the image. You should then create a 2D array with those dimensions and initialize each cell with that color value.
You will then use a loop to create a menu that repeatedly prompts the user to make one of the following choices:
Fill in a pixel with a new color
◦ Prompt the user to enter a row and column value and a new color value. If the array has that row and…
arrow_forward
Using in any (GUI) graphical programming language
Objectives
Practice using objects.
protect the user with interface design.
how to use date controls
Decision statements and practice basic date math.
Create one object – Person, and code it. Create the menus shown in the demo program. The interface is a bit different from what you have done to this point. Play with the program to see how it works. The hungarian notation for a date control is dte.
Commands
The key commands of this program are:
Add a Person
Remove a Person
Display next person
Display previous person
Display first person
Display last person.
Create the programming to make these components work. Refer to the power point notes for examples of how the code needs to be set up.
Protecting Data against Accidental change
Change the display to allow the user to enter data into text boxes, but protect the data from being accidentally changed by setting the ReadOnly property of the text boxes appropriately. This should be a…
arrow_forward
You need to create a Tinkercad project that
has to have only one 7 segment display.
The 7-segment has to display your ID
number. Every 2 seconds one digit has to
be displayed at time and stays on for 2
seconds before displaying the next digit.
The digits of your ID number are to be
displayed in a consecutive order.
arrow_forward
- manufacturer: String
-width: double
-height: double
-horizontalPixels: double
-verticalPixels: double
DisplayPanel
+ DisplayPanel()
+ DisplayPanel(man: String, w: double, h: double, hp: double, vp: double)
+ setManufacturer(man: String): void
+ setWidth(w: double): void
+ setHeight(h: double) : void
+ setHorizontalPixels(hp: double): void
+ setVerticalPixels(vp: double): void
+ getManufacturer(): String
+getWidth(): double
+ getHeight(): double
+getHorizontalPixels(): double
+getVerticalPixels(): double
+diagonalSize(): double
+ pixelsPerinch(): double
+ totalPixels(): double
+toString(): String
The unit for height and width is inches.
The unit for horizontalPixels and
verticalPixels is pixels
diagonalSize()- The hypotenuse of the triangle
defined by the width and height. The unit of the
returned value is inches.
pixels Perinch() - Please see the linked resource
in the description for how to calculate this.
totalPixels()-The product of horizontalPixels and
vertical pixels. The unit…
arrow_forward
SEE MORE QUESTIONS
Recommended textbooks for you
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
Related Questions
- Data compression in general, and Huffman encoding as a method, can be used in multiple areas: secure communication, image compression, music streaming, data storage optimization, and other areas. Do the following: Choose one component of your methodology and implement it using the Python language. Implement a visualization technique in your code, to demonstrate how that component works.arrow_forwardSkeuomorphisms are becoming less popular because: They are not novel or creative Users do not want to pay for them Specific images may be outdated and no longer accurately represent their intended functions They take up too much space on the graphic interface All of these are reasons skeuomorphisms are becoming less populararrow_forwardyou need to write a code/program to do image filtration or convolution of 2 noise filters. Please submit a report on the assignment.1.0 Introduction -Please state a simple objective - what you want to study based on the choice of the filter2.0 Method3.0 Discussionarrow_forward
- Create a gui based vision system using python and QT (load your report and code)arrow_forwardPlease use the Python languageUse filters for any image using kernel (filter) matrices. It should be done using loops (you can only use the image processing libraries to open or read the image). Apply these filters to an image you prefer with Python. Provide the outputs.arrow_forwardUsing Python Follow these steps to create your Warhol Grid: Find or create an image (for this activity, a smaller starting image will produce higher quality results in a shorter amount of time). Using the Python documentation as a guide, create a program that loads the image, filters three copies of it, and saves the result. Note: You will need to create the three filters using the filter() method. Include multiple filters on at least two of your variants. One of your variants must apply a single filter multiple times with the use of a loop. For example, the top right image above uses a loop to blur the image 2 times (what if we did it 100 times?). One of your images must apply at least two different filters to the same image. In the example image, the bottom right image includes a a filter to smooth the image and then edge enhance them. Create the Warhol Grid using Python with the three images you have created. You may modify and use the following starter code: Filters. to…arrow_forward
- Design a convolution mask that does any one of the following and implement the convolution process (Pls do not use any image processing library functions) 1. smoothing 2. sharpening 3. detect edges Please show the out put and the code clearly, thanks in advance. The provided solution is not clear for me. What application have you used? will you please provide me with phyton thanks Expert Answer Step 1 The Answer is in given below steps Step 2 Step 3 Step 4 clc;clear;A = imread('Lenna.png');I = rgb2gray(A);mask1 = (1/16)*[1 2 1;2 4 2;1 2 1]; %Gaussian blurmask2 = [0 -1 -0;-1 5 -1; 0 -1 0]; %Sharpenmask3 = [-1 -1 -1;-1 8 -1;-1 -1 -1]; %EdgeI1 = conv2(I,mask1);I2 = conv2(I,mask2);I3 = conv2(I,mask3);subplot(2,2,1);imshow(I);title('original')subplot(2,2,2);imshow(uint8(I1));title('smooth');subplot(2,2,3);imshow(uint8(I2));title('sharp');subplot(2,2,4);imshow(uint8(I3));title('edge'); Step 5arrow_forward* We have to ways to drawing the Ellipse Ellipse end Ellipse axis-end Ellipse-radius Ellipse-center When we print the figure and we want to make our figure in the center of * in the PDF for example plot offset- center the plot O plot offset - name plot area plot scal O * How we can make our figure in the center of the workspace PAN O Full navigation wheel O Zoom Extents O Orbit Oarrow_forwardImplement a Visual Studio C++ gui with OpenGl which: Step1:Opens "Open file dialog in browser" Step2:Select 3D model file Step3:Loads 3D model Step4:Draws 3D model on screenarrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- Programming Logic & Design ComprehensiveComputer ScienceISBN:9781337669405Author:FARRELLPublisher:Cengage
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage