diff --git a/HappyBirthdaySophie/.DS_Store b/HappyBirthdaySophie/.DS_Store new file mode 100644 index 0000000..ee66d31 Binary files /dev/null and b/HappyBirthdaySophie/.DS_Store differ diff --git a/HappyBirthdaySophie/.ipynb_checkpoints/compute_distance_field-checkpoint.ipynb b/HappyBirthdaySophie/.ipynb_checkpoints/compute_distance_field-checkpoint.ipynb new file mode 100644 index 0000000..d3171db --- /dev/null +++ b/HappyBirthdaySophie/.ipynb_checkpoints/compute_distance_field-checkpoint.ipynb @@ -0,0 +1,929 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [], + "source": [ + "from PIL import Image\n", + "import numpy as np\n", + "from matplotlib import pyplot as plt\n", + "im = Image.open(\"birthday.png\")" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "im" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "('PNG', (500, 500), 'RGBA')" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "(im.format, im.size, im.mode)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(500, 500, 4)" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.array(im).shape" + ] + }, + { + "cell_type": "code", + "execution_count": 132, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 132, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "src = np.array(im.convert('L')) > 240\n", + "plt.imshow(src)" + ] + }, + { + "cell_type": "code", + "execution_count": 138, + "metadata": {}, + "outputs": [ + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " + ] + } + ], + "source": [ + "%%time\n", + "src = np.array(im.convert('L')) > 240\n", + "dist = np.ones(shape = (500,500)) * 1000\n", + "i, j = np.array(np.where(1 - src))[:, ::1000].reshape(2, 1, 1, -1)\n", + "I = np.arange(500).reshape(-1,1,1)\n", + "J = np.arange(500).reshape(1,-1,1)\n", + "\n", + "for i,j in pixels:\n", + " d = np.sqrt((I - i)**2 + (J - j)**2)\n", + " dist = np.minimum(dist, d)" + ] + }, + { + "cell_type": "code", + "execution_count": 145, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0\n", + "1\n", + "2\n", + "3\n", + "4\n", + "5\n", + "6\n", + "7\n", + "8\n", + "9\n", + "CPU times: user 1min 8s, sys: 3min 11s, total: 4min 20s\n", + "Wall time: 8min 35s\n" + ] + } + ], + "source": [ + "%%time\n", + "pixels = np.array(np.where(1 - src))\n", + "I = np.arange(500).reshape(-1,1,1)\n", + "J = np.arange(500).reshape(1,-1,1)\n", + "\n", + "dist = np.ones((500,500)) * 1000\n", + "for k in range(10):\n", + " print(k)\n", + " i, j = pixels[:, k::10].reshape(2, 1, 1, -1)\n", + " dist = np.minimum(dist, np.min(np.sqrt((I - i)**2 + (J - j)**2), axis = -1))" + ] + }, + { + "cell_type": "code", + "execution_count": 129, + "metadata": {}, + "outputs": [ + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m(.0)\u001b[0m\n", + "\u001b[0;32m\u001b[0m in \u001b[0;36mcompute\u001b[0;34m(k)\u001b[0m\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " + ] + } + ], + "source": [ + "%%time\n", + "pixels = np.array(np.where(1 - src))[:, :]\n", + "I = np.arange(500).reshape(-1,1,1)\n", + "J = np.arange(500).reshape(1,-1,1)\n", + "\n", + "groups = 50\n", + "\n", + "def compute(k):\n", + " i, j = pixels[:, k::groups].reshape(2, 1, 1, -1)\n", + " dist = np.min(np.sqrt((I - i)**2 + (J - j)**2), axis = -1, initial = 1000)\n", + " return dist\n", + "\n", + "dist = np.min([compute(k) for k in range(groups)], axis = 0)" + ] + }, + { + "cell_type": "code", + "execution_count": 154, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "execution_count": 154, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "quantised = 255 - (dist / np.max(dist) * 255).astype(np.uint8)\n", + "#quantised = (quantised % 2) * 255\n", + "im2 = Image.fromarray(quantised, mode = 'L')\n", + "im2 = im2.convert(\"RGBA\")\n", + "im2.save('distfield.png')\n", + "im2" + ] + }, + { + "cell_type": "code", + "execution_count": 151, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Help on ufunc object:\n", + "\n", + "log = class ufunc(builtins.object)\n", + " | Functions that operate element by element on whole arrays.\n", + " | \n", + " | To see the documentation for a specific ufunc, use `info`. For\n", + " | example, ``np.info(np.sin)``. Because ufuncs are written in C\n", + " | (for speed) and linked into Python with NumPy's ufunc facility,\n", + " | Python's help() function finds this page whenever help() is called\n", + " | on a ufunc.\n", + " | \n", + " | A detailed explanation of ufuncs can be found in the docs for :ref:`ufuncs`.\n", + " | \n", + " | **Calling ufuncs:** ``op(*x[, out], where=True, **kwargs)``\n", + " | \n", + " | Apply `op` to the arguments `*x` elementwise, broadcasting the arguments.\n", + " | \n", + " | The broadcasting rules are:\n", + " | \n", + " | * Dimensions of length 1 may be prepended to either array.\n", + " | * Arrays may be repeated along dimensions of length 1.\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | *x : array_like\n", + " | Input arrays.\n", + " | out : ndarray, None, or tuple of ndarray and None, optional\n", + " | Alternate array object(s) in which to put the result; if provided, it\n", + " | must have a shape that the inputs broadcast to. A tuple of arrays\n", + " | (possible only as a keyword argument) must have length equal to the\n", + " | number of outputs; use None for uninitialized outputs to be\n", + " | allocated by the ufunc.\n", + " | where : array_like, optional\n", + " | This condition is broadcast over the input. At locations where the\n", + " | condition is True, the `out` array will be set to the ufunc result.\n", + " | Elsewhere, the `out` array will retain its original value.\n", + " | Note that if an uninitialized `out` array is created via the default\n", + " | ``out=None``, locations within it where the condition is False will\n", + " | remain uninitialized.\n", + " | **kwargs\n", + " | For other keyword-only arguments, see the :ref:`ufunc docs `.\n", + " | \n", + " | Returns\n", + " | -------\n", + " | r : ndarray or tuple of ndarray\n", + " | `r` will have the shape that the arrays in `x` broadcast to; if `out` is\n", + " | provided, it will be returned. If not, `r` will be allocated and\n", + " | may contain uninitialized values. If the function has more than one\n", + " | output, then the result will be a tuple of arrays.\n", + " | \n", + " | Methods defined here:\n", + " | \n", + " | __call__(self, /, *args, **kwargs)\n", + " | Call self as a function.\n", + " | \n", + " | __repr__(self, /)\n", + " | Return repr(self).\n", + " | \n", + " | __str__(self, /)\n", + " | Return str(self).\n", + " | \n", + " | accumulate(...)\n", + " | accumulate(array, axis=0, dtype=None, out=None)\n", + " | \n", + " | Accumulate the result of applying the operator to all elements.\n", + " | \n", + " | For a one-dimensional array, accumulate produces results equivalent to::\n", + " | \n", + " | r = np.empty(len(A))\n", + " | t = op.identity # op = the ufunc being applied to A's elements\n", + " | for i in range(len(A)):\n", + " | t = op(t, A[i])\n", + " | r[i] = t\n", + " | return r\n", + " | \n", + " | For example, add.accumulate() is equivalent to np.cumsum().\n", + " | \n", + " | For a multi-dimensional array, accumulate is applied along only one\n", + " | axis (axis zero by default; see Examples below) so repeated use is\n", + " | necessary if one wants to accumulate over multiple axes.\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | array : array_like\n", + " | The array to act on.\n", + " | axis : int, optional\n", + " | The axis along which to apply the accumulation; default is zero.\n", + " | dtype : data-type code, optional\n", + " | The data-type used to represent the intermediate results. Defaults\n", + " | to the data-type of the output array if such is provided, or the\n", + " | the data-type of the input array if no output array is provided.\n", + " | out : ndarray, None, or tuple of ndarray and None, optional\n", + " | A location into which the result is stored. If not provided or None,\n", + " | a freshly-allocated array is returned. For consistency with\n", + " | ``ufunc.__call__``, if given as a keyword, this may be wrapped in a\n", + " | 1-element tuple.\n", + " | \n", + " | .. versionchanged:: 1.13.0\n", + " | Tuples are allowed for keyword argument.\n", + " | \n", + " | Returns\n", + " | -------\n", + " | r : ndarray\n", + " | The accumulated values. If `out` was supplied, `r` is a reference to\n", + " | `out`.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | 1-D array examples:\n", + " | \n", + " | >>> np.add.accumulate([2, 3, 5])\n", + " | array([ 2, 5, 10])\n", + " | >>> np.multiply.accumulate([2, 3, 5])\n", + " | array([ 2, 6, 30])\n", + " | \n", + " | 2-D array examples:\n", + " | \n", + " | >>> I = np.eye(2)\n", + " | >>> I\n", + " | array([[1., 0.],\n", + " | [0., 1.]])\n", + " | \n", + " | Accumulate along axis 0 (rows), down columns:\n", + " | \n", + " | >>> np.add.accumulate(I, 0)\n", + " | array([[1., 0.],\n", + " | [1., 1.]])\n", + " | >>> np.add.accumulate(I) # no axis specified = axis zero\n", + " | array([[1., 0.],\n", + " | [1., 1.]])\n", + " | \n", + " | Accumulate along axis 1 (columns), through rows:\n", + " | \n", + " | >>> np.add.accumulate(I, 1)\n", + " | array([[1., 1.],\n", + " | [0., 1.]])\n", + " | \n", + " | at(...)\n", + " | at(a, indices, b=None)\n", + " | \n", + " | Performs unbuffered in place operation on operand 'a' for elements\n", + " | specified by 'indices'. For addition ufunc, this method is equivalent to\n", + " | ``a[indices] += b``, except that results are accumulated for elements that\n", + " | are indexed more than once. For example, ``a[[0,0]] += 1`` will only\n", + " | increment the first element once because of buffering, whereas\n", + " | ``add.at(a, [0,0], 1)`` will increment the first element twice.\n", + " | \n", + " | .. versionadded:: 1.8.0\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | a : array_like\n", + " | The array to perform in place operation on.\n", + " | indices : array_like or tuple\n", + " | Array like index object or slice object for indexing into first\n", + " | operand. If first operand has multiple dimensions, indices can be a\n", + " | tuple of array like index objects or slice objects.\n", + " | b : array_like\n", + " | Second operand for ufuncs requiring two operands. Operand must be\n", + " | broadcastable over first operand after indexing or slicing.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | Set items 0 and 1 to their negative values:\n", + " | \n", + " | >>> a = np.array([1, 2, 3, 4])\n", + " | >>> np.negative.at(a, [0, 1])\n", + " | >>> a\n", + " | array([-1, -2, 3, 4])\n", + " | \n", + " | Increment items 0 and 1, and increment item 2 twice:\n", + " | \n", + " | >>> a = np.array([1, 2, 3, 4])\n", + " | >>> np.add.at(a, [0, 1, 2, 2], 1)\n", + " | >>> a\n", + " | array([2, 3, 5, 4])\n", + " | \n", + " | Add items 0 and 1 in first array to second array,\n", + " | and store results in first array:\n", + " | \n", + " | >>> a = np.array([1, 2, 3, 4])\n", + " | >>> b = np.array([1, 2])\n", + " | >>> np.add.at(a, [0, 1], b)\n", + " | >>> a\n", + " | array([2, 4, 3, 4])\n", + " | \n", + " | outer(...)\n", + " | outer(A, B, **kwargs)\n", + " | \n", + " | Apply the ufunc `op` to all pairs (a, b) with a in `A` and b in `B`.\n", + " | \n", + " | Let ``M = A.ndim``, ``N = B.ndim``. Then the result, `C`, of\n", + " | ``op.outer(A, B)`` is an array of dimension M + N such that:\n", + " | \n", + " | .. math:: C[i_0, ..., i_{M-1}, j_0, ..., j_{N-1}] =\n", + " | op(A[i_0, ..., i_{M-1}], B[j_0, ..., j_{N-1}])\n", + " | \n", + " | For `A` and `B` one-dimensional, this is equivalent to::\n", + " | \n", + " | r = empty(len(A),len(B))\n", + " | for i in range(len(A)):\n", + " | for j in range(len(B)):\n", + " | r[i,j] = op(A[i], B[j]) # op = ufunc in question\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | A : array_like\n", + " | First array\n", + " | B : array_like\n", + " | Second array\n", + " | kwargs : any\n", + " | Arguments to pass on to the ufunc. Typically `dtype` or `out`.\n", + " | \n", + " | Returns\n", + " | -------\n", + " | r : ndarray\n", + " | Output array\n", + " | \n", + " | See Also\n", + " | --------\n", + " | numpy.outer : A less powerful version of ``np.multiply.outer``\n", + " | that `ravel`\\ s all inputs to 1D. This exists\n", + " | primarily for compatibility with old code.\n", + " | \n", + " | tensordot : ``np.tensordot(a, b, axes=((), ()))`` and\n", + " | ``np.multiply.outer(a, b)`` behave same for all\n", + " | dimensions of a and b.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.multiply.outer([1, 2, 3], [4, 5, 6])\n", + " | array([[ 4, 5, 6],\n", + " | [ 8, 10, 12],\n", + " | [12, 15, 18]])\n", + " | \n", + " | A multi-dimensional example:\n", + " | \n", + " | >>> A = np.array([[1, 2, 3], [4, 5, 6]])\n", + " | >>> A.shape\n", + " | (2, 3)\n", + " | >>> B = np.array([[1, 2, 3, 4]])\n", + " | >>> B.shape\n", + " | (1, 4)\n", + " | >>> C = np.multiply.outer(A, B)\n", + " | >>> C.shape; C\n", + " | (2, 3, 1, 4)\n", + " | array([[[[ 1, 2, 3, 4]],\n", + " | [[ 2, 4, 6, 8]],\n", + " | [[ 3, 6, 9, 12]]],\n", + " | [[[ 4, 8, 12, 16]],\n", + " | [[ 5, 10, 15, 20]],\n", + " | [[ 6, 12, 18, 24]]]])\n", + " | \n", + " | reduce(...)\n", + " | reduce(a, axis=0, dtype=None, out=None, keepdims=False, initial=, where=True)\n", + " | \n", + " | Reduces `a`'s dimension by one, by applying ufunc along one axis.\n", + " | \n", + " | Let :math:`a.shape = (N_0, ..., N_i, ..., N_{M-1})`. Then\n", + " | :math:`ufunc.reduce(a, axis=i)[k_0, ..,k_{i-1}, k_{i+1}, .., k_{M-1}]` =\n", + " | the result of iterating `j` over :math:`range(N_i)`, cumulatively applying\n", + " | ufunc to each :math:`a[k_0, ..,k_{i-1}, j, k_{i+1}, .., k_{M-1}]`.\n", + " | For a one-dimensional array, reduce produces results equivalent to:\n", + " | ::\n", + " | \n", + " | r = op.identity # op = ufunc\n", + " | for i in range(len(A)):\n", + " | r = op(r, A[i])\n", + " | return r\n", + " | \n", + " | For example, add.reduce() is equivalent to sum().\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | a : array_like\n", + " | The array to act on.\n", + " | axis : None or int or tuple of ints, optional\n", + " | Axis or axes along which a reduction is performed.\n", + " | The default (`axis` = 0) is perform a reduction over the first\n", + " | dimension of the input array. `axis` may be negative, in\n", + " | which case it counts from the last to the first axis.\n", + " | \n", + " | .. versionadded:: 1.7.0\n", + " | \n", + " | If this is None, a reduction is performed over all the axes.\n", + " | If this is a tuple of ints, a reduction is performed on multiple\n", + " | axes, instead of a single axis or all the axes as before.\n", + " | \n", + " | For operations which are either not commutative or not associative,\n", + " | doing a reduction over multiple axes is not well-defined. The\n", + " | ufuncs do not currently raise an exception in this case, but will\n", + " | likely do so in the future.\n", + " | dtype : data-type code, optional\n", + " | The type used to represent the intermediate results. Defaults\n", + " | to the data-type of the output array if this is provided, or\n", + " | the data-type of the input array if no output array is provided.\n", + " | out : ndarray, None, or tuple of ndarray and None, optional\n", + " | A location into which the result is stored. If not provided or None,\n", + " | a freshly-allocated array is returned. For consistency with\n", + " | ``ufunc.__call__``, if given as a keyword, this may be wrapped in a\n", + " | 1-element tuple.\n", + " | \n", + " | .. versionchanged:: 1.13.0\n", + " | Tuples are allowed for keyword argument.\n", + " | keepdims : bool, optional\n", + " | If this is set to True, the axes which are reduced are left\n", + " | in the result as dimensions with size one. With this option,\n", + " | the result will broadcast correctly against the original `arr`.\n", + " | \n", + " | .. versionadded:: 1.7.0\n", + " | initial : scalar, optional\n", + " | The value with which to start the reduction.\n", + " | If the ufunc has no identity or the dtype is object, this defaults\n", + " | to None - otherwise it defaults to ufunc.identity.\n", + " | If ``None`` is given, the first element of the reduction is used,\n", + " | and an error is thrown if the reduction is empty.\n", + " | \n", + " | .. versionadded:: 1.15.0\n", + " | \n", + " | where : array_like of bool, optional\n", + " | A boolean array which is broadcasted to match the dimensions\n", + " | of `a`, and selects elements to include in the reduction. Note\n", + " | that for ufuncs like ``minimum`` that do not have an identity\n", + " | defined, one has to pass in also ``initial``.\n", + " | \n", + " | .. versionadded:: 1.17.0\n", + " | \n", + " | Returns\n", + " | -------\n", + " | r : ndarray\n", + " | The reduced array. If `out` was supplied, `r` is a reference to it.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.multiply.reduce([2,3,5])\n", + " | 30\n", + " | \n", + " | A multi-dimensional array example:\n", + " | \n", + " | >>> X = np.arange(8).reshape((2,2,2))\n", + " | >>> X\n", + " | array([[[0, 1],\n", + " | [2, 3]],\n", + " | [[4, 5],\n", + " | [6, 7]]])\n", + " | >>> np.add.reduce(X, 0)\n", + " | array([[ 4, 6],\n", + " | [ 8, 10]])\n", + " | >>> np.add.reduce(X) # confirm: default axis value is 0\n", + " | array([[ 4, 6],\n", + " | [ 8, 10]])\n", + " | >>> np.add.reduce(X, 1)\n", + " | array([[ 2, 4],\n", + " | [10, 12]])\n", + " | >>> np.add.reduce(X, 2)\n", + " | array([[ 1, 5],\n", + " | [ 9, 13]])\n", + " | \n", + " | You can use the ``initial`` keyword argument to initialize the reduction\n", + " | with a different value, and ``where`` to select specific elements to include:\n", + " | \n", + " | >>> np.add.reduce([10], initial=5)\n", + " | 15\n", + " | >>> np.add.reduce(np.ones((2, 2, 2)), axis=(0, 2), initial=10)\n", + " | array([14., 14.])\n", + " | >>> a = np.array([10., np.nan, 10])\n", + " | >>> np.add.reduce(a, where=~np.isnan(a))\n", + " | 20.0\n", + " | \n", + " | Allows reductions of empty arrays where they would normally fail, i.e.\n", + " | for ufuncs without an identity.\n", + " | \n", + " | >>> np.minimum.reduce([], initial=np.inf)\n", + " | inf\n", + " | >>> np.minimum.reduce([[1., 2.], [3., 4.]], initial=10., where=[True, False])\n", + " | array([ 1., 10.])\n", + " | >>> np.minimum.reduce([])\n", + " | Traceback (most recent call last):\n", + " | ...\n", + " | ValueError: zero-size array to reduction operation minimum which has no identity\n", + " | \n", + " | reduceat(...)\n", + " | reduceat(a, indices, axis=0, dtype=None, out=None)\n", + " | \n", + " | Performs a (local) reduce with specified slices over a single axis.\n", + " | \n", + " | For i in ``range(len(indices))``, `reduceat` computes\n", + " | ``ufunc.reduce(a[indices[i]:indices[i+1]])``, which becomes the i-th\n", + " | generalized \"row\" parallel to `axis` in the final result (i.e., in a\n", + " | 2-D array, for example, if `axis = 0`, it becomes the i-th row, but if\n", + " | `axis = 1`, it becomes the i-th column). There are three exceptions to this:\n", + " | \n", + " | * when ``i = len(indices) - 1`` (so for the last index),\n", + " | ``indices[i+1] = a.shape[axis]``.\n", + " | * if ``indices[i] >= indices[i + 1]``, the i-th generalized \"row\" is\n", + " | simply ``a[indices[i]]``.\n", + " | * if ``indices[i] >= len(a)`` or ``indices[i] < 0``, an error is raised.\n", + " | \n", + " | The shape of the output depends on the size of `indices`, and may be\n", + " | larger than `a` (this happens if ``len(indices) > a.shape[axis]``).\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | a : array_like\n", + " | The array to act on.\n", + " | indices : array_like\n", + " | Paired indices, comma separated (not colon), specifying slices to\n", + " | reduce.\n", + " | axis : int, optional\n", + " | The axis along which to apply the reduceat.\n", + " | dtype : data-type code, optional\n", + " | The type used to represent the intermediate results. Defaults\n", + " | to the data type of the output array if this is provided, or\n", + " | the data type of the input array if no output array is provided.\n", + " | out : ndarray, None, or tuple of ndarray and None, optional\n", + " | A location into which the result is stored. If not provided or None,\n", + " | a freshly-allocated array is returned. For consistency with\n", + " | ``ufunc.__call__``, if given as a keyword, this may be wrapped in a\n", + " | 1-element tuple.\n", + " | \n", + " | .. versionchanged:: 1.13.0\n", + " | Tuples are allowed for keyword argument.\n", + " | \n", + " | Returns\n", + " | -------\n", + " | r : ndarray\n", + " | The reduced values. If `out` was supplied, `r` is a reference to\n", + " | `out`.\n", + " | \n", + " | Notes\n", + " | -----\n", + " | A descriptive example:\n", + " | \n", + " | If `a` is 1-D, the function `ufunc.accumulate(a)` is the same as\n", + " | ``ufunc.reduceat(a, indices)[::2]`` where `indices` is\n", + " | ``range(len(array) - 1)`` with a zero placed\n", + " | in every other element:\n", + " | ``indices = zeros(2 * len(a) - 1)``, ``indices[1::2] = range(1, len(a))``.\n", + " | \n", + " | Don't be fooled by this attribute's name: `reduceat(a)` is not\n", + " | necessarily smaller than `a`.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | To take the running sum of four successive values:\n", + " | \n", + " | >>> np.add.reduceat(np.arange(8),[0,4, 1,5, 2,6, 3,7])[::2]\n", + " | array([ 6, 10, 14, 18])\n", + " | \n", + " | A 2-D example:\n", + " | \n", + " | >>> x = np.linspace(0, 15, 16).reshape(4,4)\n", + " | >>> x\n", + " | array([[ 0., 1., 2., 3.],\n", + " | [ 4., 5., 6., 7.],\n", + " | [ 8., 9., 10., 11.],\n", + " | [12., 13., 14., 15.]])\n", + " | \n", + " | ::\n", + " | \n", + " | # reduce such that the result has the following five rows:\n", + " | # [row1 + row2 + row3]\n", + " | # [row4]\n", + " | # [row2]\n", + " | # [row3]\n", + " | # [row1 + row2 + row3 + row4]\n", + " | \n", + " | >>> np.add.reduceat(x, [0, 3, 1, 2, 0])\n", + " | array([[12., 15., 18., 21.],\n", + " | [12., 13., 14., 15.],\n", + " | [ 4., 5., 6., 7.],\n", + " | [ 8., 9., 10., 11.],\n", + " | [24., 28., 32., 36.]])\n", + " | \n", + " | ::\n", + " | \n", + " | # reduce such that result has the following two columns:\n", + " | # [col1 * col2 * col3, col4]\n", + " | \n", + " | >>> np.multiply.reduceat(x, [0, 3], 1)\n", + " | array([[ 0., 3.],\n", + " | [ 120., 7.],\n", + " | [ 720., 11.],\n", + " | [2184., 15.]])\n", + " | \n", + " | ----------------------------------------------------------------------\n", + " | Data descriptors defined here:\n", + " | \n", + " | identity\n", + " | The identity value.\n", + " | \n", + " | Data attribute containing the identity element for the ufunc, if it has one.\n", + " | If it does not, the attribute value is None.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.identity\n", + " | 0\n", + " | >>> np.multiply.identity\n", + " | 1\n", + " | >>> np.power.identity\n", + " | 1\n", + " | >>> print(np.exp.identity)\n", + " | None\n", + " | \n", + " | nargs\n", + " | The number of arguments.\n", + " | \n", + " | Data attribute containing the number of arguments the ufunc takes, including\n", + " | optional ones.\n", + " | \n", + " | Notes\n", + " | -----\n", + " | Typically this value will be one more than what you might expect because all\n", + " | ufuncs take the optional \"out\" argument.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.nargs\n", + " | 3\n", + " | >>> np.multiply.nargs\n", + " | 3\n", + " | >>> np.power.nargs\n", + " | 3\n", + " | >>> np.exp.nargs\n", + " | 2\n", + " | \n", + " | nin\n", + " | The number of inputs.\n", + " | \n", + " | Data attribute containing the number of arguments the ufunc treats as input.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.nin\n", + " | 2\n", + " | >>> np.multiply.nin\n", + " | 2\n", + " | >>> np.power.nin\n", + " | 2\n", + " | >>> np.exp.nin\n", + " | 1\n", + " | \n", + " | nout\n", + " | The number of outputs.\n", + " | \n", + " | Data attribute containing the number of arguments the ufunc treats as output.\n", + " | \n", + " | Notes\n", + " | -----\n", + " | Since all ufuncs can take output arguments, this will always be (at least) 1.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.nout\n", + " | 1\n", + " | >>> np.multiply.nout\n", + " | 1\n", + " | >>> np.power.nout\n", + " | 1\n", + " | >>> np.exp.nout\n", + " | 1\n", + " | \n", + " | ntypes\n", + " | The number of types.\n", + " | \n", + " | The number of numerical NumPy types - of which there are 18 total - on which\n", + " | the ufunc can operate.\n", + " | \n", + " | See Also\n", + " | --------\n", + " | numpy.ufunc.types\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.ntypes\n", + " | 18\n", + " | >>> np.multiply.ntypes\n", + " | 18\n", + " | >>> np.power.ntypes\n", + " | 17\n", + " | >>> np.exp.ntypes\n", + " | 7\n", + " | >>> np.remainder.ntypes\n", + " | 14\n", + " | \n", + " | signature\n", + " | Definition of the core elements a generalized ufunc operates on.\n", + " | \n", + " | The signature determines how the dimensions of each input/output array\n", + " | are split into core and loop dimensions:\n", + " | \n", + " | 1. Each dimension in the signature is matched to a dimension of the\n", + " | corresponding passed-in array, starting from the end of the shape tuple.\n", + " | 2. Core dimensions assigned to the same label in the signature must have\n", + " | exactly matching sizes, no broadcasting is performed.\n", + " | 3. The core dimensions are removed from all inputs and the remaining\n", + " | dimensions are broadcast together, defining the loop dimensions.\n", + " | \n", + " | Notes\n", + " | -----\n", + " | Generalized ufuncs are used internally in many linalg functions, and in\n", + " | the testing suite; the examples below are taken from these.\n", + " | For ufuncs that operate on scalars, the signature is None, which is\n", + " | equivalent to '()' for every argument.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.core.umath_tests.matrix_multiply.signature\n", + " | '(m,n),(n,p)->(m,p)'\n", + " | >>> np.linalg._umath_linalg.det.signature\n", + " | '(m,m)->()'\n", + " | >>> np.add.signature is None\n", + " | True # equivalent to '(),()->()'\n", + " | \n", + " | types\n", + " | Returns a list with types grouped input->output.\n", + " | \n", + " | Data attribute listing the data-type \"Domain-Range\" groupings the ufunc can\n", + " | deliver. The data-types are given using the character codes.\n", + " | \n", + " | See Also\n", + " | --------\n", + " | numpy.ufunc.ntypes\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.types\n", + " | ['??->?', 'bb->b', 'BB->B', 'hh->h', 'HH->H', 'ii->i', 'II->I', 'll->l',\n", + " | 'LL->L', 'qq->q', 'QQ->Q', 'ff->f', 'dd->d', 'gg->g', 'FF->F', 'DD->D',\n", + " | 'GG->G', 'OO->O']\n", + " | \n", + " | >>> np.multiply.types\n", + " | ['??->?', 'bb->b', 'BB->B', 'hh->h', 'HH->H', 'ii->i', 'II->I', 'll->l',\n", + " | 'LL->L', 'qq->q', 'QQ->Q', 'ff->f', 'dd->d', 'gg->g', 'FF->F', 'DD->D',\n", + " | 'GG->G', 'OO->O']\n", + " | \n", + " | >>> np.power.types\n", + " | ['bb->b', 'BB->B', 'hh->h', 'HH->H', 'ii->i', 'II->I', 'll->l', 'LL->L',\n", + " | 'qq->q', 'QQ->Q', 'ff->f', 'dd->d', 'gg->g', 'FF->F', 'DD->D', 'GG->G',\n", + " | 'OO->O']\n", + " | \n", + " | >>> np.exp.types\n", + " | ['f->f', 'd->d', 'g->g', 'F->F', 'D->D', 'G->G', 'O->O']\n", + " | \n", + " | >>> np.remainder.types\n", + " | ['bb->b', 'BB->B', 'hh->h', 'HH->H', 'ii->i', 'II->I', 'll->l', 'LL->L',\n", + " | 'qq->q', 'QQ->Q', 'ff->f', 'dd->d', 'gg->g', 'OO->O']\n", + "\n" + ] + } + ], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python [conda env:root] *", + "language": "python", + "name": "conda-root-py" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/HappyBirthdaySophie/.ipynb_checkpoints/index-checkpoint.html b/HappyBirthdaySophie/.ipynb_checkpoints/index-checkpoint.html new file mode 100644 index 0000000..ac541ac --- /dev/null +++ b/HappyBirthdaySophie/.ipynb_checkpoints/index-checkpoint.html @@ -0,0 +1,14 @@ + + + + + + + + + + +
+ +
+ diff --git a/HappyBirthdaySophie/.ipynb_checkpoints/sketch-checkpoint.js b/HappyBirthdaySophie/.ipynb_checkpoints/sketch-checkpoint.js new file mode 100644 index 0000000..3f61a26 --- /dev/null +++ b/HappyBirthdaySophie/.ipynb_checkpoints/sketch-checkpoint.js @@ -0,0 +1,103 @@ + +let w = 200; +let stepsize = 1; +let Nwalkers = 300; +let fr = 30; +let beta = 0.1; //beta = 0 chooses infinite temperature, beta = inf forces the walkers to go only towards the gradient +let betaslider; + +let radio; + +let cw = 500; +let canvas, src, pg; + +let walkerpos = [] + +let transparent; + + +function proposal(pos) {} + +let img; +let distfield; +function preload() { + img = loadImage('birthday.png'); + distfield = loadImage('distfield.png'); +} + +let dist, showdist, showtarget, showpaths, showwalkers; +let step; +let newpos; + +function setup() { + console.log('canvas has size: ', cw, cw); + canvas = createCanvas(cw, cw); + canvas.parent('sketch-holder'); + //pixelDensity(1); + //let d = pixelDensity(); + frameRate(fr); + + betaslider = createSlider(0, 1, 0.5, 0.0001); + //betaslider.position(10, 10); + betaslider.style('width', '80px'); + + showdist = createCheckbox('Show distance function', false); + showtarget = createCheckbox('Show target image', false); + showpaths = createCheckbox('Show paths', true); + showwalkers = createCheckbox('Show walkers', true); + + overlay = createGraphics(windowWidth, windowHeight); + overlay.pixelDensity(1); + overlay.background(color(0,0,0,0)); + + dist = function(pos) { + return distfield.get(pos.x, pos.y)[0]; + } + + colorMode(HSL); + + walkers = []; + for(let i = 0; i < Nwalkers; i += 1) { + append(walkerpos, createVector(random(width), random(height))); + } + + step = createVector(0,0); +} + +let b; +function draw() { + background(255); + if(showdist.checked()) image(distfield, 0, 0); //the min distance to the nearest non white pixel in the target image + if(showtarget.checked()) image(img, 0, 0); //the target image + if(showpaths.checked()) { + //tint(255, 5e6 / frameCount / Nwalkers); + image(overlay, 0, 0); + } + + //text(dist(createVector(mouseX, mouseY)), width/2, height/2); + //text(overlay.get(mouseX, mouseY), width/2, height/2); + + beta = betaslider.value(); + beta = beta / (1 - beta); + + overlay.loadPixels(); + for(let i = 0; i < Nwalkers; i += 1) { + //let debug = Math.sqrt((mouseX - walkerpos[i].x)**2 + (mouseY - walkerpos[i].y)**2) < 10; + step.x = 2*stepsize*(random() - 0.5); + step.y = 2*stepsize*(random() - 0.5); + newpos = p5.Vector.add(walkerpos[i], step); + let df = dist(newpos) - dist(walkerpos[i]); + if(df > 0 | exp(beta * df) > random(1.0)) { + walkerpos[i].add(step); + } + if(showwalkers.checked()) circle(walkerpos[i].x, walkerpos[i].y, 3); + + // loop over + index = 4 * (int(walkerpos[i].y) * overlay.width + int(walkerpos[i].x)); + b = overlay.pixels[index+3] + 5 + overlay.pixels[index+3] = b; + } + overlay.updatePixels(); + + +} \ No newline at end of file diff --git a/HappyBirthdaySophie/.ipynb_checkpoints/style-checkpoint.css b/HappyBirthdaySophie/.ipynb_checkpoints/style-checkpoint.css new file mode 100644 index 0000000..a952ec5 --- /dev/null +++ b/HappyBirthdaySophie/.ipynb_checkpoints/style-checkpoint.css @@ -0,0 +1,13 @@ +html, body { + margin: 0; + padding: 0; +} + +#sketch-holder { + padding-left: 0; + padding-right: 0; + margin-left: auto; + margin-right: auto; + display: block; + width: 500px; +} diff --git a/poem/.ipynb_checkpoints/CV_image-checkpoint.png b/poem/.ipynb_checkpoints/CV_image-checkpoint.png new file mode 100644 index 0000000..ac3030b Binary files /dev/null and b/poem/.ipynb_checkpoints/CV_image-checkpoint.png differ diff --git a/poem/.ipynb_checkpoints/compute_distance_field-checkpoint.ipynb b/poem/.ipynb_checkpoints/compute_distance_field-checkpoint.ipynb new file mode 100644 index 0000000..d3171db --- /dev/null +++ b/poem/.ipynb_checkpoints/compute_distance_field-checkpoint.ipynb @@ -0,0 +1,929 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [], + "source": [ + "from PIL import Image\n", + "import numpy as np\n", + "from matplotlib import pyplot as plt\n", + "im = Image.open(\"birthday.png\")" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "im" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "('PNG', (500, 500), 'RGBA')" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "(im.format, im.size, im.mode)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(500, 500, 4)" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.array(im).shape" + ] + }, + { + "cell_type": "code", + "execution_count": 132, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 132, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "src = np.array(im.convert('L')) > 240\n", + "plt.imshow(src)" + ] + }, + { + "cell_type": "code", + "execution_count": 138, + "metadata": {}, + "outputs": [ + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " + ] + } + ], + "source": [ + "%%time\n", + "src = np.array(im.convert('L')) > 240\n", + "dist = np.ones(shape = (500,500)) * 1000\n", + "i, j = np.array(np.where(1 - src))[:, ::1000].reshape(2, 1, 1, -1)\n", + "I = np.arange(500).reshape(-1,1,1)\n", + "J = np.arange(500).reshape(1,-1,1)\n", + "\n", + "for i,j in pixels:\n", + " d = np.sqrt((I - i)**2 + (J - j)**2)\n", + " dist = np.minimum(dist, d)" + ] + }, + { + "cell_type": "code", + "execution_count": 145, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0\n", + "1\n", + "2\n", + "3\n", + "4\n", + "5\n", + "6\n", + "7\n", + "8\n", + "9\n", + "CPU times: user 1min 8s, sys: 3min 11s, total: 4min 20s\n", + "Wall time: 8min 35s\n" + ] + } + ], + "source": [ + "%%time\n", + "pixels = np.array(np.where(1 - src))\n", + "I = np.arange(500).reshape(-1,1,1)\n", + "J = np.arange(500).reshape(1,-1,1)\n", + "\n", + "dist = np.ones((500,500)) * 1000\n", + "for k in range(10):\n", + " print(k)\n", + " i, j = pixels[:, k::10].reshape(2, 1, 1, -1)\n", + " dist = np.minimum(dist, np.min(np.sqrt((I - i)**2 + (J - j)**2), axis = -1))" + ] + }, + { + "cell_type": "code", + "execution_count": 129, + "metadata": {}, + "outputs": [ + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m(.0)\u001b[0m\n", + "\u001b[0;32m\u001b[0m in \u001b[0;36mcompute\u001b[0;34m(k)\u001b[0m\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " + ] + } + ], + "source": [ + "%%time\n", + "pixels = np.array(np.where(1 - src))[:, :]\n", + "I = np.arange(500).reshape(-1,1,1)\n", + "J = np.arange(500).reshape(1,-1,1)\n", + "\n", + "groups = 50\n", + "\n", + "def compute(k):\n", + " i, j = pixels[:, k::groups].reshape(2, 1, 1, -1)\n", + " dist = np.min(np.sqrt((I - i)**2 + (J - j)**2), axis = -1, initial = 1000)\n", + " return dist\n", + "\n", + "dist = np.min([compute(k) for k in range(groups)], axis = 0)" + ] + }, + { + "cell_type": "code", + "execution_count": 154, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "execution_count": 154, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "quantised = 255 - (dist / np.max(dist) * 255).astype(np.uint8)\n", + "#quantised = (quantised % 2) * 255\n", + "im2 = Image.fromarray(quantised, mode = 'L')\n", + "im2 = im2.convert(\"RGBA\")\n", + "im2.save('distfield.png')\n", + "im2" + ] + }, + { + "cell_type": "code", + "execution_count": 151, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Help on ufunc object:\n", + "\n", + "log = class ufunc(builtins.object)\n", + " | Functions that operate element by element on whole arrays.\n", + " | \n", + " | To see the documentation for a specific ufunc, use `info`. For\n", + " | example, ``np.info(np.sin)``. Because ufuncs are written in C\n", + " | (for speed) and linked into Python with NumPy's ufunc facility,\n", + " | Python's help() function finds this page whenever help() is called\n", + " | on a ufunc.\n", + " | \n", + " | A detailed explanation of ufuncs can be found in the docs for :ref:`ufuncs`.\n", + " | \n", + " | **Calling ufuncs:** ``op(*x[, out], where=True, **kwargs)``\n", + " | \n", + " | Apply `op` to the arguments `*x` elementwise, broadcasting the arguments.\n", + " | \n", + " | The broadcasting rules are:\n", + " | \n", + " | * Dimensions of length 1 may be prepended to either array.\n", + " | * Arrays may be repeated along dimensions of length 1.\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | *x : array_like\n", + " | Input arrays.\n", + " | out : ndarray, None, or tuple of ndarray and None, optional\n", + " | Alternate array object(s) in which to put the result; if provided, it\n", + " | must have a shape that the inputs broadcast to. A tuple of arrays\n", + " | (possible only as a keyword argument) must have length equal to the\n", + " | number of outputs; use None for uninitialized outputs to be\n", + " | allocated by the ufunc.\n", + " | where : array_like, optional\n", + " | This condition is broadcast over the input. At locations where the\n", + " | condition is True, the `out` array will be set to the ufunc result.\n", + " | Elsewhere, the `out` array will retain its original value.\n", + " | Note that if an uninitialized `out` array is created via the default\n", + " | ``out=None``, locations within it where the condition is False will\n", + " | remain uninitialized.\n", + " | **kwargs\n", + " | For other keyword-only arguments, see the :ref:`ufunc docs `.\n", + " | \n", + " | Returns\n", + " | -------\n", + " | r : ndarray or tuple of ndarray\n", + " | `r` will have the shape that the arrays in `x` broadcast to; if `out` is\n", + " | provided, it will be returned. If not, `r` will be allocated and\n", + " | may contain uninitialized values. If the function has more than one\n", + " | output, then the result will be a tuple of arrays.\n", + " | \n", + " | Methods defined here:\n", + " | \n", + " | __call__(self, /, *args, **kwargs)\n", + " | Call self as a function.\n", + " | \n", + " | __repr__(self, /)\n", + " | Return repr(self).\n", + " | \n", + " | __str__(self, /)\n", + " | Return str(self).\n", + " | \n", + " | accumulate(...)\n", + " | accumulate(array, axis=0, dtype=None, out=None)\n", + " | \n", + " | Accumulate the result of applying the operator to all elements.\n", + " | \n", + " | For a one-dimensional array, accumulate produces results equivalent to::\n", + " | \n", + " | r = np.empty(len(A))\n", + " | t = op.identity # op = the ufunc being applied to A's elements\n", + " | for i in range(len(A)):\n", + " | t = op(t, A[i])\n", + " | r[i] = t\n", + " | return r\n", + " | \n", + " | For example, add.accumulate() is equivalent to np.cumsum().\n", + " | \n", + " | For a multi-dimensional array, accumulate is applied along only one\n", + " | axis (axis zero by default; see Examples below) so repeated use is\n", + " | necessary if one wants to accumulate over multiple axes.\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | array : array_like\n", + " | The array to act on.\n", + " | axis : int, optional\n", + " | The axis along which to apply the accumulation; default is zero.\n", + " | dtype : data-type code, optional\n", + " | The data-type used to represent the intermediate results. Defaults\n", + " | to the data-type of the output array if such is provided, or the\n", + " | the data-type of the input array if no output array is provided.\n", + " | out : ndarray, None, or tuple of ndarray and None, optional\n", + " | A location into which the result is stored. If not provided or None,\n", + " | a freshly-allocated array is returned. For consistency with\n", + " | ``ufunc.__call__``, if given as a keyword, this may be wrapped in a\n", + " | 1-element tuple.\n", + " | \n", + " | .. versionchanged:: 1.13.0\n", + " | Tuples are allowed for keyword argument.\n", + " | \n", + " | Returns\n", + " | -------\n", + " | r : ndarray\n", + " | The accumulated values. If `out` was supplied, `r` is a reference to\n", + " | `out`.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | 1-D array examples:\n", + " | \n", + " | >>> np.add.accumulate([2, 3, 5])\n", + " | array([ 2, 5, 10])\n", + " | >>> np.multiply.accumulate([2, 3, 5])\n", + " | array([ 2, 6, 30])\n", + " | \n", + " | 2-D array examples:\n", + " | \n", + " | >>> I = np.eye(2)\n", + " | >>> I\n", + " | array([[1., 0.],\n", + " | [0., 1.]])\n", + " | \n", + " | Accumulate along axis 0 (rows), down columns:\n", + " | \n", + " | >>> np.add.accumulate(I, 0)\n", + " | array([[1., 0.],\n", + " | [1., 1.]])\n", + " | >>> np.add.accumulate(I) # no axis specified = axis zero\n", + " | array([[1., 0.],\n", + " | [1., 1.]])\n", + " | \n", + " | Accumulate along axis 1 (columns), through rows:\n", + " | \n", + " | >>> np.add.accumulate(I, 1)\n", + " | array([[1., 1.],\n", + " | [0., 1.]])\n", + " | \n", + " | at(...)\n", + " | at(a, indices, b=None)\n", + " | \n", + " | Performs unbuffered in place operation on operand 'a' for elements\n", + " | specified by 'indices'. For addition ufunc, this method is equivalent to\n", + " | ``a[indices] += b``, except that results are accumulated for elements that\n", + " | are indexed more than once. For example, ``a[[0,0]] += 1`` will only\n", + " | increment the first element once because of buffering, whereas\n", + " | ``add.at(a, [0,0], 1)`` will increment the first element twice.\n", + " | \n", + " | .. versionadded:: 1.8.0\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | a : array_like\n", + " | The array to perform in place operation on.\n", + " | indices : array_like or tuple\n", + " | Array like index object or slice object for indexing into first\n", + " | operand. If first operand has multiple dimensions, indices can be a\n", + " | tuple of array like index objects or slice objects.\n", + " | b : array_like\n", + " | Second operand for ufuncs requiring two operands. Operand must be\n", + " | broadcastable over first operand after indexing or slicing.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | Set items 0 and 1 to their negative values:\n", + " | \n", + " | >>> a = np.array([1, 2, 3, 4])\n", + " | >>> np.negative.at(a, [0, 1])\n", + " | >>> a\n", + " | array([-1, -2, 3, 4])\n", + " | \n", + " | Increment items 0 and 1, and increment item 2 twice:\n", + " | \n", + " | >>> a = np.array([1, 2, 3, 4])\n", + " | >>> np.add.at(a, [0, 1, 2, 2], 1)\n", + " | >>> a\n", + " | array([2, 3, 5, 4])\n", + " | \n", + " | Add items 0 and 1 in first array to second array,\n", + " | and store results in first array:\n", + " | \n", + " | >>> a = np.array([1, 2, 3, 4])\n", + " | >>> b = np.array([1, 2])\n", + " | >>> np.add.at(a, [0, 1], b)\n", + " | >>> a\n", + " | array([2, 4, 3, 4])\n", + " | \n", + " | outer(...)\n", + " | outer(A, B, **kwargs)\n", + " | \n", + " | Apply the ufunc `op` to all pairs (a, b) with a in `A` and b in `B`.\n", + " | \n", + " | Let ``M = A.ndim``, ``N = B.ndim``. Then the result, `C`, of\n", + " | ``op.outer(A, B)`` is an array of dimension M + N such that:\n", + " | \n", + " | .. math:: C[i_0, ..., i_{M-1}, j_0, ..., j_{N-1}] =\n", + " | op(A[i_0, ..., i_{M-1}], B[j_0, ..., j_{N-1}])\n", + " | \n", + " | For `A` and `B` one-dimensional, this is equivalent to::\n", + " | \n", + " | r = empty(len(A),len(B))\n", + " | for i in range(len(A)):\n", + " | for j in range(len(B)):\n", + " | r[i,j] = op(A[i], B[j]) # op = ufunc in question\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | A : array_like\n", + " | First array\n", + " | B : array_like\n", + " | Second array\n", + " | kwargs : any\n", + " | Arguments to pass on to the ufunc. Typically `dtype` or `out`.\n", + " | \n", + " | Returns\n", + " | -------\n", + " | r : ndarray\n", + " | Output array\n", + " | \n", + " | See Also\n", + " | --------\n", + " | numpy.outer : A less powerful version of ``np.multiply.outer``\n", + " | that `ravel`\\ s all inputs to 1D. This exists\n", + " | primarily for compatibility with old code.\n", + " | \n", + " | tensordot : ``np.tensordot(a, b, axes=((), ()))`` and\n", + " | ``np.multiply.outer(a, b)`` behave same for all\n", + " | dimensions of a and b.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.multiply.outer([1, 2, 3], [4, 5, 6])\n", + " | array([[ 4, 5, 6],\n", + " | [ 8, 10, 12],\n", + " | [12, 15, 18]])\n", + " | \n", + " | A multi-dimensional example:\n", + " | \n", + " | >>> A = np.array([[1, 2, 3], [4, 5, 6]])\n", + " | >>> A.shape\n", + " | (2, 3)\n", + " | >>> B = np.array([[1, 2, 3, 4]])\n", + " | >>> B.shape\n", + " | (1, 4)\n", + " | >>> C = np.multiply.outer(A, B)\n", + " | >>> C.shape; C\n", + " | (2, 3, 1, 4)\n", + " | array([[[[ 1, 2, 3, 4]],\n", + " | [[ 2, 4, 6, 8]],\n", + " | [[ 3, 6, 9, 12]]],\n", + " | [[[ 4, 8, 12, 16]],\n", + " | [[ 5, 10, 15, 20]],\n", + " | [[ 6, 12, 18, 24]]]])\n", + " | \n", + " | reduce(...)\n", + " | reduce(a, axis=0, dtype=None, out=None, keepdims=False, initial=, where=True)\n", + " | \n", + " | Reduces `a`'s dimension by one, by applying ufunc along one axis.\n", + " | \n", + " | Let :math:`a.shape = (N_0, ..., N_i, ..., N_{M-1})`. Then\n", + " | :math:`ufunc.reduce(a, axis=i)[k_0, ..,k_{i-1}, k_{i+1}, .., k_{M-1}]` =\n", + " | the result of iterating `j` over :math:`range(N_i)`, cumulatively applying\n", + " | ufunc to each :math:`a[k_0, ..,k_{i-1}, j, k_{i+1}, .., k_{M-1}]`.\n", + " | For a one-dimensional array, reduce produces results equivalent to:\n", + " | ::\n", + " | \n", + " | r = op.identity # op = ufunc\n", + " | for i in range(len(A)):\n", + " | r = op(r, A[i])\n", + " | return r\n", + " | \n", + " | For example, add.reduce() is equivalent to sum().\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | a : array_like\n", + " | The array to act on.\n", + " | axis : None or int or tuple of ints, optional\n", + " | Axis or axes along which a reduction is performed.\n", + " | The default (`axis` = 0) is perform a reduction over the first\n", + " | dimension of the input array. `axis` may be negative, in\n", + " | which case it counts from the last to the first axis.\n", + " | \n", + " | .. versionadded:: 1.7.0\n", + " | \n", + " | If this is None, a reduction is performed over all the axes.\n", + " | If this is a tuple of ints, a reduction is performed on multiple\n", + " | axes, instead of a single axis or all the axes as before.\n", + " | \n", + " | For operations which are either not commutative or not associative,\n", + " | doing a reduction over multiple axes is not well-defined. The\n", + " | ufuncs do not currently raise an exception in this case, but will\n", + " | likely do so in the future.\n", + " | dtype : data-type code, optional\n", + " | The type used to represent the intermediate results. Defaults\n", + " | to the data-type of the output array if this is provided, or\n", + " | the data-type of the input array if no output array is provided.\n", + " | out : ndarray, None, or tuple of ndarray and None, optional\n", + " | A location into which the result is stored. If not provided or None,\n", + " | a freshly-allocated array is returned. For consistency with\n", + " | ``ufunc.__call__``, if given as a keyword, this may be wrapped in a\n", + " | 1-element tuple.\n", + " | \n", + " | .. versionchanged:: 1.13.0\n", + " | Tuples are allowed for keyword argument.\n", + " | keepdims : bool, optional\n", + " | If this is set to True, the axes which are reduced are left\n", + " | in the result as dimensions with size one. With this option,\n", + " | the result will broadcast correctly against the original `arr`.\n", + " | \n", + " | .. versionadded:: 1.7.0\n", + " | initial : scalar, optional\n", + " | The value with which to start the reduction.\n", + " | If the ufunc has no identity or the dtype is object, this defaults\n", + " | to None - otherwise it defaults to ufunc.identity.\n", + " | If ``None`` is given, the first element of the reduction is used,\n", + " | and an error is thrown if the reduction is empty.\n", + " | \n", + " | .. versionadded:: 1.15.0\n", + " | \n", + " | where : array_like of bool, optional\n", + " | A boolean array which is broadcasted to match the dimensions\n", + " | of `a`, and selects elements to include in the reduction. Note\n", + " | that for ufuncs like ``minimum`` that do not have an identity\n", + " | defined, one has to pass in also ``initial``.\n", + " | \n", + " | .. versionadded:: 1.17.0\n", + " | \n", + " | Returns\n", + " | -------\n", + " | r : ndarray\n", + " | The reduced array. If `out` was supplied, `r` is a reference to it.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.multiply.reduce([2,3,5])\n", + " | 30\n", + " | \n", + " | A multi-dimensional array example:\n", + " | \n", + " | >>> X = np.arange(8).reshape((2,2,2))\n", + " | >>> X\n", + " | array([[[0, 1],\n", + " | [2, 3]],\n", + " | [[4, 5],\n", + " | [6, 7]]])\n", + " | >>> np.add.reduce(X, 0)\n", + " | array([[ 4, 6],\n", + " | [ 8, 10]])\n", + " | >>> np.add.reduce(X) # confirm: default axis value is 0\n", + " | array([[ 4, 6],\n", + " | [ 8, 10]])\n", + " | >>> np.add.reduce(X, 1)\n", + " | array([[ 2, 4],\n", + " | [10, 12]])\n", + " | >>> np.add.reduce(X, 2)\n", + " | array([[ 1, 5],\n", + " | [ 9, 13]])\n", + " | \n", + " | You can use the ``initial`` keyword argument to initialize the reduction\n", + " | with a different value, and ``where`` to select specific elements to include:\n", + " | \n", + " | >>> np.add.reduce([10], initial=5)\n", + " | 15\n", + " | >>> np.add.reduce(np.ones((2, 2, 2)), axis=(0, 2), initial=10)\n", + " | array([14., 14.])\n", + " | >>> a = np.array([10., np.nan, 10])\n", + " | >>> np.add.reduce(a, where=~np.isnan(a))\n", + " | 20.0\n", + " | \n", + " | Allows reductions of empty arrays where they would normally fail, i.e.\n", + " | for ufuncs without an identity.\n", + " | \n", + " | >>> np.minimum.reduce([], initial=np.inf)\n", + " | inf\n", + " | >>> np.minimum.reduce([[1., 2.], [3., 4.]], initial=10., where=[True, False])\n", + " | array([ 1., 10.])\n", + " | >>> np.minimum.reduce([])\n", + " | Traceback (most recent call last):\n", + " | ...\n", + " | ValueError: zero-size array to reduction operation minimum which has no identity\n", + " | \n", + " | reduceat(...)\n", + " | reduceat(a, indices, axis=0, dtype=None, out=None)\n", + " | \n", + " | Performs a (local) reduce with specified slices over a single axis.\n", + " | \n", + " | For i in ``range(len(indices))``, `reduceat` computes\n", + " | ``ufunc.reduce(a[indices[i]:indices[i+1]])``, which becomes the i-th\n", + " | generalized \"row\" parallel to `axis` in the final result (i.e., in a\n", + " | 2-D array, for example, if `axis = 0`, it becomes the i-th row, but if\n", + " | `axis = 1`, it becomes the i-th column). There are three exceptions to this:\n", + " | \n", + " | * when ``i = len(indices) - 1`` (so for the last index),\n", + " | ``indices[i+1] = a.shape[axis]``.\n", + " | * if ``indices[i] >= indices[i + 1]``, the i-th generalized \"row\" is\n", + " | simply ``a[indices[i]]``.\n", + " | * if ``indices[i] >= len(a)`` or ``indices[i] < 0``, an error is raised.\n", + " | \n", + " | The shape of the output depends on the size of `indices`, and may be\n", + " | larger than `a` (this happens if ``len(indices) > a.shape[axis]``).\n", + " | \n", + " | Parameters\n", + " | ----------\n", + " | a : array_like\n", + " | The array to act on.\n", + " | indices : array_like\n", + " | Paired indices, comma separated (not colon), specifying slices to\n", + " | reduce.\n", + " | axis : int, optional\n", + " | The axis along which to apply the reduceat.\n", + " | dtype : data-type code, optional\n", + " | The type used to represent the intermediate results. Defaults\n", + " | to the data type of the output array if this is provided, or\n", + " | the data type of the input array if no output array is provided.\n", + " | out : ndarray, None, or tuple of ndarray and None, optional\n", + " | A location into which the result is stored. If not provided or None,\n", + " | a freshly-allocated array is returned. For consistency with\n", + " | ``ufunc.__call__``, if given as a keyword, this may be wrapped in a\n", + " | 1-element tuple.\n", + " | \n", + " | .. versionchanged:: 1.13.0\n", + " | Tuples are allowed for keyword argument.\n", + " | \n", + " | Returns\n", + " | -------\n", + " | r : ndarray\n", + " | The reduced values. If `out` was supplied, `r` is a reference to\n", + " | `out`.\n", + " | \n", + " | Notes\n", + " | -----\n", + " | A descriptive example:\n", + " | \n", + " | If `a` is 1-D, the function `ufunc.accumulate(a)` is the same as\n", + " | ``ufunc.reduceat(a, indices)[::2]`` where `indices` is\n", + " | ``range(len(array) - 1)`` with a zero placed\n", + " | in every other element:\n", + " | ``indices = zeros(2 * len(a) - 1)``, ``indices[1::2] = range(1, len(a))``.\n", + " | \n", + " | Don't be fooled by this attribute's name: `reduceat(a)` is not\n", + " | necessarily smaller than `a`.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | To take the running sum of four successive values:\n", + " | \n", + " | >>> np.add.reduceat(np.arange(8),[0,4, 1,5, 2,6, 3,7])[::2]\n", + " | array([ 6, 10, 14, 18])\n", + " | \n", + " | A 2-D example:\n", + " | \n", + " | >>> x = np.linspace(0, 15, 16).reshape(4,4)\n", + " | >>> x\n", + " | array([[ 0., 1., 2., 3.],\n", + " | [ 4., 5., 6., 7.],\n", + " | [ 8., 9., 10., 11.],\n", + " | [12., 13., 14., 15.]])\n", + " | \n", + " | ::\n", + " | \n", + " | # reduce such that the result has the following five rows:\n", + " | # [row1 + row2 + row3]\n", + " | # [row4]\n", + " | # [row2]\n", + " | # [row3]\n", + " | # [row1 + row2 + row3 + row4]\n", + " | \n", + " | >>> np.add.reduceat(x, [0, 3, 1, 2, 0])\n", + " | array([[12., 15., 18., 21.],\n", + " | [12., 13., 14., 15.],\n", + " | [ 4., 5., 6., 7.],\n", + " | [ 8., 9., 10., 11.],\n", + " | [24., 28., 32., 36.]])\n", + " | \n", + " | ::\n", + " | \n", + " | # reduce such that result has the following two columns:\n", + " | # [col1 * col2 * col3, col4]\n", + " | \n", + " | >>> np.multiply.reduceat(x, [0, 3], 1)\n", + " | array([[ 0., 3.],\n", + " | [ 120., 7.],\n", + " | [ 720., 11.],\n", + " | [2184., 15.]])\n", + " | \n", + " | ----------------------------------------------------------------------\n", + " | Data descriptors defined here:\n", + " | \n", + " | identity\n", + " | The identity value.\n", + " | \n", + " | Data attribute containing the identity element for the ufunc, if it has one.\n", + " | If it does not, the attribute value is None.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.identity\n", + " | 0\n", + " | >>> np.multiply.identity\n", + " | 1\n", + " | >>> np.power.identity\n", + " | 1\n", + " | >>> print(np.exp.identity)\n", + " | None\n", + " | \n", + " | nargs\n", + " | The number of arguments.\n", + " | \n", + " | Data attribute containing the number of arguments the ufunc takes, including\n", + " | optional ones.\n", + " | \n", + " | Notes\n", + " | -----\n", + " | Typically this value will be one more than what you might expect because all\n", + " | ufuncs take the optional \"out\" argument.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.nargs\n", + " | 3\n", + " | >>> np.multiply.nargs\n", + " | 3\n", + " | >>> np.power.nargs\n", + " | 3\n", + " | >>> np.exp.nargs\n", + " | 2\n", + " | \n", + " | nin\n", + " | The number of inputs.\n", + " | \n", + " | Data attribute containing the number of arguments the ufunc treats as input.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.nin\n", + " | 2\n", + " | >>> np.multiply.nin\n", + " | 2\n", + " | >>> np.power.nin\n", + " | 2\n", + " | >>> np.exp.nin\n", + " | 1\n", + " | \n", + " | nout\n", + " | The number of outputs.\n", + " | \n", + " | Data attribute containing the number of arguments the ufunc treats as output.\n", + " | \n", + " | Notes\n", + " | -----\n", + " | Since all ufuncs can take output arguments, this will always be (at least) 1.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.nout\n", + " | 1\n", + " | >>> np.multiply.nout\n", + " | 1\n", + " | >>> np.power.nout\n", + " | 1\n", + " | >>> np.exp.nout\n", + " | 1\n", + " | \n", + " | ntypes\n", + " | The number of types.\n", + " | \n", + " | The number of numerical NumPy types - of which there are 18 total - on which\n", + " | the ufunc can operate.\n", + " | \n", + " | See Also\n", + " | --------\n", + " | numpy.ufunc.types\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.ntypes\n", + " | 18\n", + " | >>> np.multiply.ntypes\n", + " | 18\n", + " | >>> np.power.ntypes\n", + " | 17\n", + " | >>> np.exp.ntypes\n", + " | 7\n", + " | >>> np.remainder.ntypes\n", + " | 14\n", + " | \n", + " | signature\n", + " | Definition of the core elements a generalized ufunc operates on.\n", + " | \n", + " | The signature determines how the dimensions of each input/output array\n", + " | are split into core and loop dimensions:\n", + " | \n", + " | 1. Each dimension in the signature is matched to a dimension of the\n", + " | corresponding passed-in array, starting from the end of the shape tuple.\n", + " | 2. Core dimensions assigned to the same label in the signature must have\n", + " | exactly matching sizes, no broadcasting is performed.\n", + " | 3. The core dimensions are removed from all inputs and the remaining\n", + " | dimensions are broadcast together, defining the loop dimensions.\n", + " | \n", + " | Notes\n", + " | -----\n", + " | Generalized ufuncs are used internally in many linalg functions, and in\n", + " | the testing suite; the examples below are taken from these.\n", + " | For ufuncs that operate on scalars, the signature is None, which is\n", + " | equivalent to '()' for every argument.\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.core.umath_tests.matrix_multiply.signature\n", + " | '(m,n),(n,p)->(m,p)'\n", + " | >>> np.linalg._umath_linalg.det.signature\n", + " | '(m,m)->()'\n", + " | >>> np.add.signature is None\n", + " | True # equivalent to '(),()->()'\n", + " | \n", + " | types\n", + " | Returns a list with types grouped input->output.\n", + " | \n", + " | Data attribute listing the data-type \"Domain-Range\" groupings the ufunc can\n", + " | deliver. The data-types are given using the character codes.\n", + " | \n", + " | See Also\n", + " | --------\n", + " | numpy.ufunc.ntypes\n", + " | \n", + " | Examples\n", + " | --------\n", + " | >>> np.add.types\n", + " | ['??->?', 'bb->b', 'BB->B', 'hh->h', 'HH->H', 'ii->i', 'II->I', 'll->l',\n", + " | 'LL->L', 'qq->q', 'QQ->Q', 'ff->f', 'dd->d', 'gg->g', 'FF->F', 'DD->D',\n", + " | 'GG->G', 'OO->O']\n", + " | \n", + " | >>> np.multiply.types\n", + " | ['??->?', 'bb->b', 'BB->B', 'hh->h', 'HH->H', 'ii->i', 'II->I', 'll->l',\n", + " | 'LL->L', 'qq->q', 'QQ->Q', 'ff->f', 'dd->d', 'gg->g', 'FF->F', 'DD->D',\n", + " | 'GG->G', 'OO->O']\n", + " | \n", + " | >>> np.power.types\n", + " | ['bb->b', 'BB->B', 'hh->h', 'HH->H', 'ii->i', 'II->I', 'll->l', 'LL->L',\n", + " | 'qq->q', 'QQ->Q', 'ff->f', 'dd->d', 'gg->g', 'FF->F', 'DD->D', 'GG->G',\n", + " | 'OO->O']\n", + " | \n", + " | >>> np.exp.types\n", + " | ['f->f', 'd->d', 'g->g', 'F->F', 'D->D', 'G->G', 'O->O']\n", + " | \n", + " | >>> np.remainder.types\n", + " | ['bb->b', 'BB->B', 'hh->h', 'HH->H', 'ii->i', 'II->I', 'll->l', 'LL->L',\n", + " | 'qq->q', 'QQ->Q', 'ff->f', 'dd->d', 'gg->g', 'OO->O']\n", + "\n" + ] + } + ], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python [conda env:root] *", + "language": "python", + "name": "conda-root-py" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/poem/.ipynb_checkpoints/distfield-checkpoint.png b/poem/.ipynb_checkpoints/distfield-checkpoint.png new file mode 100644 index 0000000..18e7b1b Binary files /dev/null and b/poem/.ipynb_checkpoints/distfield-checkpoint.png differ diff --git a/poem/.ipynb_checkpoints/image-checkpoint.png b/poem/.ipynb_checkpoints/image-checkpoint.png new file mode 100644 index 0000000..4749d36 Binary files /dev/null and b/poem/.ipynb_checkpoints/image-checkpoint.png differ diff --git a/poem/.ipynb_checkpoints/index-checkpoint.html b/poem/.ipynb_checkpoints/index-checkpoint.html new file mode 100644 index 0000000..ac541ac --- /dev/null +++ b/poem/.ipynb_checkpoints/index-checkpoint.html @@ -0,0 +1,14 @@ + + + + + + + + + + +
+ +
+ diff --git a/poem/.ipynb_checkpoints/sketch-checkpoint.js b/poem/.ipynb_checkpoints/sketch-checkpoint.js new file mode 100644 index 0000000..a22ff20 --- /dev/null +++ b/poem/.ipynb_checkpoints/sketch-checkpoint.js @@ -0,0 +1,104 @@ + +let w = 200; +let stepsize = 1; +let Nwalkers = 300; +let fr = 30; +let beta = 0.1; //beta = 0 chooses infinite temperature, beta = inf forces the walkers to go only towards the gradient +let betaslider; + +let radio; + +let cw = 500; +let canvas, src, pg; + +let walkerpos = [] + +let transparent; + + +function proposal(pos) {} + +let img; +let distfield; +function preload() { + img = loadImage('CV_image.png'); + distfield = loadImage('CV_distfield.png'); +} + +let dist, showdist, showtarget, showpaths, showwalkers; +let step; +let newpos; + +function setup() { + console.log('canvas has size: ', img.width, img.height); + canvas = createCanvas(img.width, img.height); + canvas.parent('sketch-holder'); + //pixelDensity(1); + //let d = pixelDensity(); + frameRate(fr); + + betaslider = createSlider(0, 1, 0.5, 0.0001); + //betaslider.position(10, 10); + betaslider.style('width', '80px'); + + showdist = createCheckbox('Show distance function', false); + showtarget = createCheckbox('Show target image', false); + showpaths = createCheckbox('Show paths', true); + showwalkers = createCheckbox('Show walkers', true); + + overlay = createGraphics(windowWidth, windowHeight); + overlay.pixelDensity(1); + overlay.background(color(0,0,0,0)); + + dist = function(pos) { + return distfield.get(pos.x, pos.y)[0]; + } + + colorMode(HSL); + + walkers = []; + for(let i = 0; i < Nwalkers; i += 1) { + append(walkerpos, createVector(random(width), random(height))); + } + + step = createVector(0,0); +} + +let b; +function draw() { + background(255); + if(showdist.checked()) image(distfield, 0, 0); //the min distance to the nearest non white pixel in the target image + if(showtarget.checked()) image(img, 0, 0); //the target image + if(showpaths.checked()) { + //tint(255, 5e6 / frameCount / Nwalkers); + image(overlay, 0, 0); + } + + //text(dist(createVector(mouseX, mouseY)), width/2, height/2); + //text(overlay.get(mouseX, mouseY), width/2, height/2); + + beta = betaslider.value(); + beta = beta / (1 - beta); + + overlay.loadPixels(); + for(let i = 0; i < Nwalkers; i += 1) { + //let debug = Math.sqrt((mouseX - walkerpos[i].x)**2 + (mouseY - walkerpos[i].y)**2) < 10; + step.x = 2*stepsize*(random() - 0.5); + step.y = 2*stepsize*(random() - 0.5); + newpos = p5.Vector.add(walkerpos[i], step); + let df = dist(newpos) - dist(walkerpos[i]); + if(df > 0 | exp(beta * df) > random(1.0)) { + walkerpos[i].add(step); + } + //if(showwalkers.checked()) circle(walkerpos[i].x, walkerpos[i].y, 3); + if(showwalkers.checked()) set(walkerpos[i].x, walkerpos[i].y); + + // loop over + index = 4 * (int(walkerpos[i].y) * overlay.width + int(walkerpos[i].x)); + b = overlay.pixels[index+3] + 5 + overlay.pixels[index+3] = b; + } + overlay.updatePixels(); + + +} \ No newline at end of file diff --git a/poem/.ipynb_checkpoints/style-checkpoint.css b/poem/.ipynb_checkpoints/style-checkpoint.css new file mode 100644 index 0000000..a952ec5 --- /dev/null +++ b/poem/.ipynb_checkpoints/style-checkpoint.css @@ -0,0 +1,13 @@ +html, body { + margin: 0; + padding: 0; +} + +#sketch-holder { + padding-left: 0; + padding-right: 0; + margin-left: auto; + margin-right: auto; + display: block; + width: 500px; +} diff --git a/poem/CV_distfield.png b/poem/CV_distfield.png new file mode 100644 index 0000000..14f0348 Binary files /dev/null and b/poem/CV_distfield.png differ diff --git a/poem/CV_image.png b/poem/CV_image.png new file mode 100644 index 0000000..ac3030b Binary files /dev/null and b/poem/CV_image.png differ diff --git a/poem/compute_distance_field.ipynb b/poem/compute_distance_field.ipynb index 11a90c1..f1d0165 100644 --- a/poem/compute_distance_field.ipynb +++ b/poem/compute_distance_field.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 1, + "execution_count": 21, "metadata": {}, "outputs": [ { @@ -11,12 +11,13 @@ "('PNG', (500, 500), 'RGBA', (500, 500, 4))" ] }, - "execution_count": 1, + "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ + "from traceback_with_variables import activate_in_ipython_by_import\n", "from PIL import Image\n", "import numpy as np\n", "im = Image.open(\"image.png\")\n", @@ -45,7 +46,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 22, "metadata": {}, "outputs": [], "source": [ @@ -55,7 +56,7 @@ }, { "cell_type": "code", - "execution_count": 65, + "execution_count": 23, "metadata": {}, "outputs": [ { @@ -72,18 +73,18 @@ "7\n", "8\n", "9\n", - "CPU times: user 21.3 s, sys: 21.7 s, total: 42.9 s\n", - "Wall time: 48.4 s\n" + "CPU times: user 21 s, sys: 14.8 s, total: 35.8 s\n", + "Wall time: 36 s\n" ] } ], "source": [ "%%time\n", "pixels = np.array(np.where(1 - src))\n", - "I = np.arange(500).reshape(-1,1,1)\n", - "J = np.arange(500).reshape(1,-1,1)\n", + "I = np.arange(src.shape[0]).reshape(-1,1,1)\n", + "J = np.arange(src.shape[1]).reshape(1,-1,1)\n", "\n", - "dist = np.ones((500,500)) * 1000\n", + "dist = np.ones(src.shape) * 1000\n", "for k in range(10):\n", " print(k)\n", " i, j = pixels[:, k::10].reshape(2, 1, 1, -1)\n", @@ -92,51 +93,38 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "1\n", - "0\n", - "2\n", "3\n", - "4\n", - "5\n", - "7\n", - "6\n", - "8\n", - "9\n", - "CPU times: user 235 ms, sys: 255 ms, total: 490 ms\n", - "Wall time: 3min 38s\n" + "2\n", + "0\n", + "1\n" ] }, { - "data": { - "text/plain": [ - "array([[112.48555463, 111.75866857, 111.03603019, ..., 156.77372229,\n", - " 157.62296787, 158.47397263],\n", - " [111.80339887, 111.07204869, 110.34491379, ..., 156.24659996,\n", - " 157.09869509, 157.95252451],\n", - " [111.12605455, 110.39021696, 109.658561 , ..., 155.72411502,\n", - " 156.57905352, 157.43570116],\n", - " ...,\n", - " [105.42295765, 104.63746939, 103.85566908, ..., 187.52333188,\n", - " 188.36666372, 189.21152185],\n", - " [106.04244433, 105.26157894, 104.4844486 , ..., 188.06381896,\n", - " 188.9047379 , 189.74720024],\n", - " [106.66770833, 105.89145386, 105.11898021, ..., 188.60805921,\n", - " 189.44656239, 190.28662591]])" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.7/multiprocessing/pool.py\u001b[0m in \u001b[0;36mmap\u001b[0;34m(self, func, iterable, chunksize)\u001b[0m\n\u001b[1;32m 266\u001b[0m \u001b[0;32min\u001b[0m \u001b[0ma\u001b[0m \u001b[0mlist\u001b[0m \u001b[0mthat\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0mreturned\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 267\u001b[0m '''\n\u001b[0;32m--> 268\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_map_async\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfunc\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0miterable\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmapstar\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mchunksize\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 269\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 270\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mstarmap\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfunc\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0miterable\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mchunksize\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.7/multiprocessing/pool.py\u001b[0m in \u001b[0;36mget\u001b[0;34m(self, timeout)\u001b[0m\n\u001b[1;32m 649\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 650\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtimeout\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 651\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwait\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtimeout\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 652\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mready\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 653\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mTimeoutError\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.7/multiprocessing/pool.py\u001b[0m in \u001b[0;36mwait\u001b[0;34m(self, timeout)\u001b[0m\n\u001b[1;32m 646\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 647\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mwait\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtimeout\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 648\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_event\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwait\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtimeout\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 649\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 650\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtimeout\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.7/threading.py\u001b[0m in \u001b[0;36mwait\u001b[0;34m(self, timeout)\u001b[0m\n\u001b[1;32m 550\u001b[0m \u001b[0msignaled\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_flag\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 551\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0msignaled\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 552\u001b[0;31m \u001b[0msignaled\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_cond\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwait\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtimeout\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 553\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0msignaled\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 554\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/miniconda3/lib/python3.7/threading.py\u001b[0m in \u001b[0;36mwait\u001b[0;34m(self, timeout)\u001b[0m\n\u001b[1;32m 294\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;31m# restore state no matter what (e.g., KeyboardInterrupt)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 295\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mtimeout\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 296\u001b[0;31m \u001b[0mwaiter\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0macquire\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 297\u001b[0m \u001b[0mgotit\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 298\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " + ] } ], "source": [ + "\"\"\"\n", "%%time\n", "pixels = np.array(np.where(1 - src))[:, :]\n", "I = np.arange(500).reshape(-1,1,1)\n", @@ -153,22 +141,23 @@ "import multiprocessing as mpl\n", "with mpl.Pool(4) as p:\n", " dist = np.min(p.map(compute, range(groups), chunksize = 1), axis = 0)\n", - "dist" + "dist\n", + "\"\"\"" ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ - "" + "" ] }, - "execution_count": 4, + "execution_count": 24, "metadata": {}, "output_type": "execute_result" } @@ -184,16 +173,16 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 6, + "execution_count": 25, "metadata": {}, "output_type": "execute_result" }, @@ -220,6 +209,414 @@ "axes[1].vlines(threshold, *axes[1].get_ylim(), linestyle = '--')" ] }, + { + "cell_type": "code", + "execution_count": 357, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "What is the value of a fact?
\n", + "a question theoretical
\n", + "answers are asymmetrical
\n", + "given your comfort with abstracts.
\n", + "
\n", + "You may feel personally attacked
\n", + "or held within the metrical
\n", + "we research the aesthetical
\n", + "how the world’s forces interact.
\n", + "
\n", + "Boundaries expanded at college
\n", + "lead to discoveries anew
\n", + "this far from being vanity
\n", + "increase our collective knowledge
\n", + "applied, we hope, life will improve
\n", + "for the good of humanity.
\n", + "\n" + ] + } + ], + "source": [ + "poem = \"\"\"What is the value of a fact?\n", + "a question theoretical\n", + "answers are asymmetrical\n", + "given your comfort with abstracts.\n", + "\n", + "You may feel personally attacked\n", + "or held within the metrical\n", + "we research the aesthetical –\n", + "how the world’s forces interact.\n", + "\n", + "Boundaries expanded at college\n", + "lead to discoveries anew\n", + "this – far from being vanity –\n", + "increase our collective knowledge\n", + "applied, we hope, life will improve\n", + "for the good of humanity.\n", + "\"\"\"\n", + "print(\"
\\n\".join(\"\".join(f\"{word} \" for word in line.split()) for line in poem.split('\\n')))" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[['There’s', 'chaos', 'in', 'the', 'shimmering', 'heat,'],\n", + " ['All', 'jives', 'and', 'jostles,', 'structures', 'melt', 'and'],\n", + " ['Order', 'boils', 'until', 'absence', 'is', 'complete,'],\n", + " ['Of', 'pattern', 'in', 'the', 'scorching', 'shifting', 'sand.'],\n", + " [],\n", + " ['While', 'bitter,', 'on', 'the', 'other', 'side,', 'jutting'],\n", + " ['Great', 'crystal', 'castles.', 'Lattice', 'works', 'of', 'ice.'],\n", + " ['Their', 'shear', 'edges', 'almost', 'touching,', 'cutting'],\n", + " ['Cleaving', 'space', 'apart,', 'to', 'each', 'a', 'separate', 'slice.'],\n", + " [],\n", + " ['It’s', 'in', 'between', 'that', 'pattern', 'start', 'to', 'dance,'],\n", + " ['merging', 'melting', 'bodies,', 'all', 'together.'],\n", + " ['Hypnotic', 'orchestras', 'dictate', 'their', 'trance.'],\n", + " ['Connected', 'through', 'some', 'esoteric', 'aether.'],\n", + " [],\n", + " ['These', 'littles', 'worlds', 'found', 'only', 'at', 'the', 'borders'],\n", + " ['create', 'their', 'own', 'unique', 'and', 'gentle', 'orders']]" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[line.split() for line in poem.split('\\n')]" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['There’s chaos in the shimmering heat,',\n", + " 'All jives and jostles, structures melt and',\n", + " 'Order boils until absence is complete,',\n", + " 'Of pattern in the scorching shifting sand.',\n", + " '',\n", + " 'While bitter, on the other side, jutting',\n", + " 'Great crystal castles. Lattice works of ice.',\n", + " 'Their shear edges almost touching, cutting',\n", + " 'Cleaving space apart, to each a separate slice.',\n", + " '',\n", + " 'It’s in between that pattern start to dance,',\n", + " 'merging melting bodies, all together. ',\n", + " 'Hypnotic orchestras dictate their trance. ',\n", + " 'Connected through some esoteric aether.',\n", + " '',\n", + " 'These littles worlds found only at the borders',\n", + " ' create their own unique and gentle orders ']" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[line for line in poem.split('\\n')]" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "\n", + "\n", + "321\n" + ] + }, + { + "data": { + "text/plain": [ + "322" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "#definitions\n", + "example_string = \"It was the best of times, it was the worst of times.\"\n", + "l = [\"one\",2,'goal',4,5]\n", + "\n", + "#functions and methods\n", + "#functions: print, str\n", + "\n", + "#def name_of_the_function(arg1, arg2, arg3):\n", + " #lines \n", + " #of \n", + " #code \n", + "# return values\n", + "\n", + "def number_reverse(num):\n", + " print(type(num))\n", + " string = str(num)\n", + " print(type(string))\n", + " string = string[::-1]\n", + " print(type(string))\n", + " reversed_num = int(string)\n", + " print(reversed_num)\n", + " return reversed_num\n", + " \n", + "a = number_reverse(123)\n", + "a + 1" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\u001b[36mTraceback with variables (most recent call last):\u001b[0m\n", + "\u001b[36m File \"\u001b[0m\u001b[36;1m\u001b[0m\u001b[36m\", line \u001b[0m\u001b[36;1m18\u001b[0m\u001b[36m, in \u001b[0m\u001b[36;1m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[35mcode = countryname_to_code(name)\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m__name__\u001b[0m\u001b[36m = \u001b[0m'__main__'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m__doc__\u001b[0m\u001b[36m = \u001b[0m'Automatically created module for IPython interactive environment'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m__package__\u001b[0m\u001b[36m = \u001b[0mNone\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m__loader__\u001b[0m\u001b[36m = \u001b[0mNone\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m__spec__\u001b[0m\u001b[36m = \u001b[0mNone\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m__builtin__\u001b[0m\u001b[36m = \u001b[0m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m__builtins__\u001b[0m\u001b[36m = \u001b[0m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_ih\u001b[0m\u001b[36m = \u001b[0m['', '#definitions\\nexample_string = \"It was the best of times, it was the worst of times.\"\\nl = [\"one\",2,\\'goal\\',4,5]\\n\\n#functions and methods\\n#functions: print, str\\n\\n#def name_of_the_function(arg1, arg2, arg3):\\n #lines \\n #of \\n #code \\n# return values\\n\\ndef number_reverse(num):\\n print(num)\\n string = str(num)\\n print(string)\\n string = string[::-1]\\n print(string)\\n reversed_num = int(string)\\n return reversed_num\\n print(reversed_num)\\n \\na = number_reverse(123)', '#definitions\\nexample_string = \"It was the best of times, it was the worst of times.\"\\nl = [\"one\",2,\\'goal\\',4,5]\\n\\n#functions and methods\\n#functions: print, str\\n\\n#def name_of_the_function(arg1, arg2, arg3):\\n #lines \\n #of \\n #code \\n# return values\\n\\ndef number_reverse(num):\\n print(num)\\n string = str(num)\\n print(string)\\n string = string[::-1]\\n print(string)\\n reversed_num = int(string)\\n print(reversed_num)\\n return reversed_nu...\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_oh\u001b[0m\u001b[36m = \u001b[0m{5: 322, 7: , 8: ['UK', 'Germany', 'France', 'Egypt'], 9: ['UK', 'Germany', 'France', 'Egypt', 'USA'], 11: ['UK', 'USA', 'Germany', 'France'], 12: 'USA', 13: True, 15: True, 16: ['UK', 'USA', 'Germany', 'France'], 19: ['UK', 'Germany', 'France'], 20: ['GB', 'DE', 'FR'], 21: ('PNG', (500, 500), 'RGBA', (500, 500, 4))}\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_dh\u001b[0m\u001b[36m = \u001b[0m['/Users/tom/git/tomhodson.github.com/poem']\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mIn\u001b[0m\u001b[36m = \u001b[0m['', '#definitions\\nexample_string = \"It was the best of times, it was the worst of times.\"\\nl = [\"one\",2,\\'goal\\',4,5]\\n\\n#functions and methods\\n#functions: print, str\\n\\n#def name_of_the_function(arg1, arg2, arg3):\\n #lines \\n #of \\n #code \\n# return values\\n\\ndef number_reverse(num):\\n print(num)\\n string = str(num)\\n print(string)\\n string = string[::-1]\\n print(string)\\n reversed_num = int(string)\\n return reversed_num\\n print(reversed_num)\\n \\na = number_reverse(123)', '#definitions\\nexample_string = \"It was the best of times, it was the worst of times.\"\\nl = [\"one\",2,\\'goal\\',4,5]\\n\\n#functions and methods\\n#functions: print, str\\n\\n#def name_of_the_function(arg1, arg2, arg3):\\n #lines \\n #of \\n #code \\n# return values\\n\\ndef number_reverse(num):\\n print(num)\\n string = str(num)\\n print(string)\\n string = string[::-1]\\n print(string)\\n reversed_num = int(string)\\n print(reversed_num)\\n return reversed_nu...\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mOut\u001b[0m\u001b[36m = \u001b[0m{5: 322, 7: , 8: ['UK', 'Germany', 'France', 'Egypt'], 9: ['UK', 'Germany', 'France', 'Egypt', 'USA'], 11: ['UK', 'USA', 'Germany', 'France'], 12: 'USA', 13: True, 15: True, 16: ['UK', 'USA', 'Germany', 'France'], 19: ['UK', 'Germany', 'France'], 20: ['GB', 'DE', 'FR'], 21: ('PNG', (500, 500), 'RGBA', (500, 500, 4))}\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mget_ipython\u001b[0m\u001b[36m = \u001b[0m>\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mexit\u001b[0m\u001b[36m = \u001b[0m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mquit\u001b[0m\u001b[36m = \u001b[0m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_\u001b[0m\u001b[36m = \u001b[0m('PNG', (500, 500), 'RGBA', (500, 500, 4))\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m__\u001b[0m\u001b[36m = \u001b[0m['GB', 'DE', 'FR']\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m___\u001b[0m\u001b[36m = \u001b[0m['UK', 'Germany', 'France']\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i\u001b[0m\u001b[36m = \u001b[0m'from traceback_with_variables import activate_in_ipython_by_import\\nfrom PIL import Image\\nimport numpy as np\\nim = Image.open(\"image.png\")\\n(im.format, im.size, im.mode, np.array(im).shape)'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_ii\u001b[0m\u001b[36m = \u001b[0m\"#. 0. 1 2\\ncountries = ['UK', 'Germany', 'France']\\n\\ndef countryname_to_code(country):\\n if country == 'UK': \\n code = 'GB'\\n elif country == 'Germany':\\n code = 'DE'\\n elif country == 'France':\\n code = 'FR'\\n \\n return code\\n\\n#codes = ['GB', 'DE', 'FR']\\ncodes = []\\nfor name in countries:\\n code = countryname_to_code(name)\\n print(name, code, codes)\\n codes.append(code) #adds to the end of codes\\n\\ncodes\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_iii\u001b[0m\u001b[36m = \u001b[0m\"#. 0. 1 2\\ncountries = ['UK', 'Germany', 'France']\\n\\ndef countryname_to_code(country):\\n if country == 'UK': \\n code = 'GB'\\n elif country == 'Germany':\\n code = 'DE'\\n elif country == 'France':\\n code = 'FR'\\n \\n return code\\n\\n#codes = ['GB', 'DE', 'FR']\\ncodes = []\\nfor c in countries:\\n code = countryname_to_code(c)\\n print(c, code, codes)\\n codes.append(c)\\n\\ncodes\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i1\u001b[0m\u001b[36m = \u001b[0m'#definitions\\nexample_string = \"It was the best of times, it was the worst of times.\"\\nl = [\"one\",2,\\'goal\\',4,5]\\n\\n#functions and methods\\n#functions: print, str\\n\\n#def name_of_the_function(arg1, arg2, arg3):\\n #lines \\n #of \\n #code \\n# return values\\n\\ndef number_reverse(num):\\n print(num)\\n string = str(num)\\n print(string)\\n string = string[::-1]\\n print(string)\\n reversed_num = int(string)\\n return reversed_num\\n print(reversed_num)\\n \\na = number_reverse(123)'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mexample_string\u001b[0m\u001b[36m = \u001b[0m'It was the best of times, it was the worst of times.'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1ml\u001b[0m\u001b[36m = \u001b[0m['one', 2, 'goal', 4, 5]\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mnumber_reverse\u001b[0m\u001b[36m = \u001b[0m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1ma\u001b[0m\u001b[36m = \u001b[0m321\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i2\u001b[0m\u001b[36m = \u001b[0m'#definitions\\nexample_string = \"It was the best of times, it was the worst of times.\"\\nl = [\"one\",2,\\'goal\\',4,5]\\n\\n#functions and methods\\n#functions: print, str\\n\\n#def name_of_the_function(arg1, arg2, arg3):\\n #lines \\n #of \\n #code \\n# return values\\n\\ndef number_reverse(num):\\n print(num)\\n string = str(num)\\n print(string)\\n string = string[::-1]\\n print(string)\\n reversed_num = int(string)\\n print(reversed_num)\\n return reversed_num\\n \\na = number_reverse(123)'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i3\u001b[0m\u001b[36m = \u001b[0m'#definitions\\nexample_string = \"It was the best of times, it was the worst of times.\"\\nl = [\"one\",2,\\'goal\\',4,5]\\n\\n#functions and methods\\n#functions: print, str\\n\\n#def name_of_the_function(arg1, arg2, arg3):\\n #lines \\n #of \\n #code \\n# return values\\n\\ndef number_reverse(num):\\n print(type(num))\\n string = str(num)\\n print(type(string))\\n string = string[::-1]\\n print(string)\\n reversed_num = int(string)\\n print(reversed_num)\\n return reversed_num\\n \\na = number_reverse(123)'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i4\u001b[0m\u001b[36m = \u001b[0m'#definitions\\nexample_string = \"It was the best of times, it was the worst of times.\"\\nl = [\"one\",2,\\'goal\\',4,5]\\n\\n#functions and methods\\n#functions: print, str\\n\\n#def name_of_the_function(arg1, arg2, arg3):\\n #lines \\n #of \\n #code \\n# return values\\n\\ndef number_reverse(num):\\n print(type(num))\\n string = str(num)\\n print(type(string))\\n string = string[::-1]\\n print(type(string))\\n reversed_num = int(string)\\n print(reversed_num)\\n return reversed_num\\n \\na = number_reverse(123)'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i5\u001b[0m\u001b[36m = \u001b[0m'#definitions\\nexample_string = \"It was the best of times, it was the worst of times.\"\\nl = [\"one\",2,\\'goal\\',4,5]\\n\\n#functions and methods\\n#functions: print, str\\n\\n#def name_of_the_function(arg1, arg2, arg3):\\n #lines \\n #of \\n #code \\n# return values\\n\\ndef number_reverse(num):\\n print(type(num))\\n string = str(num)\\n print(type(string))\\n string = string[::-1]\\n print(type(string))\\n reversed_num = int(string)\\n print(reversed_num)\\n return reversed_num\\n \\na = number_reverse(123)\\na + 1'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_5\u001b[0m\u001b[36m = \u001b[0m322\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i6\u001b[0m\u001b[36m = \u001b[0m\"countries = ['UK', 'Germany', 'France']\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mcountries\u001b[0m\u001b[36m = \u001b[0m['UK', 'Germany', 'France']\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i7\u001b[0m\u001b[36m = \u001b[0m\"countries = ['UK', 'Germany', 'France']\\ntype(countries)\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_7\u001b[0m\u001b[36m = \u001b[0m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i8\u001b[0m\u001b[36m = \u001b[0m\"countries = ['UK', 'Germany', 'France']\\ncountries.append('Egypt')\\ncountries\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_8\u001b[0m\u001b[36m = \u001b[0m['UK', 'Germany', 'France', 'Egypt']\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i9\u001b[0m\u001b[36m = \u001b[0m\"countries = ['UK', 'Germany', 'France']\\ncountries.extend(['Egypt', 'USA'])\\ncountries\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_9\u001b[0m\u001b[36m = \u001b[0m['UK', 'Germany', 'France', 'Egypt', 'USA']\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i10\u001b[0m\u001b[36m = \u001b[0m\"#. 0. 1 2\\ncountries = ['UK', 'Germany', 'France']\\ncountries.extend(1, 'USA')\\ncountries\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i11\u001b[0m\u001b[36m = \u001b[0m\"#. 0. 1 2\\ncountries = ['UK', 'Germany', 'France']\\ncountries.insert(1, 'USA')\\ncountries\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_11\u001b[0m\u001b[36m = \u001b[0m['UK', 'USA', 'Germany', 'France']\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i12\u001b[0m\u001b[36m = \u001b[0m'countries[1]'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_12\u001b[0m\u001b[36m = \u001b[0m'USA'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i13\u001b[0m\u001b[36m = \u001b[0m\"countries[1] == 'USA'\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_13\u001b[0m\u001b[36m = \u001b[0mTrue\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i14\u001b[0m\u001b[36m = \u001b[0m\"isUSA = countries[1] == 'USA'\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1misUSA\u001b[0m\u001b[36m = \u001b[0mTrue\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i15\u001b[0m\u001b[36m = \u001b[0m\"isUSA = countries[1] == 'USA'\\nisUSA\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_15\u001b[0m\u001b[36m = \u001b[0mTrue\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i16\u001b[0m\u001b[36m = \u001b[0m'countries'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_16\u001b[0m\u001b[36m = \u001b[0m['UK', 'USA', 'Germany', 'France']\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i17\u001b[0m\u001b[36m = \u001b[0m\"#. 0. 1 2\\ncountries = ['UK', 'Germany', 'France']\\n\\ndef countryname_to_code(country):\\n if country == 'UK': \\n code = 'GB'\\n else if country == 'Germany':\\n code = 'DE'\\n else if country == 'France':\\n code = 'FR'\\n \\n return code\\n\\n#codes = ['GB', 'DE', 'FR']\\ncodes = []\\nfor c in countries:\\n code = countryname_to_code(c)\\n print(c, code, codes)\\n codes.append(c)\\n \\n \"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i18\u001b[0m\u001b[36m = \u001b[0m\"#. 0. 1 2\\ncountries = ['UK', 'Germany', 'France']\\n\\ndef countryname_to_code(country):\\n if country == 'UK': \\n code = 'GB'\\n elif country == 'Germany':\\n code = 'DE'\\n elif country == 'France':\\n code = 'FR'\\n \\n return code\\n\\n#codes = ['GB', 'DE', 'FR']\\ncodes = []\\nfor c in countries:\\n code = countryname_to_code(c)\\n print(c, code, codes)\\n codes.append(c)\\n \\n \"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mcountryname_to_code\u001b[0m\u001b[36m = \u001b[0m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mcodes\u001b[0m\u001b[36m = \u001b[0m['GB']\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mc\u001b[0m\u001b[36m = \u001b[0m'France'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mcode\u001b[0m\u001b[36m = \u001b[0m'GB'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i19\u001b[0m\u001b[36m = \u001b[0m\"#. 0. 1 2\\ncountries = ['UK', 'Germany', 'France']\\n\\ndef countryname_to_code(country):\\n if country == 'UK': \\n code = 'GB'\\n elif country == 'Germany':\\n code = 'DE'\\n elif country == 'France':\\n code = 'FR'\\n \\n return code\\n\\n#codes = ['GB', 'DE', 'FR']\\ncodes = []\\nfor c in countries:\\n code = countryname_to_code(c)\\n print(c, code, codes)\\n codes.append(c)\\n\\ncodes\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_19\u001b[0m\u001b[36m = \u001b[0m['UK', 'Germany', 'France']\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i20\u001b[0m\u001b[36m = \u001b[0m\"#. 0. 1 2\\ncountries = ['UK', 'Germany', 'France']\\n\\ndef countryname_to_code(country):\\n if country == 'UK': \\n code = 'GB'\\n elif country == 'Germany':\\n code = 'DE'\\n elif country == 'France':\\n code = 'FR'\\n \\n return code\\n\\n#codes = ['GB', 'DE', 'FR']\\ncodes = []\\nfor name in countries:\\n code = countryname_to_code(name)\\n print(name, code, codes)\\n codes.append(code) #adds to the end of codes\\n\\ncodes\"\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mname\u001b[0m\u001b[36m = \u001b[0m'Germany'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_20\u001b[0m\u001b[36m = \u001b[0m['GB', 'DE', 'FR']\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i21\u001b[0m\u001b[36m = \u001b[0m'from traceback_with_variables import activate_in_ipython_by_import\\nfrom PIL import Image\\nimport numpy as np\\nim = Image.open(\"image.png\")\\n(im.format, im.size, im.mode, np.array(im).shape)'\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mactivate_in_ipython_by_import\u001b[0m\u001b[36m = \u001b[0m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mImage\u001b[0m\u001b[36m = \u001b[0m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mnp\u001b[0m\u001b[36m = \u001b[0m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mim\u001b[0m\u001b[36m = \u001b[0m\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_21\u001b[0m\u001b[36m = \u001b[0m('PNG', (500, 500), 'RGBA', (500, 500, 4))\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1m_i22\u001b[0m\u001b[36m = \u001b[0m\"#. 0. 1 2\\ncountries = ['UK', 'Germany', 'France']\\n\\ndef countryname_to_code(country):\\n if country == 'UK': \\n code = 'GB'\\n elif country == 'Germany':\\n assert(False)\\n code = 'DE'\\n elif country == 'France':\\n code = 'FR'\\n \\n return code\\n\\n#codes = ['GB', 'DE', 'FR']\\ncodes = []\\nfor name in countries:\\n code = countryname_to_code(name)\\n print(name, code, codes)\\n codes.append(code) #adds to the end of codes\\n\\n\\ncodes\"\u001b[0m\n", + "\u001b[36m File \"\u001b[0m\u001b[36;1m\u001b[0m\u001b[36m\", line \u001b[0m\u001b[36;1m8\u001b[0m\u001b[36m, in \u001b[0m\u001b[36;1mcountryname_to_code\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[35massert(False)\u001b[0m\n", + "\u001b[36m \u001b[0m\u001b[32;1mcountry\u001b[0m\u001b[36m = \u001b[0m'Germany'\u001b[0m\n", + "\u001b[31mbuiltins.AssertionError:\u001b[0m\u001b[91m \u001b[0m\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "UK GB []\n" + ] + } + ], + "source": [ + "#. 0. 1 2\n", + "countries = ['UK', 'Germany', 'France']\n", + "\n", + "def countryname_to_code(country):\n", + " if country == 'UK': \n", + " code = 'GB'\n", + " elif country == 'Germany':\n", + " assert(False)\n", + " code = 'DE'\n", + " elif country == 'France':\n", + " code = 'FR'\n", + " \n", + " return code\n", + "\n", + "#codes = ['GB', 'DE', 'FR']\n", + "codes = []\n", + "for name in countries:\n", + " code = countryname_to_code(name)\n", + " print(name, code, codes)\n", + " codes.append(code) #adds to the end of codes\n", + "\n", + "\n", + "codes" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "isUSA = (countries[1] == 'USA')\n", + "isUSA" + ] + }, + { + "cell_type": "code", + "execution_count": 351, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.9934433327794776 255\n", + "0.8806781434786721 243\n", + "0.8333014977294684 236\n", + "0.810432536599234 232\n", + "0.7931691928814201 229\n", + "0.7770441563234508 226\n", + "0.7669694873848476 224\n", + "0.7555672298341362 222\n", + "0.750594457546299 221\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "0.7392962035994641 219\n", + "85.88\n" + ] + } + ], + "source": [ + "a = np.random.normal(size= 255)\n", + "\n", + "for i in range(30):\n", + " std = np.std(a)\n", + " print(std, len(a))\n", + " outliers = abs(a) > 2*std\n", + " a = a[~outliers]\n", + "print(f'{len(a)/255*100:.2f}')" + ] + }, + { + "cell_type": "code", + "execution_count": 354, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "28.86607004772212" + ] + }, + "execution_count": 354, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "b = np.arange(100)\n", + "np.std(b)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, { "cell_type": "code", "execution_count": null, diff --git a/poem/sketch.js b/poem/sketch.js index a450335..a22ff20 100644 --- a/poem/sketch.js +++ b/poem/sketch.js @@ -21,8 +21,8 @@ function proposal(pos) {} let img; let distfield; function preload() { - img = loadImage('image.png'); - distfield = loadImage('distfield.png'); + img = loadImage('CV_image.png'); + distfield = loadImage('CV_distfield.png'); } let dist, showdist, showtarget, showpaths, showwalkers; @@ -30,8 +30,8 @@ let step; let newpos; function setup() { - console.log('canvas has size: ', cw, cw); - canvas = createCanvas(cw, cw); + console.log('canvas has size: ', img.width, img.height); + canvas = createCanvas(img.width, img.height); canvas.parent('sketch-holder'); //pixelDensity(1); //let d = pixelDensity(); @@ -90,7 +90,8 @@ function draw() { if(df > 0 | exp(beta * df) > random(1.0)) { walkerpos[i].add(step); } - if(showwalkers.checked()) circle(walkerpos[i].x, walkerpos[i].y, 3); + //if(showwalkers.checked()) circle(walkerpos[i].x, walkerpos[i].y, 3); + if(showwalkers.checked()) set(walkerpos[i].x, walkerpos[i].y); // loop over index = 4 * (int(walkerpos[i].y) * overlay.width + int(walkerpos[i].x));