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
Pin
Add comment
Select
Duplicate
Copy link
Embed
Delete
brightness
Unpin
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
multiplication
Unpin
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
contrast
Unpin
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
gamma
Unpin
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
mask
Unpin
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
xor
Unpin
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
url
Unpin
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
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
JavaScript
Markdown
HTML
JavaScript
Markdown
HTML
JavaScript
Markdown
HTML
JavaScript
Markdown
HTML
JavaScript
Markdown
HTML
JavaScript
Markdown
HTML
JavaScript
Markdown
HTML