(* Content-type: application/vnd.wolfram.mathematica *)

(*** Wolfram Notebook File ***)
(* http://www.wolfram.com/nb *)

(* CreatedBy='Wolfram 15.0' *)

(*CacheID: 234*)
(* Internal cache information:
NotebookFileLineBreakTest
NotebookFileLineBreakTest
NotebookDataPosition[       154,          7]
NotebookDataLength[     50155,       1339]
NotebookOptionsPosition[     41377,       1176]
NotebookOutlinePosition[     43646,       1229]
CellTagsIndexPosition[     43568,       1224]
WindowTitle->ImageBitPlane
WindowFrame->Normal*)

(* Beginning of Notebook Content *)
Notebook[{
Cell[BoxData[GridBox[{
   {GridBox[{
      {
       ItemBox[Cell[BoxData[
         RowBox[{
          TemplateBox[{12},
           "Spacer1"], Cell[
          "WOLFRAM INSTITUTE/ PUZZLES SYMBOL", "PacletNameCell",
           TextAlignment->Center,ExpressionUUID->
           "f244a285-e779-4168-a32e-426a6d3002e4"], 
          TemplateBox[{8},
           "Spacer1"]}]],
         TextAlignment->Center,ExpressionUUID->
         "59b22e17-b55a-49df-a802-29f9776ee57b"],
        Background->LightDarkSwitched[
          RGBColor[0.490196, 0.576471, 0.690196]],
        ItemSize->Full], ""}
     },
     GridBoxAlignment->{"Rows" -> {{Center}}},
     GridBoxItemSize->{"Columns" -> {Full, 
         Scaled[0.02]}, "Rows" -> {{2.5}}}], Cell[TextData[{
     Cell[BoxData[
      TagBox[
       ActionMenuBox[
        FrameBox[Cell[TextData[{
          "See Also",
          " ",
          Cell[BoxData[
           GraphicsBox[
            {GrayLevel[0.66667], Thickness[0.13], 
             LineBox[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]},
            AspectRatio->1,
            ImageSize->20,
            PlotRange->{{-3, 4}, {-1, 1}}]],ExpressionUUID->
           "78d5fec6-8007-4a88-a4c9-cfbc3441655f"]
         }],ExpressionUUID->"efbeb615-0771-44c8-a0d9-9acd6217da70"],
         StripOnInput->False],{
        StyleBox[
          "\"ColorSeparate\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup["paclet:ref/ColorSeparate"], 
         StyleBox["\"BitGet\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup["paclet:ref/BitGet"], Delimiter, 
         StyleBox[
          "\"Functions\"", "SeeAlsoSection", FontSize -> 14, FontSlant -> 
           "Italic", StripOnInput -> False] :> 
         NotebookFind[EvaluationNotebook[], "SeeAlsoSection", All, CellStyle],
          StyleBox[
          StyleBox[
           "\"ImageBitStream\"", "SeeAlsoRelated", StripOnInput -> False], 
           "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/ImageBitStream"], 
         StyleBox[
          StyleBox[
           "\"ImageBitStreamBytes\"", "SeeAlsoRelated", StripOnInput -> 
            False], "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/ImageBitStreamBytes"], 
         StyleBox[
          StyleBox[
           "\"ImageBitPlaneScan\"", "SeeAlsoRelated", StripOnInput -> False], 
           "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/ImageBitPlaneScan"], 
         StyleBox[
          StyleBox[
           "\"SteganographySurvey\"", "SeeAlsoRelated", StripOnInput -> 
            False], "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/SteganographySurvey"]},
        Appearance->None,
        MenuAppearance->Automatic,
        MenuStyle->"SeeAlso"],
       MouseAppearanceTag["LinkHand"]]],
      LineSpacing->{1.4, 0},ExpressionUUID->
      "24057a77-9e46-431f-b054-69b61f22d708"],
     "\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\
\[ThickSpace]",
     Cell[BoxData[
      TagBox[
       ActionMenuBox[
        FrameBox[Cell[TextData[{
          "Related Guides",
          " ",
          Cell[BoxData[
           GraphicsBox[
            {GrayLevel[0.66667], Thickness[0.13], 
             LineBox[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]},
            AspectRatio->1,
            ImageSize->20,
            PlotRange->{{-3, 4}, {-1, 1}}]],ExpressionUUID->
           "83da6520-cb74-479c-9656-37c198b38d40"]
         }],ExpressionUUID->"caba2737-1640-4982-b98f-ed2c34fa24f2"],
         StripOnInput->False],{
        "\"Steganography\"" :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/guide/Steganography"]},
        Appearance->None,
        MenuAppearance->Automatic,
        MenuStyle->"MoreAbout"],
       MouseAppearanceTag["LinkHand"]]],
      LineSpacing->{1.4, 0},ExpressionUUID->
      "ec7cf2bb-54af-4c01-8d55-ca0ca46d7f31"],
     "\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\
\[ThickSpace]",
     Cell[BoxData[
      TagBox[
       ActionMenuBox[
        FrameBox[Cell[TextData[{
          "URL",
          " ",
          Cell[BoxData[
           GraphicsBox[
            {GrayLevel[0.66667], Thickness[0.13], 
             LineBox[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]},
            AspectRatio->1,
            ImageSize->20,
            PlotRange->{{-3, 4}, {-1, 1}}]],ExpressionUUID->
           "eb215f50-c6a9-4de0-93c9-7dee1e845441"]
         }],ExpressionUUID->"406291be-21d9-4b1c-ae8b-3dc40960b784"],
         StripOnInput->False],{
        "\"WolframInstitute/Puzzles/ref/ImageBitPlane\"" :> None, 
         "\"Copy Wolfram Documentation Center URL\"" :> 
         CopyToClipboard["WolframInstitute/Puzzles/ref/ImageBitPlane"], 
         Delimiter, "\"Copy web URL\"" :> 
         Module[{DocumentationSearch`Private`nb$}, 
           DocumentationSearch`Private`nb$ = 
            NotebookPut[
             Notebook[{
               Cell[BoxData[
                 MakeBoxes[
                  Hyperlink[
                   "http://reference.wolfram.com/language/WolframInstitute/\
Puzzles/ref/ImageBitPlane.html"], StandardForm]], "Input", TextClipboardType -> 
                 "PlainText"]}, Visible -> False]]; 
           SelectionMove[DocumentationSearch`Private`nb$, All, Notebook]; 
           FrontEndTokenExecute[DocumentationSearch`Private`nb$, "Copy"]; 
           NotebookClose[DocumentationSearch`Private`nb$]; Null], 
         "\"Go to web URL\"" :> 
         FrontEndExecute[{
           NotebookLocate[{
             URL[If[TrueQ[False], 
                 "http://reference.wolfram.com/system-modeler/", 
                 "http://reference.wolfram.com/language/"] <> 
               "WolframInstitute/Puzzles/ref/ImageBitPlane" <> ".html"], 
              None}]}]},
        Appearance->None,
        MenuAppearance->Automatic,
        MenuStyle->"URLMenu"],
       MouseAppearanceTag["LinkHand"]]],
      LineSpacing->{1.4, 0},ExpressionUUID->
      "0928a6a3-f8b2-490e-ac19-1a12d907d37b"]
    }], "AnchorBar",
     CacheGraphics->False,ExpressionUUID->
     "19efa0ad-c3e9-4776-9002-2ebf06caad7b"]}
  }]], "AnchorBarGrid",
 CellID->1,ExpressionUUID->"067e88f8-165f-4cb6-84c3-95a9f7968cf8"],

Cell["WolframInstitute`Puzzles`", "ContextNameCell",ExpressionUUID->"da33f7e6-a580-432b-b039-6a05f25cc429"],

Cell[CellGroupData[{

Cell[BoxData[GridBox[{
   {Cell[TextData[{
     Cell[
     "ImageBitPlane", "ObjectName",ExpressionUUID->
      "3db1d21e-5e7b-4004-82a3-2343b1b9ad6e"],
     Cell[BoxData[
      TemplateBox[{8},
       "Spacer1"]],ExpressionUUID->"70f6518f-5247-4fc4-a4ea-f333d01a9bd8"],
     Cell[BoxData[
     ""], "ObjectNameTranslation",ExpressionUUID->
      "00823e48-8eb6-4b87-a2ad-2e9464562c3d"]
    }],ExpressionUUID->"9192089e-17b9-4f49-90ff-6634c5889c4b"], 
    "\[SpanFromLeft]"}
  }]], "ObjectNameGrid",ExpressionUUID->"b7087a91-57ed-42f3-b8cd-\
743faaa93db3"],

Cell[BoxData[GridBox[{
   {"", Cell[TextData[{
     Cell[BoxData[
      RowBox[{
       TemplateBox[{
         Cell[
          TextData["ImageBitPlane"]], 
         "paclet:WolframInstitute/Puzzles/ref/ImageBitPlane", 
         "WolframInstitute/Puzzles Package Symbol"},
        "PackageLink",
        BaseStyle->"InlineFormula"], "[", 
       RowBox[{
        StyleBox["image", "TI"], ",", " ", 
        StyleBox["bit", "TI"]}], "]"}]], "InlineFormula",
      FontFamily->"Source Sans Pro",
      FontSize->0.9 Inherited,ExpressionUUID->
      "574d8dbb-a4c4-41d1-ad37-1c80f03a2cfb"],
     "\[LineSeparator]",
     "gives the bit-plane of ",
     StyleBox["image", "TI"],
     " at bit index ",
     StyleBox["bit", "TI"],
     ", as a binary image of the same dimensions and channel count."
    }],ExpressionUUID->"7697d7c8-f634-47ba-988b-998345fc1551"]},
   {"", Cell[TextData[{
     Cell[BoxData[
      RowBox[{
       TemplateBox[{
         Cell[
          TextData["ImageBitPlane"]], 
         "paclet:WolframInstitute/Puzzles/ref/ImageBitPlane", 
         "WolframInstitute/Puzzles Package Symbol"},
        "PackageLink",
        BaseStyle->"InlineFormula"], "[", 
       RowBox[{
        StyleBox["image", "TI"], ",", " ", 
        StyleBox["channel", "TI"], ",", " ", 
        StyleBox["bit", "TI"]}], "]"}]], "InlineFormula",
      FontFamily->"Source Sans Pro",
      FontSize->0.9 Inherited,ExpressionUUID->
      "f5d1701d-886d-47ec-bd0d-4feedb644ec5"],
     "\[LineSeparator]",
     "gives the bit-plane of a single channel of ",
     StyleBox["image", "TI"],
     "."
    }],ExpressionUUID->"56c30c70-60e0-44ac-815c-94f9430c6142"]}
  }]], "Usage",ExpressionUUID->"5370d68c-12a6-43a9-b7b1-5bca8158e8bb"]
}, Open  ]],

Cell[CellGroupData[{

Cell[TextData[Cell[BoxData[Cell[TextData[{
  Cell[BoxData[
   DynamicBox[ToBoxes[
     If[CurrentValue[
        EvaluationCell[], "CellGroupOpen"] =!= Closed, 
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], 
      Rotate[
       Style[
        Graphics[{
          Thickness[0.18], 
          RGBColor[0.8509803921568627, 0.396078431372549, 0], 
          Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
         PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
        0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]],
    ImageSizeCache->{
     13.600000000000001`, {-0.1685058593749993, 13.768505859375}}]],
   ExpressionUUID->"8e392c37-e967-4847-9500-384625486b9d"],
  Cell[BoxData[
   TemplateBox[{1},
    "Spacer1"]],ExpressionUUID->"485223dd-fab1-443d-8909-c5aa9ffe1cf5"],
  "Details and Options"
 }], "NotesFrameText",ExpressionUUID->
  "8919aa6e-74e3-4314-be1a-2e2d2ddc7227"]],ExpressionUUID->"d6695990-2860-\
4ec9-887d-7ee5576857be"]], "NotesSection",
 ShowGroupOpener->"Thumbnail",
 WholeCellGroupOpener->True,
 CellGroupingRules->{"SectionGrouping", 50},
 CacheGraphics->False,
 CellID->994351682,ExpressionUUID->"f9f65e75-3f13-4117-bfe7-8c76d535dd27"],

Cell["\<\
Bit index 0 is the least significant bit of the 8-bit sample and bit index 7 \
the most significant.\
\>", "Notes",ExpressionUUID->"446360f1-f393-4d8d-88bc-5e5144db29ed"],

Cell[TextData[{
 "Samples are read through ",
 Cell[BoxData[
  RowBox[{
   TemplateBox[{
     Cell[
      TextData["ImageData"]], "paclet:ref/ImageData"},
    "RefLink",
    BaseStyle->{"InlineFormula"}], "[", 
   RowBox[{
    StyleBox["image", "TI"], ",", " ", "\<\"Byte\"\>"}], "]"}]], 
  "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "3c26a48d-65cb-4794-9533-dd0f6fa49c88"],
 ", so an image of another type is converted to bytes first and any extra \
precision is lost."
}], "Notes",ExpressionUUID->"769a4b47-a120-477c-b87c-47c49ac52bc2"],

Cell[TextData[{
 StyleBox["channel", "TI"],
 " is a 1-based storage index, or one of the image's own channel names: ",
 Cell[BoxData["\<\"Red\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "e18335c1-bc46-472d-a758-c21984cb1e45"],
 ", ",
 Cell[BoxData["\<\"Green\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "3c0fa15f-c936-4aea-9229-9d868f4606c3"],
 ", ",
 Cell[BoxData["\<\"Blue\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "2e43f036-e927-4f79-9057-c2e5ff9da410"],
 ", ",
 Cell[BoxData["\<\"Alpha\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "15e5a2ab-74fe-4a41-a886-5fe79eac6e12"],
 ", ",
 Cell[BoxData["\<\"Gray\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "c87cfd53-1cb1-4124-ae6b-e150d09a1c7b"],
 ", or ",
 Cell[BoxData["\<\"Cyan\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "d9a665ce-9e74-4139-98d5-65d88012b5d2"],
 ", ",
 Cell[BoxData["\<\"Magenta\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "59165258-c02f-4136-8944-9281a09b43e9"],
 ", ",
 Cell[BoxData["\<\"Yellow\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "4b4661a6-6ad9-4540-acf7-1530a1ac184f"],
 ", ",
 Cell[BoxData["\<\"Black\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "d22cccc9-f652-4bec-a75c-c9841bc25511"],
 " for a CMYK image."
}], "Notes",ExpressionUUID->"a736ed7c-64a8-4ffd-b461-f27c6513221b"],

Cell[TextData[{
 "The result has image type ",
 Cell[BoxData["\<\"Bit\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "c1af9875-0c91-494c-9ad5-4a2c4db0d33b"],
 ", so ",
 Cell[BoxData[
  RowBox[{
   TemplateBox[{
     Cell[
      TextData["ImageData"]], "paclet:ref/ImageData"},
    "RefLink",
    BaseStyle->{"InlineFormula"}], "[", 
   RowBox[{
    StyleBox["result", "TI"], ",", " ", "\<\"Bit\"\>"}], "]"}]], 
  "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "566219be-88ea-4a58-a05a-5c79e77f1cf0"],
 " gives the plane as an array of 0s and 1s."
}], "Notes",ExpressionUUID->"7cd5ad21-c2e0-48ec-a781-bbda90b32326"],

Cell["\<\
In a photograph the low bit planes look like noise and the high bit planes \
look like the picture. A low bit plane that shows structure is the classic \
sign of spatial-domain embedding.\
\>", "Notes",ExpressionUUID->"3dfb70ed-c036-4911-b362-a28fff66cf63"],

Cell["\<\
A bit index outside 0 through 7, a channel the image does not have, or a \
first argument that is not an image matches no definition, and the call is \
returned unevaluated.\
\>", "Notes",ExpressionUUID->"3139fcdd-0b98-47a5-944e-73dc9102fb37"]
}, Closed]],

Cell["", "PageDelimiter",ExpressionUUID->"7a85718a-6495-45a1-b2dd-3f043db71887"],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[
     MatchQ[
      CurrentValue[
       EvaluationNotebook[], {
       TaggingRules, "Openers", "PrimaryExamplesSection"}, Open], 
      Alternatives[True, Open]], 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]],
   ImageSizeCache->{
    13.600000000000001`, {4.251494140625001, 9.348505859375}}]],
  ExpressionUUID->"3b8f0729-470a-406a-843b-6684ec138069"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"b5310328-f0c7-4cb4-ac71-b25670cbf803"],
 "Examples",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(10)", "ExampleCount",ExpressionUUID->
  "56331fe8-90da-46aa-9246-6db8c52e9385"]
}], "PrimaryExamplesSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->350978420,ExpressionUUID->"31d856b1-33e4-4a6a-9caa-b50094b0b5e7"],

Cell[BoxData[
 RowBox[{"Needs", "[", "\"\<WolframInstitute`Puzzles`\>\"", "]"}]], "Input", \
"ExampleInitialization",
 CellLabel->"In[1]:=",
 CellID->1969679695,ExpressionUUID->"75dbc63e-5c51-4b0f-a50e-586fa6953953"],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "7e3988da-f707-4469-bc9c-9508476b5e72"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"d7043758-240c-428f-a21f-5e34915c35ae"],
 "Basic Examples",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(3)", "ExampleCount",ExpressionUUID->
  "d95af37e-26d0-4230-bb59-16874711bf88"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->1904210278,ExpressionUUID->"d0f91f61-dec6-4726-aeca-af46bd849538"],

Cell["\<\
The least significant bit plane of a small carrier, as an array:\
\>", "ExampleText",
 CellTags->
  "TextAnnotation",ExpressionUUID->"0d4aa6bc-3ead-4860-a088-1d3ec8b314ad"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"ImageData", "[", 
  RowBox[{
   RowBox[{"ImageBitPlane", "[", 
    RowBox[{
     RowBox[{"Image", "[", 
      RowBox[{
       RowBox[{"Partition", "[", 
        RowBox[{
         RowBox[{"100", " ", "+", " ", 
          RowBox[{"{", 
           RowBox[{
           "0", ",", " ", "1", ",", " ", "0", ",", " ", "0", ",", " ", "1", ",",
             " ", "0", ",", " ", "0", ",", " ", "0", ",", " ", "0", ",", " ", 
            "1", ",", " ", "1", ",", " ", "0", ",", " ", "1", ",", " ", "0", ",",
             " ", "0", ",", " ", "1"}], "}"}]}], ",", " ", "4"}], "]"}], ",", 
       " ", "\"\<Byte\>\""}], "]"}], ",", " ", "0"}], "]"}], ",", 
   " ", "\"\<Bit\>\""}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"2619fffc-d560-4280-8b7a-fba0aef7cf72"],

Cell[BoxData[
 RowBox[{"{", 
  RowBox[{
   RowBox[{"{", 
    RowBox[{"0", ",", "1", ",", "0", ",", "0"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"1", ",", "0", ",", "0", ",", "0"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"0", ",", "1", ",", "1", ",", "0"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"1", ",", "0", ",", "0", ",", "1"}], "}"}]}], "}"}]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"fda67bd0-b109-472e-95c5-ce8ce71f870f"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "a251427f-f013-4fa6-8f26-f7c653b9a3c3"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"1490ab82-f397-4921-\
a793-a804ed22c081"],

Cell["\<\
The top bit plane of the same carrier is empty, because every sample is below \
128:\
\>", "ExampleText",ExpressionUUID->"2d034f02-a3f2-4aca-8137-ccb9860351d3"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"ImageData", "[", 
  RowBox[{
   RowBox[{"ImageBitPlane", "[", 
    RowBox[{
     RowBox[{"Image", "[", 
      RowBox[{
       RowBox[{"Partition", "[", 
        RowBox[{
         RowBox[{"100", " ", "+", " ", 
          RowBox[{"{", 
           RowBox[{
           "0", ",", " ", "1", ",", " ", "0", ",", " ", "0", ",", " ", "1", ",",
             " ", "0", ",", " ", "0", ",", " ", "0", ",", " ", "0", ",", " ", 
            "1", ",", " ", "1", ",", " ", "0", ",", " ", "1", ",", " ", "0", ",",
             " ", "0", ",", " ", "1"}], "}"}]}], ",", " ", "4"}], "]"}], ",", 
       " ", "\"\<Byte\>\""}], "]"}], ",", " ", "7"}], "]"}], ",", 
   " ", "\"\<Bit\>\""}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"e113c44a-7f25-4db8-b6d6-d32d6df14030"],

Cell[BoxData[
 RowBox[{"{", 
  RowBox[{
   RowBox[{"{", 
    RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"0", ",", "0", ",", "0", ",", "0"}], "}"}]}], "}"}]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"ec25ed19-dc93-4961-a045-21ea581f38b2"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "58aa4631-4557-47c0-a362-eda890bf1eb6"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"1d76855e-92b1-460c-\
8702-505180b47975"],

Cell["A bit plane of a colour image keeps all three channels:", "ExampleText",ExpressionUUID->"3ffcc107-f968-4426-87ca-b4c9a618a1e6"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"ImageChannels", "[", 
  RowBox[{"ImageBitPlane", "[", 
   RowBox[{
    RowBox[{"Image", "[", 
     RowBox[{
      RowBox[{"Table", "[", 
       RowBox[{
        RowBox[{"{", 
         RowBox[{
          RowBox[{"16", " ", "i"}], ",", " ", 
          RowBox[{"16", " ", "j"}], ",", " ", "128"}], "}"}], ",", " ", 
        RowBox[{"{", 
         RowBox[{"i", ",", " ", "0", ",", " ", "7"}], "}"}], ",", " ", 
        RowBox[{"{", 
         RowBox[{"j", ",", " ", "0", ",", " ", "7"}], "}"}]}], "]"}], ",", 
      " ", "\"\<Byte\>\""}], "]"}], ",", " ", "4"}], "]"}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"980ae92a-399f-4e6a-bd5b-a52cbac735c0"],

Cell[BoxData["3"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"37ef1465-2a47-45aa-9438-f357b14c5ef7"]
}, Open  ]]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "efa821c0-2c4f-4c19-b611-b070aad65968"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"7b6c70c9-390a-4682-89f9-74c5596c8caf"],
 "Scope",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(3)", "ExampleCount",ExpressionUUID->
  "918a4c3b-2b90-4f85-9df4-cf0aaf9a3a60"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->1293636265,ExpressionUUID->"6d733366-397b-4213-9076-82b1aaba89da"],

Cell["A single channel is addressed by name:", "ExampleText",ExpressionUUID->"bfbdeb3e-a524-4d0b-a2af-743ac018b2eb"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"ImageData", "[", 
  RowBox[{
   RowBox[{"ImageBitPlane", "[", 
    RowBox[{
     RowBox[{"Image", "[", 
      RowBox[{
       RowBox[{"Table", "[", 
        RowBox[{
         RowBox[{"{", 
          RowBox[{
           RowBox[{"16", " ", "i"}], ",", " ", 
           RowBox[{"16", " ", "j"}], ",", " ", "129"}], "}"}], ",", " ", 
         RowBox[{"{", 
          RowBox[{"i", ",", " ", "0", ",", " ", "3"}], "}"}], ",", " ", 
         RowBox[{"{", 
          RowBox[{"j", ",", " ", "0", ",", " ", "3"}], "}"}]}], "]"}], ",", 
       " ", "\"\<Byte\>\""}], "]"}], ",", " ", "\"\<Blue\>\"", ",", " ", 
     "0"}], "]"}], ",", " ", "\"\<Bit\>\""}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"fdbad85e-81af-4273-97f3-aaf908df7e65"],

Cell[BoxData[
 RowBox[{"{", 
  RowBox[{
   RowBox[{"{", 
    RowBox[{"1", ",", "1", ",", "1", ",", "1"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"1", ",", "1", ",", "1", ",", "1"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"1", ",", "1", ",", "1", ",", "1"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"1", ",", "1", ",", "1", ",", "1"}], "}"}]}], "}"}]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"ce51e169-5889-4b67-8b30-5d16c067aa5a"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "08545053-6a0b-41bd-8b02-4a71cec04793"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"1080d084-5ca5-463e-\
a68b-f77d2937c040"],

Cell["The same channel is addressed by its 1-based storage index:", \
"ExampleText",ExpressionUUID->"8f258653-c2c0-4f52-aaf2-13388acf01b2"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"ImageData", "[", 
  RowBox[{
   RowBox[{"ImageBitPlane", "[", 
    RowBox[{
     RowBox[{"Image", "[", 
      RowBox[{
       RowBox[{"Table", "[", 
        RowBox[{
         RowBox[{"{", 
          RowBox[{
           RowBox[{"16", " ", "i"}], ",", " ", 
           RowBox[{"16", " ", "j"}], ",", " ", "129"}], "}"}], ",", " ", 
         RowBox[{"{", 
          RowBox[{"i", ",", " ", "0", ",", " ", "3"}], "}"}], ",", " ", 
         RowBox[{"{", 
          RowBox[{"j", ",", " ", "0", ",", " ", "3"}], "}"}]}], "]"}], ",", 
       " ", "\"\<Byte\>\""}], "]"}], ",", " ", "3", ",", " ", "0"}], "]"}], ",",
    " ", "\"\<Bit\>\""}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"0b632d88-077d-43f2-a7b3-bd3a725e93e9"],

Cell[BoxData[
 RowBox[{"{", 
  RowBox[{
   RowBox[{"{", 
    RowBox[{"1", ",", "1", ",", "1", ",", "1"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"1", ",", "1", ",", "1", ",", "1"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"1", ",", "1", ",", "1", ",", "1"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"1", ",", "1", ",", "1", ",", "1"}], "}"}]}], "}"}]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"6c660dfb-5e6b-42ca-bff6-e6fbbe681c4c"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "5bc7ad33-2f8c-429c-83bf-f7b945f5c8c5"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"a4b80d6f-e17c-490d-\
9930-0fb6f4244b1d"],

Cell[TextData[{
 "A grayscale image has the single channel ",
 Cell[BoxData["\<\"Gray\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "bd0a15d3-0c3b-4fb7-a9ff-3033118b3aa2"],
 ":"
}], "ExampleText",ExpressionUUID->"125a7b0a-4011-4d78-baea-05c836bb61c6"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"ImageData", "[", 
  RowBox[{
   RowBox[{"ImageBitPlane", "[", 
    RowBox[{
     RowBox[{"Image", "[", 
      RowBox[{
       RowBox[{"Partition", "[", 
        RowBox[{
         RowBox[{"Range", "[", 
          RowBox[{"0", ",", " ", "15"}], "]"}], ",", " ", "4"}], "]"}], ",", 
       " ", "\"\<Byte\>\""}], "]"}], ",", " ", "\"\<Gray\>\"", ",", " ", 
     "1"}], "]"}], ",", " ", "\"\<Bit\>\""}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"3c4c88b0-19c8-4d2b-9693-ef336f0debe6"],

Cell[BoxData[
 RowBox[{"{", 
  RowBox[{
   RowBox[{"{", 
    RowBox[{"0", ",", "0", ",", "1", ",", "1"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"0", ",", "0", ",", "1", ",", "1"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"0", ",", "0", ",", "1", ",", "1"}], "}"}], ",", 
   RowBox[{"{", 
    RowBox[{"0", ",", "0", ",", "1", ",", "1"}], "}"}]}], "}"}]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"c61595fa-61ad-45d1-bf8d-e4726be8cd91"]
}, Open  ]]
}, Open  ]]
}, Closed]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "66bcba53-48bd-42cd-9067-2ec74199952c"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"dfb9a9c7-f0da-4d97-aca1-027a0a8368ac"],
 "Properties & Relations",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(2)", "ExampleCount",ExpressionUUID->
  "d97dccae-357c-498b-b844-acb7f546aa77"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->2123667759,ExpressionUUID->"e82fa0ac-8767-4e84-881a-5a8b7431c41f"],

Cell[TextData[{
 "The plane is the Listable ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["BitGet"]], "paclet:ref/BitGet"},
   "RefLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "605b59bd-7d6d-4b12-9e8e-5e67673d3c93"],
 " applied to the byte samples:"
}], "ExampleText",ExpressionUUID->"46bb2dc3-eb9c-4ac5-b401-5ab8c3834f15"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{
  RowBox[{"ImageData", "[", 
   RowBox[{
    RowBox[{"ImageBitPlane", "[", 
     RowBox[{
      RowBox[{"Image", "[", 
       RowBox[{
        RowBox[{"Partition", "[", 
         RowBox[{
          RowBox[{"Range", "[", 
           RowBox[{"0", ",", " ", "15"}], "]"}], ",", " ", "4"}], "]"}], ",", 
        " ", "\"\<Byte\>\""}], "]"}], ",", " ", "2"}], "]"}], ",", 
    " ", "\"\<Bit\>\""}], "]"}], " ", "===", " ", 
  RowBox[{"BitGet", "[", 
   RowBox[{
    RowBox[{"ImageData", "[", 
     RowBox[{
      RowBox[{"Image", "[", 
       RowBox[{
        RowBox[{"Partition", "[", 
         RowBox[{
          RowBox[{"Range", "[", 
           RowBox[{"0", ",", " ", "15"}], "]"}], ",", " ", "4"}], "]"}], ",", 
        " ", "\"\<Byte\>\""}], "]"}], ",", " ", "\"\<Byte\>\""}], "]"}], ",", 
    " ", "2"}], "]"}]}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"0544c8e9-ef81-49c3-bf74-a80f4daf7773"],

Cell[BoxData["True"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"ebe3ae32-0fc8-49fd-acee-61daa42a3d92"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "21a23e9c-fea6-4761-924c-9a0263dd7c54"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"553d8cf5-755b-4ea7-\
8a35-51ec609a2358"],

Cell[TextData[{
 "Reading the planes in raster order is what ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["ImageBitStream"]], 
    "paclet:WolframInstitute/Puzzles/ref/ImageBitStream", 
    "WolframInstitute/Puzzles Package Symbol"},
   "PackageLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "e2a16a66-cb36-4acd-94dd-ff17ba3b7630"],
 " does:"
}], "ExampleText",ExpressionUUID->"24337b88-1f62-47fe-a418-325de7135a39"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{
  RowBox[{"ImageBitStream", "[", 
   RowBox[{"Image", "[", 
    RowBox[{
     RowBox[{"Partition", "[", 
      RowBox[{
       RowBox[{"Range", "[", 
        RowBox[{"0", ",", " ", "15"}], "]"}], ",", " ", "4"}], "]"}], ",", 
     " ", "\"\<Byte\>\""}], "]"}], "]"}], " ", "===", " ", 
  RowBox[{"Flatten", "[", 
   RowBox[{"ImageData", "[", 
    RowBox[{
     RowBox[{"ImageBitPlane", "[", 
      RowBox[{
       RowBox[{"Image", "[", 
        RowBox[{
         RowBox[{"Partition", "[", 
          RowBox[{
           RowBox[{"Range", "[", 
            RowBox[{"0", ",", " ", "15"}], "]"}], ",", " ", "4"}], "]"}], ",",
          " ", "\"\<Byte\>\""}], "]"}], ",", " ", "0"}], "]"}], ",", 
     " ", "\"\<Bit\>\""}], "]"}], "]"}]}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"c3a7d6f3-4dd0-4926-babc-b1740a32b724"],

Cell[BoxData["True"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"29c1fd75-e928-40ad-b714-439ea7de75a1"]
}, Open  ]]
}, Open  ]]
}, Closed]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "0cd1f026-33c7-429d-9aff-e8cdae537172"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"bfd94fc5-046b-4f50-8f73-677c09911861"],
 "Possible Issues",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(2)", "ExampleCount",ExpressionUUID->
  "7efc81f6-817b-41a2-b8e0-59e8357a7138"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->1305812373,ExpressionUUID->"f7357e9f-cf72-4660-bdf3-e884f6f8b35d"],

Cell["\<\
Bit indices run 0 through 7 only, so a request for a ninth bit is returned \
unevaluated:\
\>", "ExampleText",ExpressionUUID->"629b1621-b4ac-45b1-8846-0c906a21629a"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"ImageBitPlane", "[", 
  RowBox[{
   RowBox[{"Image", "[", 
    RowBox[{
     RowBox[{"Partition", "[", 
      RowBox[{
       RowBox[{"Range", "[", 
        RowBox[{"0", ",", " ", "15"}], "]"}], ",", " ", "4"}], "]"}], ",", 
     " ", "\"\<Byte\>\""}], "]"}], ",", " ", "8"}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"eac90338-ac89-4edf-9702-9abf5b06f585"],

Cell[BoxData[
 RowBox[{"ImageBitPlane", "[", 
  RowBox[{
   GraphicsBox[
    TagBox[
     RasterBox[
      RawArray["UnsignedInteger8", {{0, 1, 2, 3}, {4, 5, 6, 7}, {8, 9, 10, 
       11}, {12, 13, 14, 15}}], {{0, 4.}, {4., 0}}, {0, 255},
      ColorFunction->GrayLevel],
     BoxForm`ImageTag["Byte", ColorSpace -> Automatic, Interleaving -> None],
     Selectable->False],
    DefaultBaseStyle->"ImageGraphics",
    ImageSizeRaw->{4., 4.},
    PlotRange->{{0, 4.}, {0, 4.}}], ",", "8"}], "]"}]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"25c09ab9-213e-479b-bbb0-3b329822727a"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "d769d8ec-0127-41fd-b3ca-0cb3f322432d"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"55d5364a-0845-45ff-\
9910-2935c8a73a20"],

Cell["\<\
A channel name the image does not carry is returned unevaluated rather than \
guessed at:\
\>", "ExampleText",ExpressionUUID->"4b910fdf-fa09-4d11-87b4-be9085e47089"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"ImageBitPlane", "[", 
  RowBox[{
   RowBox[{"Image", "[", 
    RowBox[{
     RowBox[{"Partition", "[", 
      RowBox[{
       RowBox[{"Range", "[", 
        RowBox[{"0", ",", " ", "15"}], "]"}], ",", " ", "4"}], "]"}], ",", 
     " ", "\"\<Byte\>\""}], "]"}], ",", " ", "\"\<Blue\>\"", ",", " ", "0"}], 
  "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"78891b8e-384f-4383-89ba-aa4dfbe745e9"],

Cell[BoxData[
 RowBox[{"ImageBitPlane", "[", 
  RowBox[{
   GraphicsBox[
    TagBox[
     RasterBox[
      RawArray["UnsignedInteger8", {{0, 1, 2, 3}, {4, 5, 6, 7}, {8, 9, 10, 
       11}, {12, 13, 14, 15}}], {{0, 4.}, {4., 0}}, {0, 255},
      ColorFunction->GrayLevel],
     BoxForm`ImageTag["Byte", ColorSpace -> Automatic, Interleaving -> None],
     Selectable->False],
    DefaultBaseStyle->"ImageGraphics",
    ImageSizeRaw->{4., 4.},
    PlotRange->{{0, 4.}, {0, 4.}}], ",", "\<\"Blue\"\>", ",", "0"}], 
  "]"}]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"7a94bf1c-1b38-4478-8475-20318a76d334"]
}, Open  ]]
}, Open  ]]
}, Closed]]
}, Open  ]],

Cell[BoxData[GridBox[{
   {
    DynamicBox[FEPrivate`ImportImage[
      FrontEnd`FileName[{"Documentation", "FooterIcons"}, 
       "RelatedFunction.png"]]], GridBox[{
      {
       StyleBox[
        RowBox[{"See", " ", "Also"}], "SeeAlsoSection"]},
      {Cell[TextData[{
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["ImageBitStream"]], 
           "paclet:WolframInstitute/Puzzles/ref/ImageBitStream", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "221c145d-2e0c-468a-9f7d-b6353d0edb2c"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["ImageBitStreamBytes"]], 
           "paclet:WolframInstitute/Puzzles/ref/ImageBitStreamBytes", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "22f26660-ec95-443d-87ee-5721dc5458a2"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["ImageBitPlaneScan"]], 
           "paclet:WolframInstitute/Puzzles/ref/ImageBitPlaneScan", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "f82fd195-a3e5-4f74-a156-3b5dd58264ee"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["SteganographySurvey"]], 
           "paclet:WolframInstitute/Puzzles/ref/SteganographySurvey", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "c60f9623-964c-40ff-884b-dc0e5f154db4"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["ColorSeparate"]], "paclet:ref/ColorSeparate"},
          "RefLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "59381bf2-bae1-4b85-96c8-873ad5654d29"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["BitGet"]], "paclet:ref/BitGet"},
          "RefLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "3e7c377a-c41c-44a8-b2bc-ebca9eed55e5"]
       }], "SeeAlso",ExpressionUUID->"78ed366a-954c-464d-83a6-d27d026e13b3"]}
     }]}
  }]], "SeeAlsoSection",ExpressionUUID->"461e6a85-5ef1-4d6c-a92f-\
7df4c923ea9a"],

Cell[BoxData[GridBox[{
   {
    DynamicBox[FEPrivate`ImportImage[
      FrontEnd`FileName[{"Documentation", "FooterIcons"}, 
       "RelatedGuide.png"]]], GridBox[{
      {
       StyleBox[
        RowBox[{"Related", " ", "Guides"}], "MoreAboutSection"]},
      {
       RowBox[{"\[FilledVerySmallSquare]", Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["Steganography"]], 
           "paclet:WolframInstitute/Puzzles/guide/Steganography"},
          "RefLinkPlain",
          BaseStyle->{"MoreAbout"}]], "MoreAbout",ExpressionUUID->
         "8a781b5a-63fb-4d46-aaf3-aee4ad486c5c"]}]}
     }]}
  }]], "MoreAboutSection",ExpressionUUID->"22e8e863-f861-4c50-b9b5-\
f0ce5ca7830e"],

Cell[" ", "FooterCell",ExpressionUUID->"a79d2cef-64af-4ac6-bdaa-3145c9ace384"]
},
Saveable->False,
ScreenStyleEnvironment->"Working",
WindowSize->{900, 830},
WindowMargins->{{0, Automatic}, {Automatic, 0}},
WindowTitle->"ImageBitPlane",
TaggingRules->{
 "ModificationHighlight" -> False, "ColorType" -> "", "LinkTrails" -> "", 
  "ExampleCounter" -> 1, 
  "Openers" -> {
   "PrimaryExamplesSection" -> Open, "ExampleSection" -> {"0" -> Open}, 
    "AllOptsTable" -> Closed}, "NewStyles" -> True, 
  "CitationPopupData" -> $Failed, "ShowCitation" -> False, "HasOptions" -> 
  True, "RootCaptions" -> "", "HeaderCoreAreaLink" -> {}, 
  "Metadata" -> {
   "built" -> "{2026, 8, 27, 0, 11, 45.633984}", 
    "history" -> {"XX", "", "", ""}, "context" -> "WolframInstitute`Puzzles`",
     "keywords" -> {}, "specialkeywords" -> {}, 
    "tutorialcollectionlinks" -> {}, "index" -> True, "label" -> 
    "Wolfram Institute/ Puzzles Symbol", "language" -> "en", "paclet" -> 
    "WolframInstitute/Puzzles", "status" -> "None", "summary" -> 
    "PackageLink[ImageBitPlane,paclet : \
WolframInstitute/Puzzles/ref/ImageBitPlane, WolframInstitute/Puzzles Package \
Symbol][image, bit] gives the bit-plane of image at bit index bit, as a \
binary image of the same dimensions and channel count. \
PackageLink[ImageBitPlane,paclet : \
WolframInstitute/Puzzles/ref/ImageBitPlane, WolframInstitute/Puzzles Package \
Symbol][image, channel, bit] gives the bit-plane of a single channel of \
image.", "synonyms" -> {}, "tabletags" -> {}, "title" -> "ImageBitPlane", 
    "titlemodifier" -> "", "metadescription" -> "", "windowtitle" -> 
    "ImageBitPlane", "type" -> "Symbol", "uri" -> 
    "WolframInstitute/Puzzles/ref/ImageBitPlane", "WorkflowDockedCell" -> ""},
   "SearchTextTranslated" -> ""},
CellContext->CellGroup,
FrontEndVersion->"15.0 for Mac OS X ARM (64-bit) (May 19, 2026)",
StyleDefinitions->FrontEnd`FileName[{"Wolfram"}, "Reference.nb"],
ExpressionUUID->"e263af33-dee7-4d8e-bd67-9577f25f3a42"
]
(* End of Notebook Content *)

(* Internal cache information *)
(*CellTagsOutline
CellTagsIndex->{
 "TextAnnotation"->{
  Cell[17759, 480, 182, 4, 70, "ExampleText",ExpressionUUID->"0d4aa6bc-3ead-4860-a088-1d3ec8b314ad",
   CellTags->"TextAnnotation"]}
 }
*)
(*CellTagsIndex
CellTagsIndex->{
 {"TextAnnotation", 43411, 1218}
 }
*)
(*NotebookFileOutline
Notebook[{
Cell[581, 21, 6479, 156, 70, "AnchorBarGrid",ExpressionUUID->"067e88f8-165f-4cb6-84c3-95a9f7968cf8",
 CellID->1],
Cell[7063, 179, 107, 0, 70, "ContextNameCell",ExpressionUUID->"da33f7e6-a580-432b-b039-6a05f25cc429"],
Cell[CellGroupData[{
Cell[7195, 183, 556, 14, 70, "ObjectNameGrid",ExpressionUUID->"b7087a91-57ed-42f3-b8cd-743faaa93db3"],
Cell[7754, 199, 1719, 46, 70, "Usage",ExpressionUUID->"5370d68c-12a6-43a9-b7b1-5bca8158e8bb"]
}, Open  ]],
Cell[CellGroupData[{
Cell[9510, 250, 1443, 34, 70, "NotesSection",ExpressionUUID->"f9f65e75-3f13-4117-bfe7-8c76d535dd27",
 CellGroupingRules->{"SectionGrouping", 50},
 CellID->994351682],
Cell[10956, 286, 180, 3, 70, "Notes",ExpressionUUID->"446360f1-f393-4d8d-88bc-5e5144db29ed"],
Cell[11139, 291, 590, 17, 70, "Notes",ExpressionUUID->"769a4b47-a120-477c-b87c-47c49ac52bc2"],
Cell[11732, 310, 1777, 48, 70, "Notes",ExpressionUUID->"a736ed7c-64a8-4ffd-b461-f27c6513221b"],
Cell[13512, 360, 717, 21, 70, "Notes",ExpressionUUID->"7cd5ad21-c2e0-48ec-a781-bbda90b32326"],
Cell[14232, 383, 267, 4, 70, "Notes",ExpressionUUID->"3dfb70ed-c036-4911-b362-a28fff66cf63"],
Cell[14502, 389, 253, 4, 70, "Notes",ExpressionUUID->"3139fcdd-0b98-47a5-944e-73dc9102fb37"]
}, Closed]],
Cell[14770, 396, 80, 0, 70, "PageDelimiter",ExpressionUUID->"7a85718a-6495-45a1-b2dd-3f043db71887"],
Cell[CellGroupData[{
Cell[14875, 400, 1401, 37, 70, "PrimaryExamplesSection",ExpressionUUID->"31d856b1-33e4-4a6a-9caa-b50094b0b5e7",
 CellID->350978420],
Cell[16279, 439, 216, 4, 70, "Input",ExpressionUUID->"75dbc63e-5c51-4b0f-a50e-586fa6953953",
 CellID->1969679695],
Cell[CellGroupData[{
Cell[16520, 447, 1236, 31, 70, "ExampleSection",ExpressionUUID->"d0f91f61-dec6-4726-aeca-af46bd849538",
 CellID->1904210278],
Cell[17759, 480, 182, 4, 70, "ExampleText",ExpressionUUID->"0d4aa6bc-3ead-4860-a088-1d3ec8b314ad",
 CellTags->"TextAnnotation"],
Cell[CellGroupData[{
Cell[17966, 488, 834, 19, 70, "Input",ExpressionUUID->"2619fffc-d560-4280-8b7a-fba0aef7cf72"],
Cell[18803, 509, 448, 11, 70, "Output",ExpressionUUID->"fda67bd0-b109-472e-95c5-ce8ce71f870f"]
}, Open  ]],
Cell[CellGroupData[{
Cell[19288, 525, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"1490ab82-f397-4921-a793-a804ed22c081"],
Cell[19515, 532, 170, 3, 70, "ExampleText",ExpressionUUID->"2d034f02-a3f2-4aca-8137-ccb9860351d3"],
Cell[CellGroupData[{
Cell[19710, 539, 834, 19, 70, "Input",ExpressionUUID->"e113c44a-7f25-4db8-b6d6-d32d6df14030"],
Cell[20547, 560, 448, 11, 70, "Output",ExpressionUUID->"ec25ed19-dc93-4961-a045-21ea581f38b2"]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[21044, 577, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"1d76855e-92b1-460c-8702-505180b47975"],
Cell[21271, 584, 133, 0, 70, "ExampleText",ExpressionUUID->"3ffcc107-f968-4426-87ca-b4c9a618a1e6"],
Cell[CellGroupData[{
Cell[21429, 588, 732, 18, 70, "Input",ExpressionUUID->"980ae92a-399f-4e6a-bd5b-a52cbac735c0"],
Cell[22164, 608, 107, 1, 70, "Output",ExpressionUUID->"37ef1465-2a47-45aa-9438-f357b14c5ef7"]
}, Open  ]]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[22332, 616, 1227, 31, 70, "ExampleSection",ExpressionUUID->"6d733366-397b-4213-9076-82b1aaba89da",
 CellID->1293636265],
Cell[23562, 649, 116, 0, 70, "ExampleText",ExpressionUUID->"bfbdeb3e-a524-4d0b-a2af-743ac018b2eb"],
Cell[CellGroupData[{
Cell[23703, 653, 813, 20, 70, "Input",ExpressionUUID->"fdbad85e-81af-4273-97f3-aaf908df7e65"],
Cell[24519, 675, 448, 11, 70, "Output",ExpressionUUID->"ce51e169-5889-4b67-8b30-5d16c067aa5a"]
}, Open  ]],
Cell[CellGroupData[{
Cell[25004, 691, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"1080d084-5ca5-463e-a68b-f77d2937c040"],
Cell[25231, 698, 139, 1, 70, "ExampleText",ExpressionUUID->"8f258653-c2c0-4f52-aaf2-13388acf01b2"],
Cell[CellGroupData[{
Cell[25395, 703, 800, 20, 70, "Input",ExpressionUUID->"0b632d88-077d-43f2-a7b3-bd3a725e93e9"],
Cell[26198, 725, 448, 11, 70, "Output",ExpressionUUID->"6c660dfb-5e6b-42ca-bff6-e6fbbe681c4c"]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[26695, 742, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"a4b80d6f-e17c-490d-9930-0fb6f4244b1d"],
Cell[26922, 749, 307, 7, 70, "ExampleText",ExpressionUUID->"125a7b0a-4011-4d78-baea-05c836bb61c6"],
Cell[CellGroupData[{
Cell[27254, 760, 567, 14, 70, "Input",ExpressionUUID->"3c4c88b0-19c8-4d2b-9693-ef336f0debe6"],
Cell[27824, 776, 448, 11, 70, "Output",ExpressionUUID->"c61595fa-61ad-45d1-bf8d-e4726be8cd91"]
}, Open  ]]
}, Open  ]]
}, Closed]],
Cell[CellGroupData[{
Cell[28333, 794, 1244, 31, 70, "ExampleSection",ExpressionUUID->"e82fa0ac-8767-4e84-881a-5a8b7431c41f",
 CellID->2123667759],
Cell[29580, 827, 425, 12, 70, "ExampleText",ExpressionUUID->"46bb2dc3-eb9c-4ac5-b401-5ab8c3834f15"],
Cell[CellGroupData[{
Cell[30030, 843, 976, 27, 70, "Input",ExpressionUUID->"0544c8e9-ef81-49c3-bf74-a80f4daf7773"],
Cell[31009, 872, 110, 1, 70, "Output",ExpressionUUID->"ebe3ae32-0fc8-49fd-acee-61daa42a3d92"]
}, Open  ]],
Cell[CellGroupData[{
Cell[31156, 878, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"553d8cf5-755b-4ea7-8a35-51ec609a2358"],
Cell[31383, 885, 517, 14, 70, "ExampleText",ExpressionUUID->"24337b88-1f62-47fe-a418-325de7135a39"],
Cell[CellGroupData[{
Cell[31925, 903, 895, 24, 70, "Input",ExpressionUUID->"c3a7d6f3-4dd0-4926-babc-b1740a32b724"],
Cell[32823, 929, 110, 1, 70, "Output",ExpressionUUID->"29c1fd75-e928-40ad-b714-439ea7de75a1"]
}, Open  ]]
}, Open  ]]
}, Closed]],
Cell[CellGroupData[{
Cell[32994, 937, 1237, 31, 70, "ExampleSection",ExpressionUUID->"f7357e9f-cf72-4660-bdf3-e884f6f8b35d",
 CellID->1305812373],
Cell[34234, 970, 175, 3, 70, "ExampleText",ExpressionUUID->"629b1621-b4ac-45b1-8846-0c906a21629a"],
Cell[CellGroupData[{
Cell[34434, 977, 444, 11, 70, "Input",ExpressionUUID->"eac90338-ac89-4edf-9702-9abf5b06f585"],
Cell[34881, 990, 586, 14, 70, "Output",ExpressionUUID->"25c09ab9-213e-479b-bbb0-3b329822727a"]
}, Open  ]],
Cell[CellGroupData[{
Cell[35504, 1009, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"55d5364a-0845-45ff-9910-2935c8a73a20"],
Cell[35731, 1016, 175, 3, 70, "ExampleText",ExpressionUUID->"4b910fdf-fa09-4d11-87b4-be9085e47089"],
Cell[CellGroupData[{
Cell[35931, 1023, 473, 12, 70, "Input",ExpressionUUID->"78891b8e-384f-4383-89ba-aa4dfbe745e9"],
Cell[36407, 1037, 610, 15, 70, "Output",ExpressionUUID->"7a94bf1c-1b38-4478-8475-20318a76d334"]
}, Open  ]]
}, Open  ]]
}, Closed]]
}, Open  ]],
Cell[37068, 1058, 3515, 93, 70, "SeeAlsoSection",ExpressionUUID->"461e6a85-5ef1-4d6c-a92f-7df4c923ea9a"],
Cell[40586, 1153, 706, 19, 70, "MoreAboutSection",ExpressionUUID->"22e8e863-f861-4c50-b9b5-f0ce5ca7830e"],
Cell[41295, 1174, 78, 0, 70, "FooterCell",ExpressionUUID->"a79d2cef-64af-4ac6-bdaa-3145c9ace384"]
}
]
*)

(* End of internal cache information *)

