Platform
Resources
Pricing
Sign in
Get started
David Maynard
Retired Computer Scientist: SRI-ARC (Engelbart), Xerox PARC, Xerox SDS, Electronic Arts, SGI, Google, Box
Workspace
Fork
Public
By
David Maynard
Edited
Sep 4, 2023
Fork of
Image processing: point operations
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
function
brightness
(
data
,
delta
)
{
for
(
let
i
=
0
;
i
<
data
.
length
;
i
+=
4
)
{
data
[
i
+
0
]
=
data
[
i
+
0
]
+
delta
;
data
[
i
+
1
]
=
data
[
i
+
1
]
+
delta
;
data
[
i
+
2
]
=
data
[
i
+
2
]
+
delta
;
}
}
Insert cell
function
multiplication
(
data
,
factor
)
{
for
(
let
i
=
0
;
i
<
data
.
length
;
i
+=
4
)
{
data
[
i
+
0
]
*=
factor
;
data
[
i
+
1
]
*=
factor
;
data
[
i
+
2
]
*=
factor
;
}
}
Insert cell
function
contrast
(
data
,
factor
)
{
for
(
let
i
=
0
;
i
<
data
.
length
;
i
+=
4
)
{
data
[
i
+
0
]
=
(
data
[
i
+
0
]
-
127
)
*
factor
+
127
;
data
[
i
+
1
]
=
(
data
[
i
+
1
]
-
127
)
*
factor
+
127
;
data
[
i
+
2
]
=
(
data
[
i
+
2
]
-
127
)
*
factor
+
127
;
}
}
Insert cell
function
gamma
(
data
,
power
)
{
for
(
let
i
=
0
;
i
<
data
.
length
;
i
+=
4
)
{
data
[
i
+
0
]
=
255
*
Math
.
pow
(
data
[
i
+
0
]
/
255
,
power
)
;
data
[
i
+
1
]
=
255
*
Math
.
pow
(
data
[
i
+
1
]
/
255
,
power
)
;
data
[
i
+
2
]
=
255
*
Math
.
pow
(
data
[
i
+
2
]
/
255
,
power
)
;
}
}
Insert cell
function
mask
(
data
,
nbits
)
{
for
(
let
i
=
0
;
i
<
data
.
length
;
i
+=
4
)
{
data
[
i
+
0
]
=
(
data
[
i
+
0
]
>>
nbits
)
<<
nbits
;
data
[
i
+
1
]
=
(
data
[
i
+
1
]
>>
nbits
)
<<
nbits
;
data
[
i
+
2
]
=
(
data
[
i
+
2
]
>>
nbits
)
<<
nbits
;
}
}
Insert cell
function
xor
(
data
,
nbits
)
{
const
datamask
=
(
0xff
)
>>
(
8
-
nbits
)
;
for
(
let
i
=
0
;
i
<
data
.
length
;
i
+=
4
)
{
data
[
i
+
0
]
=
(
data
[
i
+
0
]
^
datamask
)
;
data
[
i
+
1
]
=
(
data
[
i
+
1
]
^
datamask
)
;
data
[
i
+
2
]
=
(
data
[
i
+
2
]
^
datamask
)
;
}
}
Insert cell
// url = "https://upload.wikimedia.org/wikipedia/commons/thumb/c/cf/Cappuchin_Bridge_(30706076020).jpg/1079px-Cappuchin_Bridge_(30706076020).jpg"
Insert cell
url
=
"https://pbs.twimg.com/media/F0milJeXsAANd6v?format=jpg&name=small"
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Purpose-built for displays of data
Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Try it for free
Learn more
Compare fork
Fork
View
Export
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
operation
Edit
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
amount
Edit
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
canvas
Edit
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
brightness
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
multiplication
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
contrast
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
gamma
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
mask
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
xor
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
url
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
image
Edit
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
d3
Edit
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML